.
..
交通灯控制
一、课程设计的内容
在实验平台上选择两组指示灯,每组分为红,黄,绿代表交通灯。要求:
1. 模拟十字交通路口的实际情况,设计十字路口交通灯自动 变换系统。
2. 设计十字路口交通灯手动变换系统,并这两套系统可切换使用。
3. 在实现以上内容的基础上增加允许急救车优先通过的要求。有急救车到达时,两方向交通信号为全红,以便让急救车通过。
二.设计思路及电路图
在单片机实验箱上P0口和P2口不能做I/O接口。但是为了实现交通灯的状态变化,我要用到I/O接口来对按键进行查询和显示发光二极管的状态,P1口控制四段数码管的显示。所以我扩展I/O接口,用74LS377的输入端接P0口,其输出线1Q~8Q接8个发光二极管,WR作为锁存控制接74LS377的时钟端,扩展片选信号CS1接在74LS377的使能端G。我用查询方式来查询按键来转换手动,自动,救护车到来的状态的变化,则把四个按键K4~K7与P3.2~P3.5相接,当按键置高电平时,程序就会转换到相应状态执行相应的模块状态。
在自动状态时,开始4个路口的红灯全亮(东西方向为之路,南北方向为主路)之后,南北路口的绿灯亮,东西口的红灯亮,延时显示并查询开关状态是否发生变化,当两个数码管(一个代表东西方向,一个代表南北方向)从0~3显示,当显示3后交通灯显示下一个状态,一直循环重复过程,直到查询到有按键发生变化。
当P3.3高电平时,自动转换为手动,(同理P3.3低电平时手动转换为自动。)此时拨动按键使P3.