微型计算机技术课程设计报告微机交通灯控制系统_第1页
微型计算机技术课程设计报告微机交通灯控制系统_第2页
微型计算机技术课程设计报告微机交通灯控制系统_第3页
微型计算机技术课程设计报告微机交通灯控制系统_第4页
微型计算机技术课程设计报告微机交通灯控制系统_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、* * *计算机科学系课程设计(综合实验)报告(2014-2015 年度第一学期)课程名称:微型计算机技术目:微机交通灯控制系统级:t=r.号:学生姓名: 指导教师:同组人:日期:2015年01月02日课程设计的目的与要求。1.1设计的目的。(1)了解交通灯管理的基本工作原理。(2)掌握8259A中断控制器的工作原理和应用编程。2掌握8255A并行接口的各种工作方式和应用。熟悉8253计数器/定时器的工作方式及应用编程,掌握利用软硬件相结合定时的方法。掌握LED显示器及数码管的使用。1.2设计的要求。J=0时,二个方向交通灯立即亮红灯,原有(1)南北(A)向和东西(B)向的交通灯定时30秒交换

2、一次。每次交换前,黄灯点亮5次共5秒;(2)道口设有紧急车辆检测器。若紧急车辆检测器有效,计时器暂时停止计时,直至J=1。然后又自动继续恢复正常的交通管理。1.3设计的意义。在微机原理及应用课程中学过了微机各个基本组成模块的原理和编程技术,在实验室现有的设备情况 下,设计一个具有一定功能的应用系统,达到对知识的深入理解和融会贯通,培养动手能力、实践能力以 及团队合作的精神。设计正文。2.1芯片原理8259的工作原理:、数据总线缓冲器:8259A与系统数据总线的接口,是 8位双向三态缓冲器。CPU与8259A之间的控制命令信息、状态信息以及中断类型信息,都是通过缓冲器传送的。二、读/写控制逻辑:

3、CPU通过它实现对8259A的读/写操作。三、级连缓冲器:用以实现8259A芯片之间的级连,使得中断源可以由8级扩展至64级。五、中断请求寄存器IRR:8位,四、控制逻辑电路:对整个芯片内部各部件的工作进行协调和控制。用以分别保存 8个中断请求信号,当响应的中断请求输入引脚有中断请求时,该寄存器的相应位置1。六、中断屏蔽寄存器IMR:8位,相应位用以对 8个中断源的中断请求信号进行屏蔽控制。当其中某位置“0 “时,则相应的中断请求可以向CPU提出;否则,相应的中断请求被屏蔽,即不允许向CPU提出中断请求。该寄存器的内容为8259A的操作命令字OCW1可以由程序设置或改变。七、中断服务寄存器IS

4、R:8位,当CPU正在处理某个中断源的中断请求时,ISR寄存器中的相应位置 1。决定是否产生中断或中断嵌套。八、用以比较正在处理的中断和刚刚进入的中断请求之间的优先级别,8255A的工作原理:8255A的内部结构:1、数据总线缓冲器:这是一个双向三态的 8位数据缓冲器,它是 8255A与微机系统数据总线的接口。输入输出的数据、CPU俞出的控制字以及 CPU输入的状态信息都是通过这个缓冲器传送的。2、三个端口 A, B和C:A端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。B端口包含一个8位数据输入/输出锁存器和缓冲器, 一个8位数据输入缓冲器。C端口包含一个8位数据输出锁存器和

5、缓冲器,一个8位数据输入缓冲器(输入没有锁存器)。3、A组和B组控制电路:这是两组根据 CPU输出的控制字控制 8255工作方式的电路,它们对于CPU而言,共用一个端口地址相同的控制字寄存器,接收CPU俞出的一字节方式控制字或对 C 口按位复位字命令。方式控制字的高 5位决定A组的工作方式,低 3位决定B组的工作方式。对 C口按位复位命令字可对 C 口的每一位实现置位或复位。A组控制电路控制 A口和C口上半部,B组控制电路控制 B 口和C口下半部。4、读写控制逻辑:用来控制把CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到 CPU8255A的工作方式:方

6、式0-基本输入输出方式;方式 1-选通输入输出方式;方式2-双向选通输入输出方式。8253的工作原理:8253是可编程的计数器/定时器,其内部有三个独立的16位计数器/定时器通道,每个计数器通道均可按6种不同的方式工作,并且都可以按二进制或十进制计数。其CLK(CLK2是计数器02的时钟脉冲输入端,GATEA GATE2是门控脉冲输入端,OUTOOUT2是输出端。2.2设计方案交通信号灯实时控制和管理的总体设计芯片选择及端口选择1.用实验系统8255A实现对信号灯的控制(所用端口自定);2位数码显示用8255A实现控制。2.用实验系统8235的计数器0定时向实验系统主片 8259A的IRQ7请

7、求中断,以实现要求的 30秒、 5秒钟的定时。实验系统 8253的计数器0的CLK0接1MHZ GATE0 GATE接 5V。定时采用软硬件相结合的方式实现。3.用实验系统的LED灯模拟红绿黄灯。注:8259A的端口地址为: 偶地址:20H,奇地址:21H8255A 的端口地址为:端口 A-288H、端口 B-289H、端口 C-28AH 控制端口 -28BH8253的端口地址为:计数器0-280H、计数器1-281H、计数器2-282H、控制寄存器-283H。本设计硬件由定时模块、LED灯模块、数码管显示模块和紧急中断模块组成。定时模块采用硬件定时和软件定时相结合的方法, 用8253定时/计

8、数器定时1S,再用软件计时实现所需的定时。LED灯模块由8255控制LED灯来实现。数码管显示模块由实验平台上的LED显示模块实现。紧急中断模块是由单脉冲发生单元和8259中断控制器组成。程序主要是由定时子程序、LED灯显示子程序、数码管显示子程序和中断服务程序组成。包括对8253、8255以及8259等可编程器件的编程。本次设计中,8253计数器0连接1MHZ寸钟脉冲,其输出 OUT0连接计数器1的输入 CLK1,这样8253的计数器1定时向实验系统主片 8259A的IRQ7请求中断。设置8253的计数器1每一秒请求一次中断,工作于模式3; 8255的A端口控制交通灯;LED灯显示模块由82

9、55输出来控制LED灯的亮灭。8255输出为高电平时,对应的发光二极管就点亮,否则就熄灭。交通灯的对应关系如下:L5L4L3L2L1L013红灯13黄灯13绿灯24红灯24黄灯24绿灯(1,3代表东,西;2, 4代表南、北)2.3设计电路图8253250 HOUTi(-GAIhi 叶CLK. -IRQ7CStsvMHzOUTo IGATE) XCLK,(-2e3Hk02.4总体流程图172. 5程序设计。DATA SEGMENT3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H;存放数码管的七段代码表DB7FH,6FHTIMEDB29;定义TIME的初始值为29EEE

10、QU28BH;8255A控制端口LED DBDATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DA TACODE SEGMENTASSUME CS:CODESTART:MOVAX, CSMOVDS, AXMOVAX, OFFSETIRQ;设外部中断IRQ类型号为0FHMOVAX, 250FHINT21HCLI;清中断标志位MOVBX, 0209H;BH表示要显示数的十位,BL表示要显示数的个位MOVCX, 0;CX存储的数表示交通灯的状态MOVAL, 88HMOVDX, 28BH;28B为8255的控制口OUTDX, AL;初始化8255,A、B 口都为方式0输出

11、,C 口 PC3-PC0 为输出,MOVAL, 0OUTDX, AL;对PC0 口置0MOVAL, 02HOUTDX, AL;对PC1 口置0MOVDX, 20H;8259偶地址端口MOVAL, 12HOUTDX, AL;8259初始化,设置中断为边缘触发MOVAL, 7FHMOVDX, 21H;8259奇地址端口OUTDX, AL;开放IRQ7中断PC7-PC4为输入MOVDX, 288H;8255 端口 AMOVAL, 12HOUTDX, AL;交通灯初始状态为全黄MOVAL, 36HMOVDX, 283H;8253控制寄存器端口OUTDX, AL;初始化8253,选计数器0,工作模式3,

12、先写低8位,再写高8位MOVAL, 76HOUTDX, AL;初始化8253,选计数器1,工作模式3,NEXT:;定时1秒A1:MOVMOVOUTMOVOUTMOVMOVSTIJMPAX, 1000DX, 280HDX, ALAL, AHDX , ALAX, DATADS, AXA1中断服务程序:IRQ :PUSHAXPUSHBXPUSHSIMOVDX, BXMOVBX, OFFSETMOVAH, 0MOVAL, DLMOVSI, AXMOVAL, 03HOUTEE, ALLED;选通用来显示个位的数码显示管,;初值为1000;写入计数器0;置DS用数据段首地址;循环等待;将BX寄存器中的初值

13、0209H传送到DX寄存器EE在数据段里已定义,为8255控制口MOVAL, BX+SI;把十进制数所表示的个位数转换成对应的段码OUT289H, AL;写入8255端口 B,数码管显示当前倒计时的个位数MOVAL, DHMOVSI, AXMOVAL, 01HOUTEE, AL;选通用来显示十位的数码显示管MOVAH, BX+SI;把十进制数所表示的十位数转换成对应的段码OUTEE, AH;数码管显示当前倒计时的十位数PP:MOVDX, 28AH;8255C 口IN AL, DXTESTAL, 00010000B;测试PC4( J信号)是否等于 0JZ ACC;为0则跳转ACC执行紧急情况操作

14、POPSIPOPBXPOPAXCMPBL, 0;比较个位数是否为 0JNZL1;不为0跳转L1CMPBH, 0;比较十位数是否为 0JZ COMPAREMOVBL, 09H;十位数不为0,个位数变为9DECBHJMPCOMP AREACC:MOVAL, 24HMOVDX, 288H;8255 端口 AOUTDX , AL;紧急情况,路口全为红灯JMPPPL1:DECBXJMPEXIT;状态判断子程序MOVDX, 288HCMPCL, 0JZ ;STATE0CMPCL, 1JZ ;STATE1CMPCL, 2JZ ;STATE2CMPCL, 3JZ ;STATE3CMPCL, 4JZ ;STAT

15、E4CMPCL, 5JZ ;STATE5STATEO:MOVAL, 21HOUTDX, ALJMPCHANGE1STATE1:MOVAL, 11HOUTDX, ALJMPCHANGE1STATE2:MOVAL, 0AHOUTDX, ALJMPCHANGE1STATE3:MOVAL, 0CHOUTDX, ALJMPCHANGE1COMPARE:;8255 端口 A;东西红,南北绿,;东西黄,南北绿;东西绿,南北黄;东西绿,南北红DX在上一个子程序已经赋值288H,为8255端口 A地址STATE4:MOVAL, 14HOUTDX, AL;东西黄,南北红JMPCHANGE1STATE5:MOVAL

16、, 22HOUTDX, AL;东西红,南北黄CHANGE1:CMP TIME, 0;TIME已在数据段里定义初值为29A2:A3:JZ A2DECJMPINCCMPJNZMOVCMPTIMEEXITCXCL, 6A3CL, 0CL, 5JZ M5CMP CL, 4JZ M4CMP CL, 3JZ M3CMP CL, 2JZ M2CMP CL, 1JZ M1CMP CL, 0JZ M0;CX已在程序初始化里定义初值为0M0:;状态0:东西红,南北绿MOVBX, O209HMOVTIME, 29JMPEXITM1:;状态1东西黄,南北绿MOVBX, 0004HMOVTIME, 4JMPEXITM2

17、:2:东西绿,南北黄MOVBX, 0004HMOVTIME, 4JMPEXITM3:3:东西绿,南北红MOVBX, O209HMOVTIME, 29JMPEXITM4:4:东西黄,南北红MOVBX, 0004HMOVTIME, 4JMPEXITM5:;状态5:东西红,南北黄MOVBX, 0004HMOVTIME, 4JMPEXITEXIT:MOVAL, 20HOUT218H, AL;中断结束IRET;返回主程序CODE ENDSEND START三.课程设计的总结和结论。3.1设计结论。1.判断是否为紧急情况,如是则路口全红灯,若不是则向下执行。2.东西方向的红灯和南北方向的绿灯同时点亮30秒

18、钟。3. 30秒钟后,东西方向的黄灯点亮5秒钟。此时南北方向持续绿灯。5秒钟。4.东西方向的黄灯点亮 5秒钟后,转为东西方向的绿灯和南北方向的黄灯点亮30秒钟5. 5秒钟后,东西方向仍维持绿灯,此时南北方向转为红灯点亮6 .东西方向的黄灯,南北方向红灯点亮5秒钟。7.东西方向为红灯,南北方向为黄灯点亮5秒钟。5秒钟以后又转为1,重复执行3.2设计总结。经过这一周的微机课程设计,做关于交通灯系统的设计,我是负责整个程序的初始化以及三个模块的 整合,由于时间比较紧张,所以找了个模板对照着进行修改,但是在整理时发现模板设计有许多处失误及不合理的地方,比如对8255、8253以及8259的各个端口地址

19、,由于实验箱不同,我们8253接的片选信号是280H, 8255接的片选信号是 288H, 8259的两个端口地址也不同,还有初始化过程,写入的控制字有问题,与设计要求不符,LED灯的代码表也错误,选通数码管时写入的控制字错误,对倒计时数字进行判断后没有进行处理,而是让程序继续往下执行,造成实验结果与预期不同等等。还有对一些冗余的程序进 行了简化。所以又花了比较多的时间去修改。这次课程设计任务最终顺利完成了,在设计中遇到了很多技术性的问题,最后在自己的钻研以及上网 找资料,终于一个一个得解决了问题,但是也认识到自己的知识掌握的还不够,以后还需要加强锻炼。四.参考文献。【1】彭虎、周佩玲微机原理里与接口技术(第2版)【M北京

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论