ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:180.12KB ,
资源ID:5921843      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5921843.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于VHDLEDA技术交通灯控制设计报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于VHDLEDA技术交通灯控制设计报告.docx

1、基于VHDLEDA技术交通灯控制设计报告EDA技术课程设计课题: 交通控制器设计 系 别: 电气与电子工程系专 业: 电子信息工程* * *学 号: 123408133* *河南城建学院2011年6月24日成绩评定一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)。二、评分(按下表要求评定)评分项目设计报告评分答辩评分平时表现评分合 计 (100分)任务完成情 况(20分)课程设计报告质量(40分)表达情况(10分)回答问题情 况(10分)工作态度与纪律(10分)独立工作能力(10分)得分课程设计成绩评定一、设计目的通过对FPGA(现场可编程门阵列)芯片的设计实践,使学生掌

2、握一般的PLD(可编程逻辑器件)的设计过程、设计要求、设计内容、设计方法,能根据用户的要求及工艺需要进行电子芯片设计并制定有关技术文件。培养学生综合运用已学知识解决实际工程技术问题的能力、查阅图书资料和各种工具书的能力、工程绘图能力、撰写技术报告和编制技术资料的能力,受到一次电子设计自动化方面的基本训练。培养学生利用EDA技术知识,解决电子设计自动化中常见实际问题的能力,使学生积累实际EDA编程。通过本课程设计的学习,学生将复习所学的专业知识,使课堂学习的理论知识应用于实践,通过本课程设计的实践使学生具有一定的实践操作能力。 1 了解交通灯的亮灭规律。 2 了解交通灯控制器的工作原理。 3 熟

3、悉VHDL语言编程,了解实际设计中的优化方案。 二、设计要求(1).以EDA技术的基本理论为指导,将设计实验分为基本功能电路和较复杂的电子系统两个层次,要求利用数字电路或者EDA方法去设计并完成特定功能的电子电路的仿真、软硬件调试;(2).熟悉掌握常用仿真开发软件,比如: Quartus II或Xilinx ISE的使用方法。(3).能熟练运用上述开发软件设计并仿真电路并下载到FPGA中进行调试; (4).学会用EDA技术实现数字电子器件组成复杂系统的方法;学习电子系统电路的安装调试技术。三、总体设计原理与内容 1、设计内容用EDA技术设计一个十字路口的交通信号灯控制器,控制A、B两条交叉道路

4、上的车辆通行,具体要求如下:(1)、每条道路设一组信号灯,每组信号灯由红黄绿3个灯组成,绿灯表示允许通行红灯表示禁止通行,黄灯表示该车道上已过停车线的车辆继续通行,未过停车线的车辆停止通行。(2)、每条道路上每次通行的时间为25s。(3)、每次变换通行车道之前,要求黄灯先亮5s,才能变换通行车道。(4)、黄灯亮时,要求每秒钟闪烁一次。2、设计的总体原理 图3-1交通灯系统控制框图图3-2交通信号灯的控制电路图3-3交通灯的时间转向图四、EDA设计及仿真1、主控制程序Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_unsig

5、ned.all;Use ieee.std_logic_arith.all;Entity controller isPort (clk8: in std_logic;Reset: in std_logic;hold: in std_logic;reda,greena,yellowa:out std_logic;redb,greenb,yellowb:out std_logic;displaya,displayb,displayc,displayd:out std_logic_vector(0 to 6);end;architecture control of controller is sign

6、al countnum: integer range 0 to 50;Signal clk: std_logic;Signal numa,numb,numc,numd: integer range 0 to 9;signal noa,nob:integer range 0 to 25;Signal Qina,qinb,qinc,qind: std_logic_vector(3 downto 0);signal clock:std_logic;signal clock1:std_logic;signal tout: integer range 0 to 3;begin Process(clk8)

7、 ;分频beginIf rising_edge(clk8) thenIf tout=3 thenTout=0;clock1=not clock1;Else tout=tout+1;End if;end if;clk=clock1;End process;process(clk)begin if reset=1then countnum=0;elsif rising_edge(clk)thenif countnum=49 thencountnum=0;elsecountnum=countnum+1;end if;end if;end process; process(clk)beginif ri

8、sing_edge(clk)thenif hold=1thenreda=1;redb=1;greena=0;greenb=0;else if countnum=19 thennoa=20-countnum;reda=0;greena=1;elsif(countnum=24)thennoa=25-countnum;reda=0;greena=0;elsenoa=50-countnum;reda=1;greena=0;end if;if countnum=24 thennob=25-countnum;redb=1;greenb=0;elsif countnum=44 thennob=45-coun

9、tnum;redb=0;greenb=1;elsenob=50-countnum;redb=0;greenb20 and countnum=25) thenyellowa=clk;yellowb45 and countnum=50) thenyellowa=0;yellowb=clk;else yellowa=0;yellowb=20 thennuma=2;numb=10 thenNuma=1;numb=noa-10;ElseNuma=0;Numb=20 thennumc=2;numd=10 thenNumc=1;numd=nob-10;ElseNumc=0;Numd=nob;End if;e

10、nd if;End process;process(clk8)begin ;数码管显示Qina=conv_std_logic_vector(numa,4);Qinb=conv_std_logic_vector(numb,4);Qinc=conv_std_logic_vector(numc,4);Qinddisplayadisplayadisplayadisplayadisplayadisplayadisplayadisplayadisplayadisplayadisplayadisplaybdisplaybdisplaybdisplaybdisplaybdisplaybdisplaybdisp

11、laybdisplaybdisplaybdisplaybdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplaycdisplayddisplayddisplayddisplayddisplayddisplayddisplayddisplayddisplayddisplayddisplayd=0000000;End case;End process;End;2、交通灯仿真结果及数据分析仿真结果基本正确,对于每一时刻给出的时钟信号对应相应的计数值,红灯和绿灯都是间隔闪亮20/25秒

12、,黄灯每次都是闪烁五秒钟,符合要求,复位键和保持键同样给出正确的仿真,对应的数码管译码也正确,所期望的与事实完全相同,仿真结果正确! 五、硬件实现 1、给出硬件实现引脚图 2、硬件实现照片 六、设计总结1、设计过程中遇到的问题及解决方法在本设计中出现的问题有很多,现举例如下:(1)、程序的组合,一开始我只是简单的将编好的控制模块,分为模块,显示模块,分频模块组合在一起,进行编译的时候并没有报错,而仿真结果也是看似正确,因为只有主程序得到编译,其他四个模块都没有起到作用,结果输入与输出引脚都只有主程序的,没有要求得到的全部引脚,很明显,这种拼接做法是错误的。(2)、经过修改之后的程序出现最多的错

13、误就是end if 与end process的多与少的问题,end if经常多放,其他的还有变量的赋值符号与信号的不同,变量声明的位置也与信号不同,信号的使用也有限制,因为不能及时更新,会有时间上的延迟。(3)、再个就是黄灯的闪烁,因为刚开始和红绿灯一块定义,赋值,没有闪烁的效果,最后在进程之外,我又增加了一个进程,专门定义与控制黄灯的闪烁问题,以为需要分频后的时钟信号,只是分开定义的主要原因。(4)、最后一步是硬件的仿真,程序下载之后,数码管不亮,二极管也不亮,我检查程序,也没有错误,接入引脚也是正确的(虽然之前有几次是因为引脚接错位和芯片的错误使用,以及功能仿真与时序仿真的不同),启动之后

14、就是不亮,经过反复检查,复位键和保持键有些失灵,按下几次之后即恢复正常工作,和之前期望的完全相同。至此,本设计圆满成功!2、设计体会本设计中出现的错误以及查找和改正错误的过程是最大的收获,这不仅是对我知识的考察,也是一种实际应用能力的证明,刚开始有几十上百个错误,警告,一步步的查找,编译,在查找,经过两天不间断的检查和纠正,程序才算初步成功可编译,然而对已仿真的结果常常又不能尽人意,还要时不时的修改程序已达到期望的目标,反反复复,最后下载硬件的时候更是麻烦,本来仿真是完美的,可就是硬件实现出问题,这足足花了一下午的时间检查错误,程序基本没错,就是硬件失灵,按了好几次复位与保持才使程序正确运行,

15、这是对硬件了解太少所导致的后果,以后学习检查硬件也是我学习的重点!3、对设计的建议本设计没有对拐弯处的路灯进行控制,只是在直线上控制,对于转向灯的控制希望可以加些改进,以符合实际应用的要求!七、设计生成的电路图(见附图)参考文献 1 潘松,黄继业.EDA技术使用教程. 北京:科学出版社,20062 黄任.VHDL入门.解惑.经典实例.经验总结.北京:北京航空航天大学出版社,2005 3 徐志军,徐光辉.CPLD/FPGA的开发与应用.北京: 电子工业出版社,20024 李洪伟,袁斯华 基于quartus 2的FPGA/CPLD的设计 电子工业出版社5VHDL数字电路设计教程 乔庐峰 王志功 等译 电子工业出版社6EDA技术实验讲义 杭州康芯电子有限公司

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1