微机原理课程设计实现交通灯的仿真.docx
《微机原理课程设计实现交通灯的仿真.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计实现交通灯的仿真.docx(13页珍藏版)》请在咨信网上搜索。
青 岛 大 学 理学与信息科学学院 通 信 原 理 课 程 设 计 报 告 设 计 题 目 交通灯微机接口设计 学生专业班级 电子信息工程07级2班 学生姓名(学号) 林飞(20074345) 指 导 教 师 孙洁老师 完 成 时 间 实 习(设计)地点 信息楼机房 微机原理课程设计报告 一、 设计题目 数字控制系统在交通路灯管理中的应用 二、 设计内容 设有一十字路口,1、3为南北方向,2、4为东西方向。每个路口均有红、黄、绿三个灯初始状态为四个路口的红灯亮,3秒之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口通车;延时45秒后,1、3路口绿灯闪烁3秒,后绿灯灭,黄灯亮,3秒后,1、3路口的红灯亮,而同时2、4路口的绿灯亮,2、4路口开始通车;延时40秒后,2、4路口绿灯闪烁3秒后绿灯灭,黄灯亮,3秒后,2、4路口的红灯亮,同时1、3路口的红灯亮(即四个路口的红灯亮),3秒之后,1、3路口的绿灯亮,2、4路口的红灯亮,重复上面的过程。 三、 设计思路与步骤 1)设计内容分析: 通过分析设计要求找出灯亮的规律: 1. 东西南北两个方向起始状态全为红,延续3秒。 2. 东西方向红灯亮,南北方向绿灯亮,延续45秒。 3. 东西方向红灯亮,南北方向绿灯以频率1HZ闪烁3秒。 4. 东西方向红灯亮,南北方向黄灯亮,延续3秒。 5. 东西方向绿灯亮,南北方向红灯亮,延续40秒。 6. 东西方向绿灯亮以频率1HZ闪烁3秒,南北方向红灯。 7. 东西方向黄灯亮,南北方向红灯亮,延续3秒。 8. 东西方向红灯亮,南北方向红灯亮循环以上步骤。 通过分析灯亮的规律,总结出如下的功能表: 交通灯亮灭功能表 灯 状态 南北 红L1 东西红L2 南北 黄L3 东西 黄L4 南北 绿L5 东西 绿L6 L7 无效 L8 无效 状态1 1 1 0 0 0 0 0 0 状态2 0 1 0 0 1 0 0 0 状态3 0 1 0 0 0 1 0 0 0 状态4 0 1 1 0 0 0 0 0 状态5 1 0 0 0 0 1 0 0 状态6 1 0 0 0 0 0 1 0 0 状态7 1 0 0 1 0 0 0 0 转换成控制码为: 交通灯控制码表 十六进制 二进制 状态1 03H 00000011B 状态2 12H 00010010B 状态3 02H 12H 00000010B 00010010B 状态4 06H 00000110B 状态5 21H 00100001B 状态6 01H 21H 00000001B 00100001B 状态7 09H 00001001B 2)电路设计的思路: 1、计时功能实现逻辑: 通过8253计数器0和计数器1级联实现准确定时;用8255的A口低六位控制东西、南北路口交通灯的状态;灯的亮灭可直接由8086输出0,1控制。用8259A管理可屏蔽中断即开机初始化。 采用两个计数器级联的方式, 并且计数器0工作于方式3用于产生方波信号,计数器1工作方式0,计数到时高电平信号。计数器1的输出端OUT1接入8255芯片的PC0口,通过查询8255的C口的值,以完成计时功能。将计数器0的输出OUT0接到计数器1的输入端CLK1,而CLK0的输入采用1.19MHZ的时钟频率, 计数器0计数初值为59499=0E86BH,则OUT0=20HZ, 即计数器1的时钟频率为20HZ。 当计数器1的记数初值为9时,0.5S后OUT1输出一高电平。8086通过读取8255C口的值,来决定对A口写入的数据。因此每隔0.5秒8086变换灯的状态,持续6次即完成3秒的闪烁功能。 当计数器1的记数初值为899时,45S后OUT1输出一高电平。通过查询8255的C口PC0的状态改变,达到延时45秒的作用。同理计数器1的计数初值分别为59、799时,分别为3、40秒的延时。 2、 译码电路设计 通过分析8259、8253、8255各端口地址,设计合理的地址译码电路。8259的地址为20H、21H,8253的地址为40H、41H、42H、43H,8255的端口地址为0F0H、0F1H、0F2H、0F3H。故芯片的地址只与8086的地址的低8位有联系,不妨设高十二为全为1将它们相与后作为38译码器的始能信号E3。再分析发现8259、8253、8255各端口地址的低八位其中D2、D3均为0,将8086的地址总线的D2、D3作为38译码器的始能信号E1、E2。将8086的地址总线的D0、D1分别与8253和8255的A0、A1连接,利用D4、D5、D6、D7构成译码电路。将8086的地址总线的D0与8259的A0连接,利用D2、D4、D5、D6、D7通过38译码器构成译码电路。具体见下图所示: 3、 总体硬件电路构成框图 8259 3片8282 地址译码电路 8253 8286数据缓冲器 8255 交通灯 8086 8284 A口控制灯 提供时钟信号 计数器1的OUT1向8255的C口PC0写 8086通过读8255C口的数来记时,相当于构成了反馈系统 4、 电路图: 初始化8259、8253、8255 且L1、L2亮 等待8253延时3s时间是否到? 否 等待8253延时45s时间是否到? 否 等待8253延时3s时间是否到? 否 等待8253延时3s时间是否到? 否 L2、L5亮 L2亮,L5闪烁 L2、L3亮 L1、L6亮 等待8253延时40s时间是否到? 否 L1亮,L6闪烁 等待8253延时3s时间是否到? 否 L1、L4亮 等待8253延时3s时间是否到? 否 3)软件流程图: 4)程序代码: ***************************************************************** MY8259_ICW1 EQU 20H ;实验系统中 8259的ICW1端口地址 MY8259_ICW2 EQU 21H ;实验系统中8259的ICW2端口地址 MY8259_ICW3 EQU 21H ;实验系统中8259的ICW3端口地址 MY8259_ICW4 EQU 21H ;实验系统中8259的ICW4端口地址 MY8259_OCW1 EQU 21H ;实验系统中8259的OCW1端口地址 MY8259_OCW2 EQU 20H ;实验系统中8259的OCW2端口地址 MY8259_OCW3 EQU 20H ;实验系统中8259的OCW3端口地址 MY8253_COUNT0 EQU 40H ;实验系统中8253计数器0端口地址 MY8253_COUNT1 EQU 41H ;实验系统中8253计数器1端口地址 MY8253_COUNT2 EQU 42H ;实验系统中8253计数器2端口地址 MY8253_MODE EQU 43H ;实验系统中8253控制寄存器端口地址 MY8255_A EQU 0F0H ;实验系统中8255的A口地址 MY8255_B EQU 0F1H ;实验系统中8255的B口地址 MY8255_C EQU 0F2H ;实验系统中8255的C口地址 MY8255_MODE EQU 0F3H ;实验系统中8255的控制寄存器地址 ***************************************************************** DATA SEGMENT CS_BAK DW ? ;保存INTR原中断处理程序入口段地址的变量 IP_BAK DW ? ;保存INTR原中断处理程序入口偏移地址的变量 DATA ENDS CODE SEGMENT ASSUME CS:CODE ,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,3508H INT 21H MOV IP_BAK, ES ;保存INTR原中断处理程序入口偏移地址 MOV CS_BAK, BX ;保存INTR原中断处理程序入口段地址 MOV AX,SEG INITIAL MOV DS,AX MOV DX,OFFSET INITIAL MOV AX,2508H INT 21H ;设置中断向量 MOV DX,MY8259_ICW1 ; 初始化实验系统中8259的ICW1 MOV AL,13H ;边沿触发、单片8259、需要ICW4 OUT DX,AL MOV DX, MY8259_ICW2 ;初始化实验系统中8259的ICW2 MOV AL,08H ;IR0中断类型号 OUT DX,AL MOV DX,MY8259_ICW4 ;初始化实验系统中8259的ICW4 MOV AL,03H ;自动结束EOI OUT DX,AL MOV DX,MY8259_OCW1 ;初始化实验系统中8259的OCW1 MOV AL,0FEH ;打开IR0的屏蔽位 OUT DX,AL MOV AL,00H MOV DX, MY8259_OCW2 ;初始化实验系统中8259的OCW2,完成8259的初始化 OUT DX,AL QUERY: MOV DX,MY8259_OCW3 ;向8259的OCW3发送查询命令 MOV AL,0CH OUT DX,AL IN AL,DX ;读出查询字 TEST AL,80H ;判断中断是否已响应 JZ QUERY ;没有响应则继续查询 AND AL,01H CMP AL,00H JNE QUERY ;若不是IR0请求,继续查询 L4: INT 08H ;调用08H中断程序 CALL DELAY3S ;延时3秒 MOV DX,MY8255_A ;写8255的A口 MOV AL,12H OUT DX,AL ; L2、L5亮 CALL DELAY45S ;延时45秒 MOV CX, 03H ;周期1S,循环三次完成灯闪烁 L2: MOV DX,MY8255_A ;写8255的A口 MOV AL,02H OUT DX,AL ; L2亮 、L5灭 CALL DELAYHALFS ;延时0.5秒 MOV DX,MY8255_A MOV AL,12H OUT DX,AL ; L2、L5亮 CALL DELAYHALFS ;延时0.5秒 DEC CX JNZ L2 ;L2亮,L5闪烁 MOV DX,MY8255_A ;写8255的A口 MOV AL,06H OUT DX,AL ; L2、L3亮 CALL DELAY3S ;延时3秒 MOV DX,MY8255_A ;写8255的A口 MOV AL,21H OUT DX,AL ; L1、L6亮 CALL DELAY45S ;延时40秒 MOV CX,03H ;周期1S,循环三次完成灯闪烁 L3: MOV DX,MY8255_A ;写8255的A口 MOV AL,01H OUT DX,AL ; L1亮 、L6灭 CALL DELAYHALFS ;延时0.5秒 MOV DX,MY8255_A ;写8255的A口 MOV AL,21H OUT DX,AL ; L1、L6亮 CALL DELAYHALFS ;延时0.5秒 DEC CX ;L1亮,L6闪烁 JNZ L3 MOV DX,MY8255_A ;写8255的A口 MOV AL,09H OUT DX,AL ; L1、L4亮 CALL DELAY3S ;延时3秒 JMP L4 ;循环一次完成,跳到L4重新开始循环 MOV AH,4CH INT 21H ;返回DOS INITIAL PROC ;中断类型号08H的中断子程序 MOV DX,MY8253_MODE ;对8253初始化 MOV AL,36H OUT DX,AL MOV AX, 0E86BH MOV DX,MY8253_COUNT0 OUT DX,AL MOV AL,AH OUT DX,AL ;计数器0工作方式3 ,OUT0为频率20HZ的方波 MOV DX, MY8255_MODE MOV AL,89H OUT DX,AL ;8255初始化完成 A口输出,C口输入 MOV DX,MY8255_A MOV AL,03H OUT DX,AL ;两个红灯L1、L2亮,灯初始化完成 IRET INITIAL ENDP ;开机初始化完成 DELAY3S PROC ;延时3S子程序 MOV AL,51H MOV DX,MY8253_MODE OUT DX,AL MOV AL,59H MOV DX,MY8253_COUNT1 OUT DX,AL ;计数器1工作方式0 ,计数初值为59 L1: MOV DX, MY8255_C IN AL,DX CMP AL,01H LOOPNZ L1 RET DELAY3S ENDP DELAY45S PROC ;延时45S子程序 MOV AL,71H MOV DX,MY8253_MODE OUT DX,AL MOV AX,0899H MOV DX,MY8253_COUNT1 OUT DX,AL MOV AL,AH OUT DX,AL ;计数器1工作方式0 ,计数初值为899 L5: MOV DX, MY8255_C IN AL,DX CMP AL,01H LOOPNZ L5 RET DELAY45S ENDP DELAYHALFS PROC ;延时0.5S子程序 MOV AL,51H MOV DX,MY8253_MODE OUT DX,AL MOV AL,09H MOV DX,MY8253_COUNT1 OUT DX,AL ;计数器1工作方式0 ,计数初值为9 L6: MOV DX, MY8255_C IN AL,DX CMP AL,01H LOOPNZ L6 RET DELAYHALFS ENDP DELAY40S PROC ;延时40S子程序 MOV AL,71H MOV DX,MY8253_MODE OUT DX,AL MOV AX,0799H MOV DX,MY8253_COUNT1 OUT DX,AL MOV AL,AH OUT DX,AL ;计数器1工作方式0 ,计数初值为799 L7: MOV DX, MY8255_C IN AL,DX CMP AL,01H LOOPNZ L7 RET DELAY40S ENDP CODE ENDS END START 四、 设计总结 设计心得: 通过这次课程设计针对设计的内容和要求,我利用8086、8259、8253、8255、8282、8286以及38译码器和门电路设计了交通灯数字控制系统。通过利用汇编,编写了软件控制程序。同时查阅资料,用PROTEL软件设计出了硬件系统。在这次课程设计的过程中,我无论是在关于X86系列的相关知识或在接口芯片的初始化及应用方面还是在利用所学到知识全面设计系统方面收获都很大。 刚拿到设计题目觉得无从下手,经过仔细分析问题之后找到了行之有效的解决问方法。虽然六盏灯一共有七种不同的亮灭状态,其实只需用8255的A口的低六位不同状态即可控制。针对不同的延时时间,采用8253的计数器0和计数器1的级联可以准确定时。考虑到绿灯闪烁频率为1HZ,故让8253的计数器0的输出OUT0为20HZ的方波作为计数器1的时钟频率。这样对8253计数器1的计数初值写不同的值即可实现不同的定时。本系统的核心计时方法是:8253计数器1的输出OUT1送给8255的C口的PC0,然后8086读8255的C口的值来判断是否改变灯的状态。8255的C口相当于控制系统中的反馈环节,是本系统的能够准确及时的原因所在。 对于硬件系统的设计查阅相关资料,从而引入了8284、8282、8286芯片使硬件系统更加完善。硬件设计最大的问题是地址译码电路的设计,针对这一问题我先找出8259、8253、8255芯片的端口地址之间的联系再利用数字电子技术知识解决了地址译码电路问题。 通过设计交通灯数字控制系统将软硬充分相结合,学会了很多有用的知识锻炼了软硬相互协调的能力。同时也增强了全面系统考虑问题的能力,以及硬件设计能力。可以说这次课程设计很成功,在自己学习独立思考的情况下找到了分析问题解决问题的方法。这对以后的学习和工作具有重要的指导意义! 设计中存在的问题: 虽然这个系统用到了8259并编写中断子程序,但是仅仅应用于系统的开机初始化或复位。对于程序执行并没起到调用中断减轻系统负担的作用,有待改进。计时功能的实现是通过8086不断查询8255C口状态来实现的,加重了8086的负担不利于系统的快速执行。 此外利用PROTEL软件花硬件系统图,虽然充分利用到总线的作用简化了电路连接问题,但是应用总线时没有标号这是不规范的。如果是设计真正的硬件系统必须要符合电路绘制的要求,否则无法实现仿真和应用。 对课程设计的建议: 虽然花了很长时间编写软件程序设计硬件系统,但这一切还是理论上的。汇编程序通过汇编、编译、链接生成、执行,但是却还是不知道能不能与硬件系统很好的配合。希望学校能提供机会和条件,让我们能够去真正将理论和实践相结合。 最后谢谢老师这个学期的指导和帮助! 五、 参考资料 1、王忠民等. 微型计算机原理. 西安:西安电子科技大学出版社. 2003年7月 2、洪永强. 微机原理与接口技术. 北京:科学出版社. 2004年 3、朱定华. 微机原理、汇编与接口技术. 北京:清华大学出版社 2005年 4、周明德. 微机原理与接口技术实验指导与习题集. 北京:人民邮电出版社. 2002年- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计 实现 交通灯 仿真
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文