北京交通大学单片机实验与课程设计交通灯控制
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机实验与课程设计
交通灯控制
班级:
学号:
姓名:
指导教师:
2017年6月
选题意义
在大、中城市,十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。通过使用单片机对于交通灯的设计有利于我们对于交通灯的理解与对单片机的学习。
设计内容
利用JD51开发板上彩色LED灯做出符合普通十字路口通行逻辑的交通灯,要求:
1.东西绿-南北红、东西红-南北绿;
3.LED绿-红切换时,黄灯亮并延时3秒;
3.数码管前两位显示东西向量倒计时,后两位显示南北向量倒计时。
设计原理
硬件设计及描述
软件设计程序框图
源程序代码及注释
ORG 0000H
JMP MAIN
ORG 000BH ;T0中断的入口地址
MOV TMOD,#01H
MOV TL0,#0B0H
MOV TH0,#3CH ;50ms中断一次DJNZ R2,EXIT_T0; 减1不等于0则转移MOV R2,#20 ;定时1s
DEC R3 ;自减1 东西方向倒计时
DEC R4 ;自减1 南北方向倒计时
EXIT_T0:
RETI ;从中断返回
MAIN:
MOV TMOD,#01H ;工作方式1
MOV TL0,#0B0H
MOV TH0,#3CH ;定时50ms
MOV R2,#20 ;定时1s
SETB TR0 ;开始计数
SETB ET0 ;开中断
SETB EA ;开总中断
MOV SP,#60H
D_X:
MOV P1,#0CFH ;11001111
MOV R3,#12 ;东西绿灯15s
MOV R4,#18 ;南北红灯18s
DX_W1:
CJNE R3,#0,DX_DISP ;判断东西方向绿灯SJMP D_X_Y
DX_DISP:
CALL DISPLAY;数码管显示
SJMP DX_W1 ;返回判断
D_X_Y:
CPL P1.5 ;东西绿灯熄灭
DX_W2:
MOV R3,#0
CJNE R4,#0,DX_DISP2 ;判断红灯是否结束JMP N_B
DX_DISP2:
CPL P1.6 ;亮黄灯
CALL DISPLAY ;数码管显示
SJMP DX_W2
N_B:
MOV P1,#07BH ;01111011
MOV R3,#15 ;东西红灯15s
MOV R4,#12 ;南北绿灯12s
NB_W1:
CJNE R4,#0,NB_DISP ;判断南北方向绿灯SJMP N_B_Y
NB_DISP:
CALL DISPLAY ;数码管显示
SJMP NB_W1 ;返回判断
N_B_Y:
CPL P1.2 ;南北绿灯熄灭
NB_W2:
MOV R4,#0
CJNE R3,#0,NB_DISP2 ;判断红灯是否结束JMP D_X
NB_DISP2:
CPL P1.3 ;亮黄灯
CALL DISPLAY ;数码管显示SJMP NB_W2
DISPLAY:
MOV DPTR,#TAB1
MOV A,R3 ;东西方向倒计时
MOV B,#10
DIV AB
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0FEH
MOV P2,#0FFH
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0FDH
MOV P2,#0FFH
MOV A,R4
MOV B,#10
DIV AB
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0FBH
MOV P2,#0FFH
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#0F7H
MOV P2,#0FFH
RET
TAB1:
DB 0C0H,0F9H,0A4H,0B0H,99H
DB 92H,82H,0F8H,80H,90H
END
课程设计体会
通过此次课程设计,我对于单片机的了解更加深入,也唤起了我对于单片机的热情,同时也使自己的能力得到了锻炼,虽然在设计的时候遇到了一些困难,但是在老师的指导和同学们的帮助之下完成了此次课程设计,也收获了很多东西,同时也要感谢老师的悉心教导,让我能够得到成长和锻炼。