一、 系统功能要求:
1. 设计任务在一十字路口设置交通灯,并用单片机对其进行合理的控制。
时间方向 控制要求
白天 东西 绿灯 黄灯 红灯 南北 红灯 绿灯 黄灯
晚上 东西 黄灯 南北 红灯
2.总体设计方案现在流行的一种设计为两主干线相交的十字路。本设计采用一主干道(南北方向),一从干道(东西方向)的路口,即主干道的通行时间为从干道的2倍。在正常情况下,两干道的交通灯按图1进行转换,并以倒计数的方式将剩余时间显示在每个干道对应的两位led上;另发挥部分为当出现紧急情况时,路口的交通灯全为红灯,紧急情况解除时,恢复到原来的状态。
二、 总体设计方案提示:
1.假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1东西绿灯通车,南北红灯。过一段时间转状态。
2.东西绿灯灭,黄灯闪烁几次,南北仍然红灯。再转状态。
3.南北绿灯通车,东西红灯。过一段时间转状态。
4.南北绿灯灭,闪几次黄灯,延时几秒,东西仍然红灯。最后循环至状态1。
三.硬件设计
电路原理图如下:
四、软件设计
1、 流程图
2、程序设计
org 0000h
mov p0,#00h ;确保p0为低电位
ljmp main0
org 0030h
main0: mov 30h,#08h
mov r6,#00h
mov r7,#00h
mov dptr,#table ;取数码管的译码
mov tmod,#01h ;设计定时方式及时间
mov tl0,#0cdh
mov th0,#0bh
setb tr0
mov ie,#00h
main: mov p1,#0f3h ;南北绿灯,东西红灯
mov r6,#1eh ;红灯30s倒计时
mov r7,#19h ;绿灯25s倒计时
main1:call delay ;1s延时子程序
jb p0.1,rel1 ;判断是否有东西方向按钮按下
cjne r7,#00h,main1 ;判断绿灯25s是否倒计完
mov p1,#0f5h ;南北黄灯,东西红灯
main2:call delay
mov r7,#00h ;红灯继续倒计时,黄灯闪烁,保持0s
cpl p1.1 ;黄灯闪烁
cjne r6,#00h,main2 ;判断红灯是否倒计时完
mov p1,#0deh ;南北红灯,东西绿灯
mov r7,#1eh
mov r6,#19h
main3:call delay
jb p0.0,rel2
cjne r6,#00h,main3
mov p1,#0eeh
main4:call delay
mov r6,#00h
cpl p1.4
cjne r7,#00h,main4
jmp main
rel1:mov p1,#0f5h ;东西方向按钮按下,南北方向强制由绿灯变成黄灯警告
mov r6,#05h
mov r7,#00h
jmp main2
rel2:mov p1,#0eeh ;南北方向按钮按下,东西方向强制由绿灯变成黄灯警告
mov r7,#05h
mov r6,#00h
jmp main4
;1s延时子程序
delay:mov a,r6 ;进行南北方向倒计时时间的十进制调整
mov b,#0ah
div ab
movc a,@a+dptr ;找寻相应的数码管代码
mov p2,#01h
mov p3,a ;输出个位
mov r4,#4 ;降低动态显示频率
loop2:mov r3,#125
loop3:djnz r3,loop3
djnz r4,loop2
mov a,b
movc a,@a+dptr
mov p2,#02h ;输出十位
mov p3,a
mov r4,#4
loop4:mov r3,#125
loop5:djnz r3,loop5
djnz r4,loop4
mov a,r7 ;进行东西方向倒计时时间的十进制调整
mov b,#0ah
div ab
movc a,@a+dptr
mov p2,#04h
mov p3,a
mov r4,#4
loop6:mov r3,#125
loop7:djnz r3,loop7
djnz r4,loop6
mov a,b
movc a,@a+dptr
mov p2,#08h
mov p3,a
mov r4,#4
loop8:mov r3,#125
loop9:djnz r3,loop9
djnz r4,loop8
jbc tf0,loop ;判断是否计满125ms
ajmp delay
loop:mov tl0,#0cdh ;计满125ms重新给定时器赋值
mov th0,#0bh
mov a,30h
dec a
mov 30h,a
jnz delay ;判断是否计满8次125ms,即1s
dec r6 ;计满1s,东西倒计时减1,南北倒计时减1
dec r7
mov 30h,#08h ;重新1s次数,重新计时
ret
table:db 0c0h,0f9h,0a4h,0b0h,99h ;相应数值的数码管代码
db 92h,82h,0f8h,80h,90h
end
谷歌全新AR技术深度解析
NI发布的《2010自动化测试前景报告》
2010年下半年内存芯片将会严重短缺
详谈计算机病毒的定义与特征
红绿蓝交替变化的原理
基于单片机的交通灯设计
紫光集团赵伟国表示存储器市场需求将呈现指数级增长 未来核心任务是推动产能爬坡提升
边缘处理器和传感器在智能家电中发挥着重要作用
爱立信理解的边缘计算是网络侧的边缘计算即边缘计算网络或边缘云
安费诺17亿美元收购MTS Systems
搭载PowerVR SGX544聚VR开箱详评:作为专属于自己的第一部VR它挺值的!
工业 4.0 的企业 —— “智能工厂”
一同探讨硬件开发的基本准则和思想
人工智能驱动创新药研发公司望石智慧完成B及B+轮融资
工业数据采集类型与数据采集的方法
十年内,京东半数员工将会失业,岗位空缺将被机器人替代
人脸识别已呈现滥用趋势
数据的碰撞带来的魔力 联通混改是电信行业秩序重构的燃点
中兴屏下3D结构光技术亮相MWC
实际工作中的晶体管适用性确认-确认芯片温度