本项目基于小脚丫FPGA开发板设计了一套智能交通灯控制系统,旨在优化道路通行效率和安全性。通过硬件与软件协同工作,实现交通信号的智能化管理。
设计要求基于小脚丫FPGA开发板设计带数码管显示倒计时的交通灯系统:
1. 一个道路绿灯持续时间25秒,红灯持续时间10秒,黄灯持续时间3秒;
2. 另一道路绿灯持续时间10秒,红灯持续时间25秒,黄灯持续时间3秒;
3. 第一位数码管和第二位数码管显示倒计时。
硬件连接:FPGA的系统时钟来自于小脚丫FPGA开发板配置的25MHz时钟晶振,并连接到FPGA的C1引脚。本设计除了复位键以外没有其他的输入,故只用到一个按键K6;该按键连接至FPGA的B1引脚。
硬件设计包括两个RGB LED用于交通灯显示、74HC595驱动数码管等部分,并且提供了相应的图示说明其具体连接方式(图2和图3)。
工作原理与状态转换:
- 使用计数器进行分频处理,得到周期为一秒的脉冲信号clk_1h;
- 用6位BCD码表示倒计时时间值,高两位代表十位数值,低四位显示个位数值。
- 设定四个不同的交通灯工作模式(S0至S3),并绘制了状态转换图来描述它们之间的切换逻辑。
代码设计:
整个项目被划分为五个模块进行实现:clock_division、Curren_state、Output&count、CubeDisplay和顶层控制模块。每个部分都扮演着特定的角色,例如时钟分频器处理频率调整;Current_state负责更新状态机的当前态与次态;Output&count则主要关注交通灯显示以及倒计时时序管理等。
系统运行:通过实际测试验证了设计的有效性,并提供了相关视频展示其工作情况。