上海海事大学本科生毕业设计(论文)
计数,接着主干道变为黄灯,主干道数码管进行4S的倒计时计数,之后再转为39S的红灯状态,依次循环;支干道数码管首先进行35S的绿灯倒计时计数,然后是4S的黄灯倒计时计数,接着是39S的红灯倒计时计数,之后变为绿灯,依此循环。具体状态结构如图4.6所示:
支干道绿-----35S黄--4S主干道红---------39S绿---35S黄-4S红----------39S支干道有车且主干道没车辆通过时的状态示意图图4.6支道有车而主干道没车的状态结构图
硬件实物结果图4.7所示(按下复位键1,数码管计数恢复至状态初始值):
(3)当支干道和主干道均有车辆通过时,主干道为绿灯,支干道为红灯。此时,支干道数码管进行39S的倒计时计数,然后支干道变为绿灯,数码管进行35S的倒计时计数,接着
21
图4.7 支干道有车通过而主干道没车辆通过时
上海海事大学本科生毕业设计(论文)
支干道变为黄灯,支干道数码管进行4S的倒计时计数,之后再转为39S的红灯状态,依次循环;主干道数码管首先进行35S的绿灯倒计时计数,然后是4S的黄灯倒计时计数,接着是39S的红灯倒计时计数,之后变为绿灯,依此循环。具体结构图如4.8所示:
硬件实物结果图4.9所示(按下复位键1,数码管计数恢复至状态初始值):
支干道红---------39S绿---35S黄-4S主干道绿-----35S黄--4S红----------39S图4.8主干道与支干道均有车辆通过时的状态结构特 主干道和支干道均有车辆通过时的状态示意图
图4.9 主干道和支干道均有车
辆通过时
22
上海海事大学本科生毕业设计(论文)
(4)在任何状态下,当监控到有特殊紧急车辆通过时。主干道与支干道均为红灯,并且数码管停止计数,特殊紧急车辆通过后,系统恢复原来状态,数码管计数也恢复正常计数。硬件实物结果如4.10所示:
图4.10 有特殊紧急车辆通过时
五 毕业设计总结
23
上海海事大学本科生毕业设计(论文)
通过此次毕业设计,我不仅把知识融会贯通,而且丰富了大脑,同时在查找资料的过程中也了解了许多课外知识,开拓了视野,认识了将来电子的发展方向,使自己在专业知识方面和动手能力方面有了质的飞跃。
毕业设计是我作为一名学生即将完成学业的最后一次作业,他既是对学校所学知识的全面总结和综合应用,又为今后走向社会的实际操作应用铸就了一个良好开端,毕业设计是我对所学知识理论的检验与总结,能够培养和提高设计者独立分析和解决问题的能力;是我在校期间向学校所交的最后一份综和性作业,从老师的角度来说,指导做毕业设计是老师对学生所做的最后一次执手训练。其次,毕业设计的指导是老师检验其教学效果,改进教学方法,提高教学质量的绝好机会。
毕业的时间一天一天的临近,毕业设计也接近了尾声。在不断的努力下我的毕业设计终于完成了。在没有做毕业设计以前觉得毕业设计只是对这几年来所学知识的大概总结,但是真的面对毕业设计时发现自己的想法基本是错误的。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识太理论化了,面对单独的课题的是感觉很茫然。自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次毕业设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。 总之,不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。最后终于做完了有种如释重负的感觉。此外,还得出一个结论:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。
在此要感谢我们的指导黄老师对我悉心的指导,感谢老师们给我的帮助。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。
结束语
利用MAX+plus II软件平台具有的强大仿真和应用系统功能,以及在FPGA进行数字系统
设计时所具有的灵活方便,周期短的特点。采用VHDL硬件描述语言完成交通灯系统功能设计,
24
上海海事大学本科生毕业设计(论文)
并通过下载到GW48-CK型试验箱,实现了基于FPGA器件的EPF10K10LC84-4交通灯系统控制的硬件测试。
参考文献
[1] 黄任, VHDL入门解惑经典实例经验总结 北京航空航天大学出版社2005.01 [2] 邢建平,曾繁泰,VHDL程序设计教程 清华大学出版社 2005.11 [3] 潘松,王国栋. VHDL实用教程 电子科技大学出版社 2001.1 [4] 邹虹. 数字电路与逻辑设计 人民邮电出版社 2008.03 [5] 潘明,潘松. 数字电子技术基础 科学出版社 2008.10
[6]杨恒,卢飞成.FPGA/VHDL快速工程实践入门与提高.北京航空航天大学出版社出版,2003.4 [7]罗勇,韩晓军.基于FPGA的交通灯控制和实现 《电子器件》 2008年03期
[8]文畅.基于FPGA/CPLD和VHDL语言的交通灯控制系统设计 《电脑知识与技术》2007年第9期
附录:
1.计数器模块功能实现主要程序部分:
P1:process(clock,reset,hold) begin
if rising_edge(clock) then if reset='1' then countnum<=0; elsif hold='1' then countnum<=countnum; else
if countnum=77 then countnum<=0; else
25