微机原理课程设计-交通信号灯模拟控制系统的设计.doc_第1页
微机原理课程设计-交通信号灯模拟控制系统的设计.doc_第2页
微机原理课程设计-交通信号灯模拟控制系统的设计.doc_第3页
微机原理课程设计-交通信号灯模拟控制系统的设计.doc_第4页
微机原理课程设计-交通信号灯模拟控制系统的设计.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

南京工程学院课程设计任务书 课 程 名 称 微机原理及应用A 院(系、部、中心) 电力学院 专 业 电气工程及其自动化 班 级 电力093 起 止 日 期 2012.6.4 2010.6.12 指 导 教 师 鞠 阳 徐懂礼 1课程设计应达到的目的通过课程设计加深理解课堂教学内容,掌握微机原理的基本应用方法。通过实验熟悉微机基本接口芯片的外型、引脚、编程结构,掌握汇编语言程序设计和微机基本接口电路的设计、应用方法,做到理论联系实际。2课程设计题目及要求题目:交通信号灯模拟控制系统的设计利用STAR ES598PCI实验仪的硬件资源设计一个“带时间显示的交通信号灯模拟控制系统”。所有输入该装置信号采用STAR ES598PCI实验仪上的状态输入开关,东西、南北方向的红绿黄灯采用实验仪上的LED发光二极管模拟,东西、南北方向的信号灯变化,通行倒计时时间用数码管显示。1、 功能要求:1) 假设在一个A道(东西方向)和B道(南北方向)交叉的十字路口安装有自动信号灯。当A道和B道均有车辆要求通过时,A道和B道轮流放行。A道放行10秒钟,B道再放行10秒钟,依次轮流。绿灯转换红灯前黄灯亮4秒钟。2) 夜间工作时A道(东西方向)和B道(南北方向)的黄灯闪烁,绿灯和红灯不亮(实验时用开关K8控制)。3) 开关K8=0,则工作在以上功能(1);开关K8=1,则工作在以上功能(2)。2、 难度要求:1) 基本要求:采用8255 PA口输出控制信号灯,8255 PC0输入K8控制开关信号,用循环程序软件定时实现功能要求;(60分)2) 中级要求:采用8255 PA口输出控制信号灯,8255 PC0输入K8控制开关信号,用8253硬件定时,软件查询方式实现功能要求;(80分)3) 高级要求:在中级要求的基础上,增加用8255 PB口动LED数码显示器显示绿灯倒计时秒数,从9倒计数到0,倒计数到4时黄灯亮。(100分)3课程设计任务及工作量的要求包括课程设计计算说明书、图纸、实物样品等要求设计要求1、 预习要求:1) 预习STAR ES598PCI实验仪 微机原理实验指导书附录三:2) 预习STAR ES598PCI实验仪 微机原理实验指导书附录二之2.7 B2区;2.9 B4区;2.15 C5区;2.36 G5区;2.37 G6区。3) 预习STAR ES598PCI实验仪 微机原理实验指导书之“实验九8255控制交通灯实验”和“实验十 8253方波实验”。4)预习本任务书,根据设计任务,预先画出电路原理图、程序流程图,编写出实验程序。2、 设计报告要求:1)画出接口部分电路原理图,并阐述系统工作原理。2)绘制程序流程图和源程序清单。3)调试过程和结果。4)要求用WORD撰写课程设计报告,上交打印版和电子稿。3、 课程设计说明书装订顺序及主要内容如下:1)封面、目录 2)任务书3)正文:设计思路与功能描述;电路原理图及其说明。应标示并说明每一个输入/输出信号的含义;结构框图;系统调试中的问题和解决办法;运行情况和结论;源程序清单。4)参考资料4主要参考文献1 李干林. STAR ES598PCI实验仪 微机原理实验指导书M .南京工程学院,2008.2 李继灿.新编16/32微型计算机原理及应用M.北京:清华大学出版社,20043 郑学坚,周斌. 微型计算机原理及应用M . 北京:清华大学出版社,2001.4 朱定华等. 微型计算机原理及应用M. 北京:电子工业出版社,2005.5课程设计进度安排起 止 日 期工 作 内 容2012年6月4日(第16周)之前第16周,星期一第16周,星期二、三第16周,星期四第16周,星期五第16周,星期六预习消化理解设计任务,设计程序流程图,编写源程序。预习星研微机实验系统的仿真调试操作界面学习STAR86/88实验系统的使用和操作,进行实验8255测试和8253测试基本实验完成基本要求的内容完成中级和高级要求的内容验收撰写课程设计报告6成绩考核办法总评成绩由三部分组成,分别是:成果演示占40%,测试成绩占30%,设计报告占30%。1、 成果演示(根据程序运行演示确定基础分);2、 口试或笔试测验(与本设计有关的问题,目的是考查设计成果是否经过自己思考独立完成);3、 课程设计报告(格式、内容、质量)。教研室审查意见: 教研室主任签字: 年 月 日院(系、部、中心)意见:主管领导签字: 年 月 日 19 设计说明书课程设计要求:设计一个十字路口的交通信号灯。采用8255 PA口输出控制信号灯,8255 PC0输入K8控制开关信号,用8253硬件定时,软件查询方式实现如下功能。白天模式:东西方向和南北方向各放行10秒。绿灯转红灯前黄灯闪烁4秒。LED数码显示器显示倒数计时,从9倒数到0;倒数到4时黄灯亮。夜间模式:两个方向黄灯闪烁,绿灯和红灯不亮。1、设计思路与功能描述(1)设计思路8255交通信号灯的灯光变化和数码显示通过8255实现控制。8255是一种具有多种功能的可编程并行通信接口电路芯片。芯片包括A、B、C三个数据端口、A组控制部件、B组控制部件、读写逻辑控制电路、数据总线缓冲器。8255有三种工作方式,其中方式0是基本输入/输出方式,适用于无条件传送和查询方式的接口电路。本设计中,PA口用于输出信号控制灯光的变化(D6D5=00,D4=0),PB口用于输出信号控制数码管的显示(D2=0,D1=0),PC0用于输入K8的控制开关信号,PC1用于输入用于硬件延时的方波信号(D0=1)。PC7用于输出控制数码管工作/不工作的信号(D3=0)。故写入方式控制字为10000001B=81H。8255A输入/输出信号接线方案如下表所示:8255-PB输出方式PCH输出方式8255-PA输出方式PCL输入方式引脚输出信号引脚输出信号引脚输出信号引脚输入信号PB7PB7DP段PB6G段PB5F段PB4E段PB3D段PB2C段PB1B段PB0A段PC7数码管的位码选择PC7=0,则该位选中PA7不用(灭)PB6PA6南北红灯PB5PA5南北黄灯PB4PA4南北绿灯PB3PA3不用(灭)PC3PB2PA2东西红灯PC2PB1PA1东西黄灯PC18253-OUT0PB0PA0东西绿灯PC0开关K8输入a.灯光显示:送低电平则灯亮,送高电平则灯灭。 东西绿灯,南北红灯:PA0PA7应输出01111101B=7DH 东西闪灯,南北红灯:黄灯亮,红灯亮PA0PA7应输出10111101B=0BDH 黄灯灭,红灯亮PA0PA7应输出11111101B=0FDH东西红灯,南北绿灯:PA0PA7应输出11010111B=0D7H东西红灯,南北黄闪:红灯亮,黄灯亮PA0PA7应输出11011011B=0DBH 红灯亮,黄灯灭PA0PA7应输出11011111B=0DFH两个路口都黄灯闪烁:两个黄灯亮:PA0PA7应输出10111011B=0BBH 两个黄灯灭:PA0PA7应输出11111111B=0FFHb.LED数码显示:数码管采用共阴极接法,位选信号为0则数码管工作。 adp段发亮条件:对应位输入1,见下表所示:显示数字0123456789PB输出3FH06H5BH4FH66H6DH7DH07H7FH6FH 白天模式:数码管工作,PC7送0,即应输入0B,例如送01111111B=7FH 夜天模式:数码管工作,PC7送1,即应输入1B,例如送10000000B=80H8253交通信号灯亮、灭的时间及数码管的倒计时间隔都通过8253控制。8253可编程定时/计数器是Intel公司生产的通用外围接口芯片,它有三个独立的16位计数器,计数范围为02MHz。8253有6种工作方式,其中方式三是方波发生器方式。本设计中选用通道0,CLK0接1953HZ的时钟信号,GATE0接高电平VCC,OUT0接8255的PC1。因为需要产生周期为0.5s的方波,即产生2Hz的方波而固有频率为1953Hz,故分频系数N=1953/2=976。由于选用了通道0(SC1 SC0=00),工作在方式3(M2 M1 M0=011),对计数器进行读写/操作时,先送低8位,再送高8位(RW1 RW0=11),计数器的数值采用10进制(BCD=1),故初始化时命令字为00110111B=37H。白天和夜间模式的切换通过8255读取PC0的状态后,用软件判断是执行白天还是夜间模式。使用IN指令,将PC的状态送入寄存器AL,将PC70状态送入了AL的D0中。由于只需判断PC0的值,故将AL同00000001B相与。使用JZ判断,若结果为1,即PC0为0,则转白天模式,否则顺序执行夜间模式。通过使用循环语句,使得每执行完一次白天或夜间模式,都重新对PC0的状态进行一次判断。一旦拨动切换开关K8,就能及时切换交通灯运行模式。硬件延时由于本设计中,每次倒数计时的间隔为1秒;而黄灯闪烁一次用时共计1秒,其中前0.5秒为黄灯亮,后0.5秒为黄灯灭。故8253选用通道0,CLK0接1953HZ的时钟信号,分频系数设为976,OUT0输出周期为0.5s的方波。主程序通过查询8255的PC1接收到的状态,获知准确的定时信息。读取PC1的状态,判断是否为0,直到发生跳变为1,此过程执行时间为半个周期即0.25s。继续读取PC1的状态,判断是否为1,直到发生跳变为0,此过程执行时间为半个周期即0.25s。故判断PC1发生两次跳变的程序执行一次所用时间就为0.5s。将此作为延迟子程序,实现延时的效果。(2)功能描述开关K8拨到0,实现白天模式:东西方向和南北方向各放行10秒。a.东西亮绿灯,南北亮红灯,数码管从9倒数计时到4b.东西闪黄灯,南北亮红灯,数码管从3倒数计时到0c.东西亮红灯,南北亮绿灯,数码管从9倒数计时到4d.东西亮红灯,南北闪黄灯,数码管从3倒数计时到0如此a-b-c-d作为一组循环。每组白天模式的循环结束后重新查询开关K8的状态,可实现模式的切换。开关K8拨到1,实现夜间模式:两个路口都是黄灯闪烁。数码管没有数字显示。黄灯每闪烁一次为1s,作为一组循环。每组夜间模式的循环结束后重新查询开关K8的状态,可实现模式的切换。2、电路图(1)电路原理图说明: 5255:PA口,输出,控制LED灯PB口,输出,控制数码管显示数字 PC0,输入,反映开关状态 PC1,输入,送入8253产生的2Hz方波 PC7,输出,控制数码管工作与否8253:OUT0,输出,输出方波给8255 CLK0,输入,送入固有频率3906Hz(2)实物图 3、结构框图(1)延时子程序 (2)主程序8255、8253初始化PC0 = 0? Y N黄灯闪烁南北绿灯,东西红灯显示“9”延时1秒子程序显示“8”延时1秒子程序 。 。 显示“4”延时1秒子程序省略部分南北黄灯,东西黄灯显示“3”延时1秒子程序。 。 显示“0”延时1秒子程序南北红灯,东西绿灯4、运行情况和结论(1)实际情况 运行时的图片 (2)结论本设计基本完成了任务书中所要求的功能。a.白天模式:东西方向和南北方向各放行10秒。绿灯转红灯前黄灯闪烁4秒。LED数码显示器显示倒数计时,从9倒数到0;倒数到4时黄灯亮。b.夜间模式:两个方向黄灯闪烁,绿灯和红灯不亮。有待改进之处:a.夜间模式能在1s内切换到白天模式。但在白天模式必须等一个循环结束后才能切换。b.1s延时程序不精确,最大存在0.5s的误差。5、系统调试中的问题和解决办法遇到的问题:不能立刻从白天模式切换到夜晚模式解决的方法:修改了代码,在白天每次灯闪烁的后面判断是否切换,如果切换就跳到黄灯循环模式,由于程序长度限制,需要每隔一段设置一个中间点jmp. 6、源程序清单code segmentassume cs:codego:mov al,10000001b ;8255初始化 mov dx,0f003h out dx,al mov al,00110111b ;8253初始化,产生2HZ方波 mov dx,0e003h out dx,al mov al,53h mov dx,0e000h out dx,al mov al,19h out dx,al l: mov dx,0f002h ;判断工作状态 in al,dx and al,01h cmp al,0h je ll mov dx,0f002h ;数码管灭 mov al, 80h out dx,al mov al,10111011b ;使灯全都亮 mov dx,0f000h out dx,al call delay ;延时 mov al,11111111b ;使灯全都亮 mov dx,0f000h out dx,al call delay jmp l ll: mov dx,0f002h ;数码管灭 mov al,7fh out dx,al mov al,01101111b ;南北绿灯,东西红灯 mov dx,0f000h out dx,al call a call b ;南北黄灯,东西红灯 mov al,11010111b ;南北红灯,东西绿灯 mov dx,0f000h out dx,al call a call c ;南北红灯,东西黄灯 jmp l mov ah,4ch int 21h delay proc ;8253延时0.5秒钟 m: mov dx,0f002h in al,dx and al,02h jz m n: mov dx,0f002h in al,dx and al,02h jnz n ret delay endp aa: jmp l ;中间点aa,跳回l a proc mov al,6fh ;数码管显示9 mov dx,0f001h out dx,al call delay call delay ;延时两个0.5秒,即1秒 mov dx,0f002h ;判断工作状态 in al,dx and al,01h cmp al,0h jnz l ;跳回l mov al,7fh ;数码管显示8 mov dx,0f001h out dx,al call delay call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz aa ;跳回中间点aa mov al,07h ;数码管显示7 mov dx,0f001h out dx,al call delay call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz aa mov al,7dh ;数码管显示6 mov dx,0f001h out dx,al call delay call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz aa jmp z bb: jmp aa ;中间点bb,跳回aa z: mov al,6dh ;数码管显示5 mov dx,0f001h out dx,al call delay call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz aa mov al,66h ;数码管显示4 mov dx,0f001h out dx,al call delay call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz bb ret a endp b proc mov al,4fh ;数码管显示3 mov dx,0f001h out dx,al mov al,10101111b ;南北黄灯亮 mov dx,0f000h out dx,al call delay ;延时0.5秒 mov al,11101111b ;南北黄灯灭 mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz bb mov al,5bh ;数码管显示2 mov dx,0f001h out dx,al mov al,10101111b mov dx,0f000h out dx,al call delay mov al,11101111b mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz bb jmp y cc:jmp bb ;中间点cc,跳回bb y: mov al,06h ;数码管显示1 mov dx,0f001h out dx,al mov al,10101111b mov dx,0f000h out dx,al call delay mov al,11101111b mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz cc mov al,3fh ;数码管显示0 mov dx,0f001h out dx,al mov al,10101111b mov dx,0f000h out dx,al call delay mov al,11101111b mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz cc retb endpc proc mov al,4fh ;数码管显示3 mov dx,0f001h out dx,al mov al,10101111b ;东西黄灯亮 mov dx,0f000h out dx,al call delay ;延时0.5秒 mov al,11101111b ;东西黄灯亮 mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz cc jmp x ddd: jmp cc ;中间点ddd,跳回cc x:mov al,5bh ;数码管显示2 mov dx,0f001h out dx,al mov al,10101111b mov dx,0f000h out dx,al call delay mov al,11101111b mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz ddd mov al,06h ;数码管显示1 mov dx,0f001h out dx,al mov al,10101111b mov dx,0f000h out dx,al call delay mov al,11101111b mov dx,0f000h out dx,al call delay mov dx,0f002h in al,dx and al,01h cmp al,0h jnz ddd mov al,3fh ;数码管显示0 mov dx,0f001h out dx

温馨提示

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

评论

0/150

提交评论