微机原理课程设计交通灯控制.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理课程设计交通灯控制

交通信号灯的控制 一、设计目的 巩固“微机原理”课程学过的知识,加强理论与实践的联系。通过本课程设计,使学生初步了解微机系统的硬件设备,学会8086系列编程指令的基本功能。 二、设计要求 1、通过8255A并口来控制LED发光二极管的亮灭。 2、A口控制红灯,B口控制黄灯,C口控制绿灯。 3、输出为0则亮,输出为1则灭。 4、用8253定时来控制变换时间 。 要求:设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。闪烁5次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。闪烁5次后,再切换到1、3路口方向。之后,重复上述过程。 系统初始化8253、8255、8259初始化 系统初始化 8253、8255、8259初始化 某组灯绿灯亮,另一组红灯亮,黄灯全灭 红灯亮,黄灯灭 换为另一组 计时30秒,绿灯灭,同时黄灯亮 计时1秒,黄灯状态取反,闪烁5次共5秒 结束 四、真值表: 红PA1/PA0 黄PB1/PB0 绿PC1/PC0 时间 10 11 01 30s 10 01/11/01/11/01 11 5s 01 11 10 30s 01 10/11/10/11/10 11 5s 五、电路图: 电路图中地址线连接在A2,A3上,用74HC139译码,故地址范围为00H~03H,04H~07H,08H~0BH,每个芯片的A0、A1均与8086的A0、A1相连,RD、WR与8086的RD、WR相连,以控制芯片的读写。8253使用定时器0,输出接8259的IR0,故中断向量为08H。13方向的绿灯同PC0相连,24方向的绿灯同PC1相连,红灯、黄灯接PA、PB,方式同上。 六、源程序: ;------------------------------------------------------------- ;模块作用:交通灯控制 ;编程语言:汇编 ;编程:孙逸痕,本程序无版权,欢迎使用 ;日期:2011-12-11 ;------------------------------------------------------------- ;---------STACK------------------------------------------ STACK SEGMENT STACK STACK DW 32 DUP(0) STACK ENDS ;---------DATA-------------------------------------------- DATA SEGMENT COUNT_L EQU 0H ;计数器初值 COUNT_H EQU 0H ADD_8253_T0 EQU 00H ;芯片地址 ADD_8255 EQU 04H ADD_8259 EQU 08H RED_ADD EQU ADD_8255 ;PA YELLOW_ADD EQU ADD_8255+1 ;PB GREEN_ADD EQU ADD_8255+2 ;PC LIGHT_ON EQU 01H ;Pi1/Pi0=01 (i=A,B) LIGHT_OFF EQU 03H ;Pi1/Pi0=11 SYS_COUNTER DB 18 ;系统频率 GREEN_COUNTER DB 30 ;绿灯30秒计数 YELLOW_COUNTER DB 5 ;黄灯5秒计数 DATA ENDS ;----------CODE------------------------------------------ CODE SEGMENT MAIN PROC FAR ASSUME SS:STACK,CS:CODE,DS:DATA ;----系统初始化-------- PUSH DS MOV AX,0 PUSH AX MOV ES,AX MOV AX,DATA MOV DS,AX ;----中断向量---------- MOV AX,OFFSET TIMER ;装入中断向量表 MOV ES:20H,AX MOV AX,SEG TIMER MOV ES:22H,AX ;----8253定时器0初始化--- MOV AL,36H OUT ADD_8253_T0,AL ;16位,方式3 MOV AL,COUNT_L ;装入初

文档评论(0)

jjkk585 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档