《2022年彩灯显示控制系统方案设计书 .pdf》由会员分享,可在线阅读,更多相关《2022年彩灯显示控制系统方案设计书 .pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、武汉理工大学华夏学院课 程 设 计 报 告 书课程名称:微机原理与接口课程设计题目:彩灯显示控制系统设计系名: 信息工程系专业班级:姓名:学号:指导教师 :2012年 12 月28 日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 15 页课程设计任务书设计题目 :循环彩灯控制系统设计设计目的:1. 巩固和加深课堂所学知识;2. 学习掌握计算机控制系统的软硬件的设计方法和查阅、运用资料的能力;3. 通过步进电机控制系统设计与制作,深入了解与掌握步进电机的运行原理和控制方式。设计任务:(在规定的时间内完成下列任务)1. 画出硬件原理图(接
2、口芯片和外设部分)和实验连线图;2. 用 1 个开关控制步进电机起停,1 个开关控制正反转,1 个开关控制速度的快与慢,(电机正转停反转;反之相同);3. 送电时和步进电机停止时,彩灯全部点亮;步进电机正转时,彩灯正向循环点亮。步进电机逆转时,彩灯反向循环点亮。时间安排:(部分时间 ,某些工作可以自己安排重叠进行)6 月 18 日布置题目,确定任务、查找相关资料6 月 19 日 6月 21 日功能分析,硬件设计,拟定实验电路,编写程序,调试程序、运行系统,6月 21 日中午 12:00 前检查系统运行和设计报告6 月 22 日答辩后撰写设计报告。具体要求:设计报告撰写格式要求按提供的设计报告统
3、一格式撰写,应包括如下内容:设计任务与要求总体方案与说明硬件原理图与说明 实验接线图与说明软件主要模块流程图源程序清单与注释问题分析与解决方案(包括调式记录、调式报告,即在调式过程中遇到的主要问题、解决方法及改进设想); 总结与体会参考文献附录:源程序(必须有简单注释)使用说明指导教师签名:2012年 6 月 18日教研室主任(或责任教师)签名: 2012年 6 月 18 日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 15 页目录1 需求分析错误!未定义书签。1.1 课程设计题目错误!未定义书签。1.2 课程设计任务及要求错误!未定
4、义书签。1.3 软硬件运行环境及开发工具错误!未定义书签。2 概要设计1 2.1 循环彩灯流程图.1 2.2 设计原理及方法.3 3 详细设计3 3.1 硬件设计与实现33.1.1LED 数码管与8255 的连线设计 .3 3.1.2 8255 与中断电路的实现.4 3.1.3 8255 连接二极管连接实现5 3.2 软件设计 错误!未定义书签。4 系统调试与操作说明9 4.1 系统调试9 4.1.1 硬件调试 .9 4.1.2 软件调试 .9 4.2 操作说明9 5 课程设计总结与体会错误!未定义书签。参考文献10 精选学习资料 - - - - - - - - - 名师归纳总结 - - -
5、- - - -第 3 页,共 15 页第 1 章 需求分析1.1课程设计题目:彩灯显示控制系统设计1.2 课程设计任务及要求:1、任务:设计一个彩灯显示控制系统,其功能如下:1)三个开关输入07 8 个十六进制数字,对应8 种不同的彩灯组合状态进行显示;2)彩灯显示方式中必须有左、右移动循环亮,左右对向移动循环亮;3)用 1 位 7 段 LED 数码管以十进制显示当前输入开关显示方式的序号;4)使用软件延时实现彩灯左、右移动循环过程中点亮1s 的时间间隔;5)若有异常事件发生(用开关模拟中断信号的产生),则使红灯闪烁10 秒钟后,返回原处继续。* 6)使用硬件延时实现彩灯左、右移动循环过程中点
6、亮1s 的时间间隔。2、设计任务要完成实验方案论证,进行彩灯显示系统电路硬件设计,画出电路原理图实验电路图;搭建实验电路,进行软件编程、调试、运行以及使用说明文档的建立等一整套工作任务。进行循环彩灯效果控制程序设计(采用8086 汇编语言);系统联调,提交一个符合上述功能要求的循环彩灯效果的系统设计。1.3软硬件运行环境及开发工具1、软硬件运行环境利用 TDN86/88 实验平台进行硬件连接,利用TDN 集成开发环境进行彩灯显示系统的程序设计(采用8086汇编语言),调试,直到满足设计要求。2、开发工具实验所使用的实验开发设备是TDN86/88 型多功能微机实验平台,它的硬件由基本系统、外设功
7、能模块和面包板实验区三大部分,按模块化开放式结构设计而成。第 2 章 概要设计2.1 循环彩灯流程图循环彩灯的设计思想就是通过读开关状态信息,执行程序。首先检测开关K1,启动程序,然后彩灯闪烁亮,检测k2,彩灯左循环亮,检测k3,彩灯右循环亮,检测k3 和 k2,彩灯右递增亮,检测k4 和 k1,彩灯由中间向两边扩散亮最后全亮,检测k2 和 k1,彩灯次循环由中间向两边扩散亮, 。检测开关K0,退出循环控制程序。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 15 页图 2.1 程序流程图开始初始化检测 k1 检测 k2 检测 k3 检
8、 测k2 和k1 检测 k2 和 k3 调用左循环调用右循环调用规律递增调用交替闪烁调用从中扩散检 测k4 和k1 调用从中扩散最后全亮延时检测 k0 结束Y Y Y Y Y Y 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 15 页2.2 设计原理及方法在本次实验中主要用到了8255A可编程并行接口芯片。Intel 8255A是一种通用的可编程并行接口芯片,由于它是可以编程的,可以通过程序来设置芯片的工作方式,通用性强,使用灵活,可为多种不同的CPU与外设之间提供并行输入/ 输出的通道。(1)数据总线缓冲器它是一个双向三态8 位缓冲
9、器 , 用作与系统总线连接是的缓冲部件.CPU与 8255A之间所有的数据的发送与接收以及CPU向 8255A发送的控制信息和8255A向 CPU回送的状态信息都是通过它传送的(2) 三个 8 位端口 PA 、PB 、 PC端口 A(PA口 ) :有一个8 位数据输入锁存器和一个8 位数据输入锁存/缓冲器。端口 B(PB口 ) :有一个8 位数据输入锁存器和一个8 位数据输入 / 输出 , 锁存 / 缓冲器。端口 C(PC口 ) :有一个8 位数据输入锁存器和一个8 位数据锁存 / 缓冲器。通常 PA口与 PB口用作输入 / 输出的数据端口,PC 口用作控制和状态信息端口。PC口可以分为两个四
10、位的端口, 每个端口包含一个四位锁存器, 可分别同PA口和 PB口配合使用 ,用作控制信号 ( 输出 ) 或作为状态信号( 输入 ) 。(3)A 组和 B组控制电路A组: PA口和 PC口的高四位 (PC7PC4)。B组: PB口和 PC口的低四位 (PC3PC0)。用来管理数据信息. 控制字和状态字的传送, 它接收来自CPU的地址总线的A1,A0 和控制总线的信号RD.WR.RESET 等, 并向 8255A 的 A,B 两组发送命令. 由它控制把CPU发出的控制命令字或输出的数据送到相应的端口,或把外设的状态信息或输入的数据从相应的端口送到 CPU. 第 3 章 详细设计3.1硬件设计与实
11、现3.1.1LED 数码管与 8255 的连线设计A 口和 B 口 0 方式, A 口为输入端口,接有4 个开关,B 口为输出端口,接有一个七段发光二极管,编程实现发光二极管显示开关所拨通的数字。A 口地址: 60H B 口地址: 61HC 口地址: 62H 控制口地址: 63H 图 3.1 LED 数码管与8255 的连接图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 15 页3.1.28255 与中断电路的实现按图 7 所示接线 ,编写程序,使8255A 端口 A 工作在方式0 并作为输出口,端口B 工作于方式 1 并作为输入口,
12、则端口C 的 PC2 成为选通信号输入端STBB,PCO 成为中断请求信号输出端INTRB 。当 B口数据就绪后,通过发STBB 信号来请求CPU 读取端口B 数据并送端口A 输出显示。IRQ7中断子程序是实现所有灯闪烁10s 就返回的功能。具体流程就如下图 3.2 中断服务程序流程图开始中 断 结 束 、 返AX,BX,CX进栈CX 清零,调用1s 延时子程序时LED 数码管显置 AL=0FFH,BX=0AH 从 C 口输出 AL 值,用于把灯灭掉(AL=00H) 或全点亮调用 1s延时子程序AL 取反, BX-1 判断BX 是否为AX,BX,CX出否是精选学习资料 - - - - - -
13、- - - 名师归纳总结 - - - - - - -第 7 页,共 15 页图 3.3中断连接电路图3.1.3 8255连接二极管连接实现A 口和 B 口 0 方式, A 口为输入端口,接有4个开关, B 口为输出端口,接有一个七段发光二极管,编程实现发光二极管显示开关所拨通的数字。A 口地址: 60H B 口地址: 61HC口地址: 62H 控制口地址: 63H实验连接线路图如图9。图 3.4 实验线路连接精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 15 页第 4 章 系统调试与操作说明4.1系统调试4.1.1 硬件调试最初设计的
14、电路是由KK1和 KK2来控制系统的启动和停止,KK1接 PC7 ,KK2接 PC0 。后来考虑到KK1和 KK2都要接 2根线,接线时比较复杂。后来改用K2来控制系统的启动K3来控制系统的停止。K2 接 C组的 PC6 ,K3 接 C组的 PC7 。花型的变换还是由K0和 K1来控制。 K0接 A组的 PA0 ,K10接 A组的 PA1。B组的 PB0PB7接发光二级管的D0 D7 。4.1.2 软件调试软件调试是一个困难的过程。从初始化开始调试。开关改接后,PB 输作为输出口,PA 和PC作为输入口。所以初始化改为MOV AL,98H。因为我对接口地址不是很清楚,所以造成程序在读断口地址时
15、发生错误。A 口地址为 60H,B 口地址为61H,C 口地址为62H。经改正后,各子程序可正常运行。开关对应的是和开关相连接的端口地址,所以检测开关时,检测的是对应A 组 C 组的地址。即检测K0要用 TEST AL,80H,就的对PC7的检测。经过以上的调试,编译加载后系统能够正常运行。4.2 操作说明本系统主要由五个开关控制,分别为K0、K1、K2、 k3 和 K4。k0 为退出系统程序,k3控制左循环, k2 控制右循环, k1 控制闪烁交替亮,k3 和 k2 控制从左到右规律递增亮k4和 k1 控制中间向两边扩散亮,k2 和 k1 控制等从中间向两边扩散亮最后全亮。数码管会同步显示
16、06 序号。第 5 章 课程设计总结与体会精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 15 页在此次课程设计中碰到了很多困难, 经过老师和同学的帮助, 都能够得以解决。使我深深的体会到,团队合作精神的重要和可贵。其次,在此次课程课程设计中,我知道了个人思路和团队计划的重要性。只有思路清晰才能制定好一个完整严密的计划。这样即可以节约时间,也避免了一些不必要的麻烦。先设计好硬件的电路原理图,再进行软件的编译。第一次是不可能成功的,所以在做软件的编译和调试时一定要有很好的细心和耐心。在本次课程设计中,我进一步了解了8255A 各引脚的功能
17、, 8255A 和系统总线之间的连接, 8255A 和 CPU之间的数据交换,以及8255A的内部逻辑结构。我深入掌握了8255A显示电路的基本功能及编程方法,同时我深入了解了8255 等芯片的工作方式、作用。参考文献 : 1 周佩玲,彭虎,傅忠谦 .微机原理与技术,电子工出版社 2005. 2 周明德 .微型计算机系统原理及应用(第四版 )习题集与实验指导书,清华大学出版社, 2002. 3 吴秀清,周荷琴 . 微机计算机原理与接口技术(第二版).中国科学技术大学出版社, 2002. 4 戴梅萼 .微型计算机技术及应用(第三版).清华大学出版社, 200精选学习资料 - - - - - -
18、- - - 名师归纳总结 - - - - - - -第 10 页,共 15 页附录:源程序:STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS DATA SEGMENT DZ DB 0FFH,7FH,3FH,1FH,0FH,07H,03H,01H,00H,0FFH,00H,0FFH JT DB 55H,0AAH TAB DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH BUF DB 01,02,03,04,05,06 DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA,SS:STA
19、CK START: MOV AX,DATA MOV DS,AX MOV AL,89H OUT 63H,AL 。初始化 X: IN AL,62H TEST AL,40H 。检测 k0 JNZ X 。退出程序 IN AL,62H AND AL,0FH 。屏蔽高4 位 CMP AL,01H 。AL 的状态为01H JZ LOOP1 。调用 LOOP1 子程序 CMP AL,02H 。AL 的状态为02H JZ LOOP2 。调用 LOOP2 子程序 CMP AL,03H 。AL 的状态为03H JZ LOOP3 。调用 LOOP3 子程序 CMP AL,04H 。AL 的状态为04H JZ LOOP
20、4 。调用 LOOP4 子程序 CMP AL,05H 。AL 的状态为05H JZ LOOP5 。调用 LOOP5 子程序 CMP AL,0 JMP LOOP6 LOOP1: MOV BX,OFFSET TAB MOV SI,OFFSET BUF XLAT OUT 60H,AL MOV CX,0800H MOV CX,08H 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 11 页,共 15 页 MOV AL,0FEH 。左移子程序 ZY: OUT 61H,AL CALL DELAY 。调延时程序 ROL AL,1 LOOP ZY JMP X LO
21、OP2: MOV BX,OFFSET TAB MOV SI,OFFSET BUF+1 XLAT OUT 60H,AL MOV CX,0600H MOV CX,08H MOV AL,07FH 。右移子程序 YY: OUT 61H,AL CALL DELAY 。调延时程序 ROR AL,1 LOOP YY JMP X LOOP3: MOV BX,OFFSET TAB MOV SI,OFFSET BUF+2 XLAT OUT 60H,AL MOV CX,0600H MOV BL,11 LEA SI,DZ DIZ: MOV AL,SI 。向右递增子程序 OUT 61H,AL CALL DELAY 。调
22、延时程序 INC SI DEC BL JNZ DIZ JMP X LOOP4:MOV BX,OFFSET TAB MOV SI,OFFSET BUF+3 XLAT OUT 60H,AL MOV CX,0600H MOV BL,2 LEA SI,JT 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 15 页JIAOT: MOV AL,SI 。交替亮灯子程序 OUT 61H,AL CALL DELAY 。调延时程序 INC SI DEC BL JNZ JIAOT JMP X LOOP5: MOV BX,OFFSET TAB MOV SI,
23、OFFSET BUF+4 XLAT OUT 60H,AL MOV CX,0600H MOV AL,0E7H OUT 61H,AL CALL DELAY MOV AL,0C3H OUT 61H,AL CALL DELAY MOV AL,81H OUT 61H,AL CALL DELAY MOV AL,00H OUT 61H,AL CALL DELAY JNZ JIAOT JMP X LOOP6: MOV BX,OFFSET TAB MOV SI,OFFSET BUF+5 XLAT OUT 60H,AL MOV CX,0800H MOV AL,0E7H OUT 61H,AL CALL DELAY
24、MOV AL,0DBH OUT 61H,AL CALL DELAY MOV AL,0BDH OUT 61H,AL CALL DELAY MOV AL,07EH 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 13 页,共 15 页 OUT 61H,AL CALL DELAY JMP X EXIT: MOV AX,4C00H INT 21H DELAY: PUSH CX 。延时子程序 PUSH DX LOOP7: MOV DX,0FFF0H LOOP8: DEC DX JNZ LOOP8 POP DX POP CX RET CODE ENDS END
25、 START 设计者:日 期:2012年 12 月 28日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 15 页设计过程中质疑(或答辩)记载:1.显示彩灯模式及序号如何同步配合?答:拉动开关,通过程序调用子程序改变彩灯模式,而序号通过查询接口程序随着彩灯的模式改变而改变。2.如何拉开关控制模式显示?答:通过程序IN AL,62H TEST AL,40H 读取开关信息然后通过程序IN AL,62H AND AL,0FH CMP AL,01H JZ LOOP1 CMP AL,02H JZ LOOP2 CMP AL,03H JZ LOOP3 CMP AL,04H JZ LOOP4 CMP AL,05H JZ LOOP5 调用子程序控制彩灯的模式指导教师评语:评分:签名:年月日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 15 页