交通灯信号灯自动控制系统
交通灯原理图
一、系统的基本功能要求
(1)以秒为计时单位,两位数码管以十进制递减计数形式作定时显示,在递减计数回零瞬间完成换灯操作。
(2)通过键盘红黄绿三色信号灯所亮时间在0~99秒内任意设定。
(3)十字路口的通行起始状态可人工设定,运行中可通过人工干预使十字路口通行状态固定于任何一种工作模式。
硬件设计1.系统总体框图
2.电路设计
(1)显示模块
倒计时与时钟
说明:
⑴共阴极两位数码管用于倒计时;
段选端由锁存器控制,位选端用P3_0与P3_1控制⑵两个四位共阴极数码组成八位数码管用于时钟显示
段位选分别由两个锁存器控制
(2)红绿灯模块
说明:
⑴图为两方向的红绿黄灯,分别接在P0口上,由P0口控制
⑵51系列单片机的P0口内部没有集成上拉电阻,加上拉就是提高驱动能力,必须要通过上拉电阻接VCC。上拉电阻一般接1K的。
(3)键盘模块
说明
⑴P2键控制功能说明:
P2^6 key0绿灯位选择
P2^5 key1黄灯位选择
P2^4 key2 加1操作
P2^3 key3 减1操作
P2^2 key4 信号灯状态固定
P2^1 key5 信号灯状态切换
P2^0 key6时钟时分秒设置键
⑵键盘加上拉电阻为了提高驱动能力
3.复位电路:
4.时钟电路:
说明:用12M晶振时电容要选择30p
软件部分1、主程序流程图
2、时钟初值控制子程序
3、绿灯,黄灯初值设置子程序
4、时钟控制与倒计时控制
时钟,倒计时初值通过键盘输入。倒计时使用52单片机
内部定时器1实现计数,时钟控制部分是使用定时、计数器2
实现计时,以秒为基本单位在数码管中显示。时钟部分:当秒的
个位计时到了10,则秒个位清0,同时十位进一,以此类推;倒
计时部分显示是则递减显示。此过程通过判断语句实现。
5、.灯状态控制
灯的状态通过键盘扫描控制。状态固定键按下时,关闭定时器1;再次按下此键时,打开定时器。状态选择键按下时,程序跳至下一个状态的程序控制部分,从而实现状态改变。