收藏 分销(赏)

课程设计十字路口交通灯控制器.docx

上传人:胜**** 文档编号:966373 上传时间:2024-04-09 格式:DOCX 页数:11 大小:299.99KB
下载 相关 举报
课程设计十字路口交通灯控制器.docx_第1页
第1页 / 共11页
课程设计十字路口交通灯控制器.docx_第2页
第2页 / 共11页
课程设计十字路口交通灯控制器.docx_第3页
第3页 / 共11页
课程设计十字路口交通灯控制器.docx_第4页
第4页 / 共11页
课程设计十字路口交通灯控制器.docx_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、目 录1.设计原理11.1设计任务11.2方案构思11.2.1该交通灯控制器应具备的功能11.2.2实现方案12.程序设计33. 编译/仿真43.1编译过程43.1.1 建立顶层设计文件夹TRAFFIC_CTROL43.1.2 TRAFFIC_CTROL.VHD模块设计43.1.3 TRAFFIC_CTROL.SCf波形文件设计53.2仿真结果54心得体会6参考文献7附录A VHDL源程序代码8附录B 仿真时序波形图10交通灯控制器设计1.设计原理1.1设计任务设计一个十字路口的交通灯控制系统,用实验平台上的LED发光二极管显示车辆通过的方向(东西和南北各一组),用数码管显示该方向的剩余时间。

2、1.2方案构思1.2.1该交通灯控制器应具备的功能 设东西和南北方向的车流量大致相同,因此红、黄、绿灯的时长也相同,定为红灯35sec,黄灯5sec,绿灯30sec,同时用数码管指示当前状态(红、黄、绿)剩余时间。另外,设计一个紧急状态,当紧急状态出现时,两个方向都禁止通行,指示红灯。紧急状态解除后,重新计数并指示时间。1.2.2实现方案交通灯控制器是状态机的一个典型应用,除了计数器是状态机外,还有东西、南北方向的不同状态组合(红绿、红黄、绿红、黄红4个状态),如表1.1所示。表1.1 交通灯的4种可能亮灯状态状 态东 西 方 向南 北 方 向红黄绿红黄绿1100001210001030011

3、0040101000我们可以简单的将其看成两个(东西、南北)减1计数器,通过检测两个方向的计数值,可以检测红、黄、绿灯组合的跳变。这样使一个较复杂的状态机设计变成一个较简单的计数器设计。本例假设东西方向和南北方向的黄灯时间均为5sec,在设计交通灯控制器时,可在简单计数器的基础上增加一些状态检测,即可通过检测两个方向的计数值判断交通灯应处于4种状态中的哪个状态。本交通灯控制器外部接口如图1.1所示。在表1.2中列出了需检测的状态跳变点,从中可以看出,有两种情况出现了东西和南北方向计数值均为1的情况,因此在检查跳变点时还应同时判断当前是处于状态2还是状态4,这样就可以决定次状态是状态3还是状态1

4、。对于紧急状态,只需设计一个异步时序电路即可解决。图1.1交通灯控制器方框图表1.2 交通灯设计设计中的状态跳变点交通灯现状态计数器计数值交通灯次状态计数器计数值东西方向计数值南北方向计数值东西方向计数值南北方向计数值1612552113303531645541113530程序中还应防止出现非法状态,即程序运行后应判断东西方向和南北方向的计数值是否超出范围。此电路仅在电路启动运行时有效,因为一旦两个方向的计数值正确后,就可能再计数到非法状态。2.程序设计该交通灯控制器的源程序TRAFFIC_CTROL.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;US

5、E IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TRAFFIC_CTROL IS PORT(clk,urgency: IN STD_LOGIC; led: BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0); East_West,South_North:BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0);END TRAFFIC_CTROL;ARCHITECTURE A OF TRAFFIC_CTROL IS BEGIN PROCESS(clk,urgency) BEGIN IF urgency=0 THEN led=100000

6、01; East_West=00000000; South_North00110110 OR South_North00110110THEN East_West=00110101; South_North=00110000; led=10000100; ELSIF East_West=00000110AND South_North=00000001 THEN East_West=00000101; South_North=00000101; led=10000010; ELSIF East_West=00000001AND South_North=00000001 AND led=100000

7、10 THEN East_West=00110000; South_North=00110101; led=00100001; ELSIF East_West=00000001AND South_North=00000110 THEN East_West=00000101; South_North=00000101; led=01000001; ELSIF East_West=00000001AND South_North=00000001 AND led=01000001 THEN East_West=00110101; South_North=00110000; led=10000100;

8、 ELSIF East_West(3 DOWNTO 0)=0 THEN East_West=East_West-7; South_North=South_North-1; ELSIF South_North(3 DOWNTO 0)=0 THEN East_West=East_West-1; South_North=South_North-7; ELSE East_West=East_West-1; South_North=South_North-1; END IF; END IF; END PROCESS;END A;3. 编译/仿真3.1编译过程3.1.1 建立顶层设计文件夹TRAFFIC_

9、CTROL在硬盘适当位置建立TRAFFIC_CTROL文件夹。注意:该文件夹的路径中不能包含汉字。路径中的所有目录和子目录的名称都必须符合VHDL语言的语法规则。3.1.2 TRAFFIC_CTROL.VHD模块设计新建一个.VHD格式文件,输入TRAFFIC_CTROL.VHD源程序后保存在顶层设计文件夹中,并进行语法查错、编译。3.1.3 TRAFFIC_CTROL.SCf波形文件设计新建一个.SCF格式文件,输入时钟及紧急状态波形后保存文件,此后即可仿真。3.2仿真结果仿真结果如图3.1所示。图中LED7.0以自然二进制表示,EAST_WEST7.4、EAST_WEST3.0、SOUTH

10、_NORTH7.4、SOUTH_NORTH3.0为十进制表示。 图3.1 交通灯控制器功能与时序仿真结果4心得体会EDA课程设计就要结束了,这次课程设计历时近一个星期,通过这一个星期的学习,发现了自己的很多不足,发现了很多知识上的漏洞。同时也看到了自己的实践经验还是比较缺乏,理论联系实际的能力还急需提高。这次课程设计让我学到了很多,不仅是巩固了先前学的EDA技术的理论知识,而且也培养了我的动手能力,更令我的创造性思维得到拓展。在课程设计中一个人的力量是远远不够的,真正的完成任务需要共同的智慧与劳动,团结协作是我们成功的一项非常重要的保证。在这个过程中,我也曾经因为实践经验的缺乏失落过,也曾经仿

11、真成功而热情高涨。还有一点是我们做任何事情都无法缺少的,那就是细心认真。此次设计我们就深深地体会到了,由于编程的时候没有做到足够的细心,导致一串代码弄混了。但是密密麻麻的英文字母混在一起,我始终没有发现。最终在调试的时候,就出现了问题。只知道出现了问题,就是不知道到问题的根源在哪里,好长时间都没有找出问题的所在。这也让我真正的明白了,科学的严谨性,它不允许出半点差错,否则后果会是比较麻烦的。做其他事情也一样,都需要我们付出足够的认真去对待,才能顺利的完成。生活就是这样,汗水预示着结果也见证着收获。劳动是人类生存生活永恒不变的话题。虽然我这次做的课程设计不是非常的复杂,但在设计和仿真的过程中,我

12、们也遇到了不少的困难,回首整个过程,却受益匪浅。对我而言,知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆!参考文献1 阎石 主编,数字电子技术基础,高等教育出版社,19982 谭会生 主编,EDA技术及应用,西安电子科技大学出版社,20013 廖裕评 主编,CPLD数字电路设计使用MAX+plus入门篇,清华大学出版,20014 冯涛 主编,可编程逻辑器件开发技术:MAX+plus入门与提高,人民邮电出

13、版社,20025 杨崇志,特殊新型电子元件手册,辽宁科学技术出版社,19996 彭介华,电子技术课程设计指导高等教育出版社.2000年出版.7 Mark Zwolinski, Digital System Design with VHDL, 电子工业出版社,20028 Alan B. Marcovitz Introduction to logic Design, 电子工业出版社,2002附录A VHDL源程序代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TRAFFIC_CTRO

14、L IS PORT(clk,urgency: IN STD_LOGIC; led: BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0); East_West,South_North:BUFFER STD_LOGIC_VECTOR(7 DOWNTO 0);END TRAFFIC_CTROL;ARCHITECTURE A OF TRAFFIC_CTROL IS BEGIN PROCESS(clk,urgency) BEGIN IF urgency=0 THEN led=10000001; East_West=00000000; South_North00110110 OR So

15、uth_North00110110THEN East_West=00110101; South_North=00110000; led=10000100; ELSIF East_West=00000110AND South_North=00000001 THEN East_West=00000101; South_North=00000101; led=10000010; ELSIF East_West=00000001AND South_North=00000001 AND led=10000010 THEN East_West=00110000; South_North=00110101;

16、 led=00100001; ELSIF East_West=00000001AND South_North=00000110 THEN East_West=00000101; South_North=00000101; led=01000001; ELSIF East_West=00000001AND South_North=00000001 AND led=01000001 THEN East_West=00110101; South_North=00110000; led=10000100; ELSIF East_West(3 DOWNTO 0)=0 THEN East_West=East_West-7; South_North=South_North-1; ELSIF South_North(3 DOWNTO 0)=0 THEN East_West=East_West-1; South_North=South_North-7; ELSE East_West=East_West-1; South_North=South_North-1; END IF; END IF; END PROCESS;END A;附录B 仿真时序波形图

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服