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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

用VHDL语言实现的交通灯精品版.docx

1、用VHDL语言实现的交通灯精品版 序言 3第1章 任务和要求 41.1 设计任务 41.2设计要求4第2章 功能分析 62.1交通灯控制系统总体框架图 62.2模块功能分析. 6第3章 设计过程 73.1 分频模块的设计及仿真图 73.2 显示模块的设计及仿真图 73.3 数码管显示模块设计及仿真图 83.4 译码驱动模块的设计及仿真图 83.5顶层文件设计及仿真图 93.6交通灯顶层原理图 9第4章 外部电路结构图及引脚分配 114.1电路主要结构 114.2下载引脚分配 12第五章 分析与小结5.1测试及结果分析 135.2实验小结 13参考文献14附录 15 具有五种信号灯和倒计时显示的

2、交通灯控制器序言随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。、上海、南京等出现了交通超负荷运行的情况,因此,自80年代后期,这些城市纷纷修建城市高速道路,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路

3、耦合处交通状况的制约。所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。随着中国加入WTO,我们不但要在经济、文化、科技等各方面与国际接轨,在交通控制方面也应与国际接轨。俗话说“要想富,先修路”,但路修好了如果在交通控制方面做不好道路还是无法保障畅通安全。作为交通控制的重要组成部份的交通信号灯也应适合社会实际情况。因此,本人选择制作十字路口交通灯。 运用VHDL语言编写一个

4、交通灯控制器模块,该模块由四部分组成,分别是分频模块clk_10,灯模块js,数码显示模块sm和译码驱动模块dec47。交通灯控制器用于自动控制十字路口交通灯和计时器,指挥各种车辆和行人安全通行。摘 要:本设计中选用目前应用较广泛的VHDL硬件电路描述语言,实现对路口交通灯系统的控制器的硬件电路描述,在Altera公司的EDA软件平台MAX+PLUS环境下通过了编译、仿真,并下载到CPLD器件上进行编程制作,实现了交通灯系统的控制过程。关键词:EDA;VHDL;控制器;CPLDAbstract: And select and use Description Language applying

5、broader VHDL hardware circuit at present in capital being designed, the hardware circuit coming true to systematic controller of crossing traffic light describes that, have passed compiling , have simulated under EDA of Altera company software platform MAX + PLUS II environment, download the control

6、 procedure having made , realizing traffic light systematically to the programming being in progress on CPLD component. Keywords: EDA; VHDL; Controller; CPLD第1章 任务和要求1.1 设计任务设计一个十字路口交通控制器,方向和方向分别设置左拐(L),绿(G),黄(Y),和红(R),人行道(p)五盏灯,以及倒计时显示器,用以指挥车辆和行人有序的通行。左拐灯(L)亮表示左转车辆可以通行;绿灯(G)亮表示直行车辆可以通行;黄灯(Y)亮表示左转或直

7、行车辆即将禁行;红(R)灯亮表示左转和直行车辆禁行,人行道的绿灯亮表示人可以通行,红灯表示人行道不可以通行;倒计时显示器用来显示允许通行或禁止通行的时间 。1.2 设计要求1 在十字路口A和B两个方向各设一组左拐,绿灯,黄灯,红灯,人行道红绿灯。显示顺序:绿灯黄灯红灯(左拐灯以及人行道绿灯)。2 在A和B两个方向各设一组倒计时显示器。A、B方向绿灯,黄灯,红灯和左拐灯显示时间分别是39s,6s,45s,和15s。3 交通灯的显示状况: 39s 6s 左拐15s 人绿30s A 绿灯 黄灯 红灯 45s 左拐15s 人绿 30s 39s 6s B 红灯 绿灯 黄灯 45s除人行道绿灯亮之外,人行

8、道红灯亮。4 设有一个特殊情况按钮con,当为高电平的时候可以让人行道的交通灯的红灯都亮,为低电平的时候可以恢复正常。5 设有停止按钮rst,当为高电平的时候可以让所有的灯以及数码管都停止,当为低电平的时候恢复正常。第2章 功能分析2.1控制系统总体框架图con A、B道灯输出(12个灯) clk 数码管Rst 图21交通灯控制系统总体框架图2.2各模块功能分析根据设计要求和系统所具有的功能,交通灯控制分为四个部分: 分频电路:用555电路也可以产生1HZ的脉冲,但是由于频率太低不稳定,所有用555产生10HZ的脉冲,而我们需要的是1HZ的脉冲,所有我们在软件内部加了一个10分频的电路。灯显示

9、电路:按照交通灯的亮灯时间和亮灯顺序,在进行计数的同时控制灯的亮和灭。数码显示电路:这是数码管显示控制电路,利用计数控制数码管的显示,数码管是以BCD的来显示的,而且显示是以减计数的形式来显示的。译码显示电路:这是个译码电路,与外部的数码管相连接。第3章 设计过程3.1 分频模块clk_10的设计控制模块的输入是由555产生的10HZ脉冲,输出是经过分频之后的1HZ 脉冲,分频模块的仿真如下:图3-1 交通灯分频模块波形仿真图3.2 灯显示模块js的设计控制12个灯的亮和灭。灯显示模块的仿真如下:图3-2交通灯计时模块波形仿真图3.3数码显示模块sm的设计控制数码管的显示。该模块的仿真如下:图

10、3-3交通灯译码驱动模块波形仿真图3.4 译码驱动模块dec47的设计显示模块用来显示倒计时时间和系统的工作状态。其输出用来驱动六位数码管,其中四位用于显示倒计时时间,两位显示工作状态,采用动态扫描显示。该模块的仿真如下:图3-4交通灯显示模块波形仿真图3.5 顶层文件设计由分频模块clk_10,灯显示模块js,数码显示模块sm和译码驱动模块dec47四部分组成,其仿真如下:图3-6交通灯顶层文件波形仿真图3.6交通灯顶原理图图3-7交通灯顶层原理图第4章 电路结构图及引脚分配4.1电路主要结构 VCC 12个灯图4-1交通灯控制器外部电路主要结构说明:电路中的电阻都为1K,555的外部电路有

11、两个电阻,分别是75K和33K,电容是1uF和10nF。灯和数码管都用底座插,开关也用底座,开关至1为闭合(接地),开关至0为打开(接高电平)。三五产生一个10KHz的脉冲信号。4.2下载引脚分配表4-2下载引脚分配第五章 分析与小结5.1测试及结果分析 1灯显示测试当电路连接完毕后,将写好的测试程序下载到芯片内,连接好各灯通电检测。检测各个工作方式下的灯亮情况。2数码管的测试将串口的和电路板上的接口连接,将写好的测试程下载到芯片内,用万用表监测下,再测试。3整体电路测试系统上电,下载好程序即可开始测试,观测一个周期灯的显示状态是否正常,同时观察倒计的计数是否正常。5.2 实验小结首先感谢宋伟

12、老师和翟丽芳老师为期两个星期对我们的辅导、帮助与支持。本次课程设计软件都是我们自己编的,经过这个过程之后我觉得我学了不少的东西,硬件易出问题,尤其是开关的连接。连线复杂,问题难以检查。软件应根据具体硬件设计,如数码管动态扫描电路:共阴极和共阳极其程序有所区别。此外,设计和调试的过程中,也发现了一些问题,譬如灯和数码管不同步,还有就是没有做过市场调查,设置不是很合理,下次做的时候应先做市场调查。这需要在实践中进一步完善。分频程序在实际应用时也须根据具体情况设计。参考文献1邹彦,庄严,邹宁,王宇鸿.EDA技术与数字系统设计M.北京:电子工业出版社,2007.2谭会生.VHdl硬件描述语言与数字逻辑

13、电路设计M.长沙:湖南大学出版社,2004.3雷伏生.电路设计.北京:清华大学出版社M,2006.4杨晓慧.EDA技术与数字电路设计.北京:国防工业出版社M,2004.5许丽娅.VHDL语言设计.泉州:北京理工大学出版社M.2005.附录源程序清单1分频模块源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity clk_10 isport( clk : in std_logic; rst:in std_logic; clk_di

14、v10 : out std_logic);end clk_10;architecture one of clk_10 issignal clk_temp : std_logic;beginprocess(clk,rst)variable counter : std_logic_vector(2 downto 0);constant md : std_logic_vector(2 downto 0) := 101;beginif(rst=0) then if(clkevent and clk=1) thenif(counter = md)thencounter := (others =0);cl

15、k_temp = not clk_temp;end if;counter := counter + 1 ;end if;else clk_temp=0;end if;end process;clk_div10 = clk_temp;end one;2灯显示模块源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity js isport (clk:in std_logic; con:in std_logic; al,ag,ay,ar,ap:out std_logic; bl,bg,by,b

16、r,bp:out std_logic; apr,bpr:out std_logic);end entity js;architecture one of js issignal b:std_logic_vector(6 downto 0);signal apg,bpg:std_logic;begin process(clk,con)variable co,bo:std_logic:=0; begin if(con=0) then if(clkevent and clk=1) then b=b+1; if(b=14) then al=0;ag=1;ay=0;ar=0;apg=0;bl=1;bg=

17、0;by=0;br=1;bpg=0; elsif(b14) then al=0;ag=1;ay=0;ar=0;apg=0;bl=0;bg=0;by=0;br=1;bpg=1; elsif(b38) then co:=not co; al=0;ag=0;ay=co;ar=0;apg=0;bl=0;bg=0;by=0;br=1;bpg=1; elsif(b44) then al=1;ag=0;ay=0;ar=1;apg=0;bl=0;bg=1;by=0;br=0;bpg=0; elsif(b59) then al=0;ag=0;ay=0;ar=1;apg=1;bl=0;bg=1;by=0;br=0

18、;bpg=0; elsif(b83) then bo:=not bo;al=0;ag=0;ay=0;ar=1;apg=1;bl=0;bg=0;by=bo;br=0;bpg88) then b=0000001;al=0;ag=1;ay=0;ar=0;apg=0;bl=1;bg=0;by=0;br=1;bpg=0; end if; end if; else al=0;ag=0;ay=0;ar=1;apg=0;bl=0;bg=0;by=0;br=1;bpg=0; end if; apr=not apg;bpr=not bpg; end process ;ap=apg;bp=bpg;end archi

19、tecture;3、数码显示模块源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity sm isport (clk:in std_logic; a1:out std_logic_vector(3 downto 0); a2:out std_logic_vector(3 downto 0); b1:out std_logic_vector(3 downto 0); b2:out std_logic_vector(3 downto 0);end entity sm;architectur

20、e one of sm issignal t1,t2,p1,p2:std_logic_vector(3 downto 0);signal j:std_logic_vector(6 downto 0):=0000000;begin process(clk) begin if(clkevent and clk=1) then if (j=0) then t1=0011;t2=1000;p1=0100;p20 and j0000) then t1=t1;t2=t2-1; elsif(t2=0000) then t1=t1-1;t20 and j0000) then p1=p1;p2=p2-1; el

21、sif(p2=0000) then p1=p1-1;p2=1001; end if; end if; if (j=39) then t1=1011;t2=1011; end if; if (j=45) then t1=0100;t2=0100;p1=0011;p245 and j0000) then p1=p1;p2=p2-1; elsif(p2=0000) then p1=p1-1;p245 and j0000) then t1=t1;t2=t2-1; elsif(t2=0000) then t1=t1-1;t2=1001; end if; end if; if (j=84) then p1

22、=1011;p2=1011; end if; j=j+1; if (j=89) then j=0000000; end if; end if; end process; a1=t1;a2=t2;b1=p1;b2 y1=0;y2=0;y3=0;y4=0;y5=0;y6=0;y7 y1=1;y2=1;y3=1;y4=1;y5=0;y6=0;y7 y1=0;y2=0;y3=1;y4=0;y5=0;y6=1;y7 y1=0;y2=0;y3=0;y4=0;y5=1;y6=1;y7 y1=1;y2=0;y3=0;y4=1;y5=1;y6=0;y7 y1=0;y2=1;y3=0;y4=0;y5=1;y6=0;y7 y1=0;y2=1;y3=0;y4=0;y5=0;y6=0;y7 y1=0;y2=0;y3=0;y4=1;y5=1;y6=1;y7 y1=0;y2=0;y3=0;y4=0;y5=0;y6=0;y7 y1=0;y2=0;y3=0;y4=1;y5=1;y6=0;y7 y1=1;y2=1;y3=1;y4=1;y5=1;y6=1;y7 y1=Z;y2=Z;y3=Z;y4=Z;y5=Z;y6=Z;y7=Z;end case;新叶阅读答案end process;end one;

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

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