|
设计方案
2 总体设计结构框图
用VHDL语言对各个模块进行编程,最后形成顶层文件,在MAX+PLUSⅡ环境下进行编译与仿真,检查所编程序是否运行正确。如果出现错误,需要进行修改,直到完全通过为止。需要说明的是,在进行程序编译时,要先从底层程序开始,所有底层程序都正确后,才能开始顶层程序的编译。这是因为顶层程序是对底层程序的概括,它是把底层程序各个模块连接起来,相当于把每个模块的功能汇聚到一起,实现整个系统的控制功能,所以底层程序的正确与否关系到顶层程序的运行结果。VHDL语言编程生成的结构框图如图3所示。
3 VHDL程序设计 3.1 状态机1(东西方向)程序关键代码
用两个状态机分别控制东西方向和南北方向上的交通。从键盘获得红、绿、黄灯的总时间,红灯时间占1/2,绿灯时间占3/8,黄灯时间占1/8。红灯状态为S0,绿灯状态为S1,黄灯状态为S2,紧急状态为S3。当计数器时间为0时,由红灯状态跳转到绿灯状态,当计数器时间到达3/8时,由绿灯状态跳转到黄灯状态。当到达一半时间时,由黄灯状态跳转到红灯状态。当hold为1时,由任意状态跳转到紧急状态。 3.2 计数器源程序代码
4 仿真结果
从仿真结果可以看出,计数器能够正常计数,状态机状态能够正确状态变换。东西方向初始状态为绿灯,从15开始倒计时,南北方向初始状态为红灯,从20开始倒计时。 5 结束语 | |||||||||||||
共1条
1/1 1 跳转至页
基于VHDL状态机设计的智能交通控制灯
关键词: 基于 状态机 设计 智能交通 控制 交通 方向 红
共1条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 给28BYJ-48三自由度机械臂加一个网页控制台被打赏¥32元 | |
| 用28BYJ-48电机从零搭一台三自由度机械臂被打赏¥33元 | |
| 【英飞凌开发经验】ModusToolbox配置EdgeTalk外设被打赏¥27元 | |
| 基于BQ76952PFBR的BMS保护板热插拔损坏的原因和处理措施被打赏¥32元 | |
| 三分钟快速上手搭建nRF Connect SDK开发环境(VSCode)被打赏¥25元 | |
| 告别手动建模:我让AI用FreeCAD画了个开发板外壳被打赏¥30元 | |
| 【瑞萨RA8D1测评】总结收官——从IMU动作识别到LVGL桌宠被打赏¥33元 | |
| 【瑞萨BLE/WIFI模块测评】MPU6050双链路对比被打赏¥30元 | |
| 【瑞萨BLE/WIFI模块测评】DA14531被打赏¥28元 | |
| 【瑞萨BLE/WI-FI模块测评】DA16200被打赏¥28元 | |












我要赚赏金
