资源描述:
《交通灯的控制设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、MCS-51单片机开放性设计实验交通灯的控制设计一问题的提出:设计一组交通灯使十字路口的交通快捷顺畅。二总体设计:1.设计题目的功能:功能是利用两组交通灯,当南北向红灯时,东北向绿灯,当南北向绿灯时,东西向红灯,且有倒计时(期限为30秒)的独特设计。当红灯与绿灯转换时黄灯闪烁,历时5秒。2总体方案设计:利用定时器实现计时,用数码管显示数字,利用中断系统实行红绿灯的转换,利用硬件显示方案的功能。三硬件系统电路:P2.0P1.1P1.28031P1.3P1.5P2.5P1.6P1.7I01M8155CE
2、黄绿红黄绿红PB0PB7接数码管PA0PA77MCS-51单片机开放性设计实验四软件模块和流程图开始(TIME3)30(TIMEOUT)0(P1)EW_G;车辆方向,绿灯亮TL0,TH0是否溢出执行中断程序TIMEOUT是1或0(TIMES)5;黄灯亮5秒(P1)东西黄灯亮EW_Y(LEDMASK)#80H;用来使黄灯闪烁(SP)50H(TH0)T8H;设置TK0初值,5秒(P1)0FF;灯均不亮产生中断。(DPTR)0FF;传送命令寄存器地址(ET0)1(A)30H(EA)1(DPTR)(A);设
3、置命令寄存器,使(TR0)1;使T/CO开始计时。AO,BO为输出口(TMOD)01H;T/CO为计时器,且为方式1。(TL0)0FCH溢出发生中断中断返回是1执行中断程序TL0,TH0,是否溢出7MCS-51单片机开放性设计实验溢出发生TIMEOUT是0,是1?中断是0TL0,TH0,是否溢出(TIMES)30;绿灯亮30秒(P1)3N_G;南北绿灯亮是1执行中断程序溢出发生TIMEOUT是1或0中断是0中断返回TL0,TH0,是否溢出(TIMES)5;黄灯亮5秒(P1)SN_Y;南北黄灯亮(LE
4、DMASK)#08H,完成黄灯闪烁执行中断程序溢出发生TIMEOUT是1是0?中断是0中断返回返回到开始是17MCS-51单片机开放性设计实验中断流程图:第二十数码管是否亮了INCR0(01H)变为(02H);下次中断时第二个数码亮管(DPTR)ZIXING;B口作为字形输出口(A)#01H(DPTR)(A)第一个数码管亮(TH0)0EC(TL0)078;为新中断赋初值中断程序亮了TIME1减1后判0,使时间间隔为5ms*20=100s准备下次中断使第一个数码管亮没亮不为0到100ms为0至100m
5、sTIME2减1后判0使时间间隔为100MS*10=1s如果是黄灯,使之闪烁不到1sTIME3减1后判0灯亮时间为0?到1s不为0TIMEOUT=1;实现让下一个灯亮中断返回灯亮时间分成两位十位放到DISBUF1中;作为第二个数码管字形个位放到DISBUF0中;作为第一个数码管字形7MCS-51单片机开放性设计实验五汇编程序:EW_GEQU10111101BEW_YEQU01111101BSN_GEQU11011011BSN_YEQU110101111BLEDMASKEQU31HTIMESEQU30
6、HTIME1EQU32HTIME2EQU33HDISBUF0EQU40HDISBUF1EQU41HP_DISEQU34HPOSEQU35HZIXINGEQU0FF22HZIWEIEQU0FF21HTIMEOUTBIT20H,0ORG0000HLJMPSTARTORG000BHLJMPTOSVRORG0100HSTART:MOVSP,#50HMOVP1,#0FFHMOVDPTR,#0FF20HMOVA,#03HMOVX@DPTR,AMOVTMOD,#01HMOVTH0,#0ECHMOVTH0,#78H
7、;5msMOVTIME1,#20MOVTIME2,#10MOVLEDMASK,#0MOVPOS,#01HMOVP_DIS,#40HSETBET0SETBEASETBTR0REPEAT:MOVP1,#EW_GMOVLEDMASK,#00HMOVTIMES,#30MOVTIMEOUTL1:JNBTIMEOUT,L17MCS-51单片机开放性设计实验MOVP1,#EW_YMOVLEDMASK,#80HMOVTIMES,#5CLRTIMEOUTL2:JNBTIMEOUT,L2MOVP1,#SN_GMOVLE
8、DMASK,#00HMOVTIMES,#30CLRTIMEOUTL3:JNBTIMEOUT,L3MOVP1,#SN_YMOVLEDMASK,05HMOVTIMES,#5CLRTIMEOUTL4:JNBTIMEOUT,L4SJMPREPEATTOSVR:PUSHPSNPUSHACCPUSHRS1PUSHRS0MOVTH0,#0ECHMOVTL0,#078HMOVDPTR,#ZIXINGMOVR0,P_DISMOVA,@R0MOVX@DPTR,AJNCR0MOVP_DIS