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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

EDA交通灯课程设计论文.docx

1、EDA交通灯课程设计论文计算机硬件设计实训报 告题目: 具有四种信号灯的交通灯控制器 班级 学号 姓名 评分表出勤10分设计能力20分调试能力20分实训报告30分答辩20分总分成绩等级: 指导教师:2012年12月具有四种信号灯的交通灯控制器一、总体要求初始条件:设计一个具有四种信号灯的交通灯控制器。设计要求是:由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄、左拐允许四盏信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外,左拐灯亮允许车辆向左拐弯。信号灯变换次序为:主支干道交替允许通行,主干道每次放行40S,亮5S红灯让行驶中的车辆有时间停到禁

2、行线外,左拐放行15秒,亮5S红灯;支干道放行30S,亮5S黄灯,左拐放行15秒,亮5S红灯。各计时电路为倒计时显示。二、设计原理及思想根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如下图所示的交通信号灯控制器的系统框图。图1、具有四种信号灯的交通灯控制器系统框图 由交通灯控制器系统框图(图1)可知,该系统由4个子模块组成。其中包括:(1) 定时模块; (2) 主控电路模块;(3) 译码驱动电路模块;(4) 扫描显示模块。以上四个电路可以分为两大模块,即:主控电路及计时(定时)模块和扫描显示译码模块。三、单元模块设计与仿真1、主控电路及计时(定时)模块控制模块根据

3、外部输入信号和计时模块产生的输出信号,产生系统的状态机,控制其他部分协调工作。计时模块用来设定主干道和支干道计时器的初值,并为扫描显示译码模块提供倒计时时间。控制及计时模块采用状态机进行设计,可以定义出8种状态,分别为S0:主干道绿灯,支干道红灯且禁止通行;S1:主干道黄灯亮,支干道红灯禁止通行;S2:左拐灯亮,允许左行,支干道红灯,禁止通行;S3:主干道黄灯,停车;支干道红灯,禁止通行;S4:主干道红灯,支干道绿灯。S5:主干道红灯,支干道黄灯S6:主干道红灯,支干道左拐灯亮,允许左拐S7:主干道红灯,支干道黄灯。其仿真波形如下:图2、主控电路及计时(定时)模块仿真图2、扫描显示译码模块扫描

4、显示译码模块可以根据控制信号,驱动交通信号灯以及倒计时数码管的显示,其中数码管的显示采用动态扫描显示。本模块采用数码显示管来完成。数码显示管是计数器等电路的最好选择。数码管可以用TTL或者CMOS集成电路直接驱动完成。仿真波形如下:图3、扫描显示译码模块仿真图3、顶层文件的编写将以上各个单元模块仿真成功后,再进行顶层文件的编写。根据以上设计思路,可以得到如下的顶层文件原理图图4、具有四种信号灯的交通灯控制器的顶层原理图系统输入信号:clk:1kHz的时钟信号;en:系统使能信号系统输出信号:lampa1:主干道红灯信号lampa2:主干道黄灯信号lampa3:主干道绿灯信号lampa4:主干道

5、左拐信号lampb1:主干道红灯信号lampb2:主干道黄灯信号lampb3:主干道绿灯信号lampb4:主干道左拐信号acounth,acountl:主干道计时输出bcounth,bcountl:支干道计时输出仿真波形如下:图5、具有四种信号灯的交通灯控制器的顶层文件仿真图(1)图6、具有四种信号灯的交通灯控制器的顶层文件仿真图(2)四、结果及分析通过仿真可以看到:当主干道绿灯,支干道红灯时,主干道倒计时高位置数0100,低位置数0101;支干道高位置数0101,低位置数0000;当主干道黄灯,支干道红灯时,主干道黄灯倒计时置数0101;支干道继续刚才的减计数;当主干道红灯,支干道绿灯时,主

6、干道倒计时高位置数0011,低位置数0000;支干道高位置数0010,低位置数0101;当主干道红灯,支干道黄灯时,支干道黄灯倒计时置数0101;主干道继续刚才的减计数。在S4状态结束后,自动跳回到S0状态,继续判断支干道是否有车行驶,若有车行驶,则跳转到S1状态,给高、低位置数,继续进行减计时。系统根据COUNT的变化自动在各状态下跳变,当count为45时,跳变到S2状态;当count为50时,跳变到S3状态;当count为75时,跳变到S4状态;当count为80时,若支干道没有车跳变到S0状态,有车则跳变到S1状态。五、调试过程中遇到的问题及解决方法设计过程中参考课本后面的附带的设计程

7、序,发现了书中的一些小瑕疵,在老师的帮助下,加以修改,最终完成了主控电路模块的仿真。 错误:修改后:六、收获与体会本设计采用了VHDL硬件描述语言文本输入方式,在确立总体预期实现功能的前提下,分层次进行设计。实现了具有四种信号灯的交通灯控制器,以及时间的倒计时显示,指挥行人和车辆安全通行。程序中所用到的数据均可以根据实际情况进行设置,修改灵活方便。通过此次设计,我对于VHDL硬件描述语言有了更深入地了解,也在原来所学的理论基础上得到了进一步地应用。但由于经验上的不足,有些地方还需要做进一步地改善。七、附件:程序清单1.主控电路及计时(定时)模块LIBRARY ieee;USE ieee.std

8、_logic_1164.all;USE ieee.std_logic_unsigned.all;ENTITY traffic IS PORT ( clk,en:IN STD_LOGIC; lampa1,lampa2,lampa3,lampa4,lampb1,lampb2,lampb3,lampb4:OUT STD_LOGIC; acounth,acount1,bcounth,bcount1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); END traffic; ARCHITECTURE one OF traffic IS signal tempa,tempb:std_

9、logic; signal counta,countb:std_logic_vector(2 downto 0); signal numa,numb,ared,ayellow,agreen,aleft,bred,byellow,bgreen,bleft:std_logic_vector(7 downto 0); BEGIN com1:process(en) begin if(en=0)then ared=01010101;ayellow=00000101;agreen=01000000;aleft=00010101; bred=01100101;byellow=00000101;bgreen=

10、00110000;bleft=00010101; end if; end process com1; acounth=numa(7 DOWNTO 4);acount1=numa(3 downto 0); bcounth=numa(7 downto 4);bcount1=numb(3 downto 0); com2:process(clk,en,tempa,numa) begin if(en=1)then if(tempa=0)then tempanuma=agreen;lampa1=0;lampa2=0;lampa3=1;lampa4=0;countanuma=ayellow;lampa1=0

11、;lampa2=1;lampa3=0;lampa4=0;countanuma=aleft;lampa1=0;lampa2=0;lampa3=0;lampa4=1;countanuma=ayellow;lampa1=0;lampa2=1;lampa3=0;lampa4=0;countanuma=ared;lampa1=1;lampa2=0;lampa3=0;lampa4=0;countalampa1=1;lampa2=0;lampa3=0;lampa41)then if(numa(3 downto 0)=0000)then numa(3 downto 0)=1001;numa(7 downto

12、4)=numa(7 downto 4)-1; else numa(3 downto 0)=numa(3 downto 0)-1; if(numa=00000010)then tempa=0;end if; end if; else lampa1=1;lampa2=0;lampa3=0;lampa4=0;counta=000;tempa=0; end if; end if; end process com2; com3:process(clk,en,tempb,numb) begin if(en=1)then if(tempb=0)then tempbnumb=bgreen;lampb1=1;l

13、ampb2=0;lampb3=0;lampb4=0;countbnumb=byellow;lampb1=0;lampb2=0;lampb3=1;lampb4=0;countbnumb=bleft;lampb1=0;lampb2=1;lampb3=0;lampb4=0;countbnumb=byellow;lampb1=0;lampb2=0;lampb3=0;lampb4=1;countbnumb=bred;lampb1=0;lampb2=1;lampb3=0;lampb4=0;countblampb1=1;lampb2=0;lampb3=0;lampb41)then if(numb(3 dow

14、nto 0)=0000)then numb(3 downto 0)=1001;numb(7 downto 4)=numb(7 downto 4)-1; else numb(3 downto 0)=numb(3 downto 0)-1; if(numb=00000010)then tempb=0; end if; end if; else lampb1=1;lampb2=0;lampb3=0;lampb4=0;countb=000;tempbtt:=0000001; when 0001=tt:=1001111; when 0010=tt:=0010010; when 0011=tt:=0000110; when 0100=tt:=1001100; when 0101=tt:=0100100; when 0110=tt:=0100000; when 0111=tt:=0001111; when 1000=tt:=0000000; when 1001=tt:=0001100; when others=null; end case; a=tt(6); b=tt(5); c=tt(4); d=tt(3); e=tt(2); f=tt(1); g=tt(0); end process; end one;

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

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