《Proteus实现单片机交通灯_图+程序(调试可用)》.doc

《Proteus实现单片机交通灯_图+程序(调试可用)》.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Proteus实现单片机交通灯_图+程序(调试可用)》.doc

这是我初学单片机,并用Proreus软件自己绘制自己编写程序实现的一个交通红绿灯的系统。这是硬件连接图和程序,以便今后复习。 左 上 右 下 中控制部分,上面一个开关按下时,南北方向绿灯,东西方向红灯 黄灯闪烁3秒 绿灯设置15秒,红灯设置18秒。绿灯走完15秒后黄灯闪烁3秒变为红灯,红灯走完18秒后变成绿灯,以此循环。 源程序: COUNT EQU 30H ;T0中断计数 SNLEDDATA EQU 31H ;存储南北数码管显示的数据 SNCOLORFLAG EQU 32H ; 1时南北绿灯亮, 2时南北黄灯亮, 3时南北红灯亮 SNLEDDATAINIT EQU 33H ;存储南北各颜色灯的初始时间 EWLEDDATA EQU 34H ;存储东西数码管显示的数据 EWCOLORFLAG EQU 35H ; 1时东西红灯亮, 2时东西绿灯亮, 3时东西黄灯亮 EWLEDDATAINIT EQU 36H ;存储东西各颜色灯的初始时间 org 0000h lJMP MAIN org 0003h ljmp exint0 ORG 000BH lJMP INTT0 org 0013h ljmp exint1 org 0100h ;主函数************************************** MAIN: CALL INIT START: MOV A,COUNT CJNE A,#200,NOT1S ;没到1秒跳转 MOV COUNT,#00 ;1秒时间到 DEC SNLEDDATA MOV A,SNLEDDATA JNZ checkewleddata MOV SNLEDDATA,SNLEDDATAINIT INC SNCOLORFLAG MOV A,SNCOLORFLAG CJNE A,#04,checkewleddata MOV SNCOLORFLAG,#01 checkewleddata: DEC EWLEDDATA MOV A,EWLEDDATA JNZ timenotover MOV EWLEDDATA,EWLEDDATAINIT INC EWCOLORFLAG MOV A,EWCOLORFLAG CJNE A,#04,timenotover MOV EWCOLORFLAG,#01 TIMENOTOVER: NOT1S: call ewcolorcheck CALL snCOLORCHECK CALL DISPLAY JMP START ;********************************************* ;初始化函数*********************************** INIT: MOV SP,#60H MOV TMOD,#01H MOV TH0,#0eCH MOV TL0,#078H MOV COUNT,#00H MOV SNLEDDATAINIT,#15 MOV EWLEDDATAINIT,#18 MOV SNLEDDATA,SNLEDDATAINIT MOV EWLEDDATA,EWLEDDATAINIT SETB TR0 ;开定时器0 SETB ET0 ;允许定时器0中断 setb ex0 ;允许外部0中断 setb ex1 ;允许外部1中断 setb it0 ;外部中断0下降沿触发 setb it1 ;外部中断1下降沿触发 SETB EA ;开总中断 MOV P2,#0feH MOV SNCOLORFLAG,#01 MOV EWCOLORFLAG,#01 RET ;***************************************** ;外部中断0*********************************** exint0: push acc push psw mov a,p0 push acc mov a,p1 push acc mov a,p2 push acc clr ex1 clr p2.0 clr p2.1 clr p2.2 clr p2.3 setb p1.4 clr p1.1 clr p1.2 setb p1.5 clr p1.3 clr p1.4 jnb p3.2,$ setb ex1 pop acc mov p2,a pop acc mov p1,a pop acc mov p0,a pop psw pop acc reti ;外部中断1*********************************** exint1: push acc push psw mov a,p0 push acc mov a,p1 push acc mov a,p2 push acc c

文档评论(0)

qspd + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档