基于51单片机的交通灯控制系统课程设计报告内容摘要:

NG EQU。 南北方向绿灯 ER EQU。 东西方向红灯 EY EQU。 东西方向黄灯 EG EQU。 东西方向绿灯 BREAKRULE EQU。 交通违章模拟信号输入 SOUND EQU。 警报声输出信号 PEAKORNORM EQU。 高峰信 号输入 ALLSTOP EQU。 全部禁行输入 ALLGO EQU。 全部通行输入 NSTHROUGH EQU。 南北通行输入 EWTHROUGH EQU。 东西通行输入 SELECTDIR EQU。 方向选择输入 ORG 0000H LJMP MAIN。 跳转到主函数 ORG 0003H LJMP RESET。 跳转到设定时间子函数 ORG 000BH LJMP TIME。 跳转到定时子函数 ORG 001BH LJMP DOG。 看门狗子程序 ORG 0100H MAIN: MOV NSNORM,28H。 主程序开始 ,各 方向寄存器赋初值 MOV EWNORM,14H MOV NSPEAK,1EH MOV EWPEAK,0AH REMAIN: MOV COUNTER,0AH。 设置计数 1 秒的循环次数为 10 SETB DIRECTION。 设置通车方向标志 ,默认从南北方向开始 CLR DISPLAYYELLOW。 设定各个标志、寄存器的初值 CLR ONESECOND CLR SETNEW CLR SOUND JNB PEAKORNORM,PEAKINPUT MOV NSPUT,NSNORM MOV EWPUT,EWNORM SJMP DISPLAYNUMPUT PEAKINPUT: MOV NSPUT,NSPEAK MOV EWPUT,EWPEAK DISPLAYNUMPUT: MOV DISPLAYNUM,NSPUT。 设置倒计时初值 MOV SP,5FH。 设置堆栈内第一个数位置为 60H MOV TMOD,11H。 T0 设置为方式 1 定时, T1 设置为方式 1 定时 LCALL FEEDDOG。 喂狗 MOV TL0,0B0H。 为 T0 设置初值,使定时为 秒 MOV TH0,3CH START: SETB EX0。 开中断 0 SETB IT0。 设置中断 0 为跳沿触发 SETB TR0。 启动 T0 SETB ET0。 允许 T0 中断 SETB ET1。 开中断 1,用于看门狗 SETB PX0。 设置 设定时间 中断为高级中断 CLR PT0。 设置定时器为低级中断 SETB PT1。 设置看门狗中断为高级中断 SETB EA。 CPU 开放中断 LCALL LIGHT。 开始显示交通灯、倒计时 LCALL DISPLAYLED。 重定时检测 LOOP: LCALL FEEDDOG。 喂狗 JB SETNEW,REMAIN。 检测是否已经重新设定时间。 计时到 1 秒检测 JNB ONESECOND,ALLRED CLR ONESECOND DEC DISPLAYNUM MOV A,DISPLAYNUM CJNE A,02H,EQ0 SETB DISPLAYYELLOW LCALL LIGHT LJMP NUMDECLINE EQ0: CJNE A,00H,NUMDECLINE CLR DISPLAYYELLOW CPL DIRECTION LCALL LIGHT。 LED 交通灯显示 LCALL RELOAD NUMDECLINE: LCALL DISPLAYLED。 显示倒计时剩余时间。 全部禁行 ALLRED: JB ALLSTOP,NSCLEAR。 判断是否全部禁止 CLR TR0。 停止计时 SETB NR。 都亮红灯 CLR NY CLR NG SETB ER CLR EY CLR EG ALLREDWAIT: LCALL FEEDDOG。 等待恢复 JB ALLSTOP,ALLREDBACK SJMP ALLREDWAIT ALLREDBACK: SETB TR0。 继续计时 ,禁止前交通情况 LCALL LIGHT。 南北通行 NSCLEAR: JB NSTHROUGH,EWCLEAR。 判断是否南北通行 CLR TR0。 停止计数 CLR NR。 南北方向通行 CLR NY SETB NG SETB ER CLR EY CLR EG NSCLEARWAIT: LCALL FEEDDOG。 等待恢复 JB NSTHROUGH,NSCLEARBACK SJMP NSCLEARWAIT NSCLEARBACK: SETB TR0。 继续计时 ,恢复以。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。