网站大量收购独家精品文档,联系QQ:2885784924

交通信号控制灯的设计.doc

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
交通信号控制灯的 设计报告 学院: 物电学院 姓名: 朱琳 班级: 08(27)班 学号: 日期: 2011-06-27 指导老师: 康素成 目 录 一.实验目的 3 二.设计摘要 3 三.关键词 3 四.设计的基本思路及要求 3 1.设计要求 3 2.交通灯控制系统状态表 4 五.设计所需装置和功能 6 1.DE2综合开发板一套,微机一台 6 2.交通信号灯的功能: 6 六.程序代码分析 7 七.实验操作内容及步骤 14 1、打开QuartusⅡ,创建jtxhd工程 14 2.引脚分配 19 3.产生波形图 20 八.设计心得,体会 22 九、参考文献 23 一.实验目的 1.掌握VHDL设计一个交通等控制器的方法: 2.初步掌握VHDL语言的设计方法 3.掌握Quartus II软件的使用; 二.设计摘要 本文分析了现代交通控制与管理问题的现状,根据城市交通的实际情况,阐述了交通灯数字控制系统的工作原理,给出了一种简单实用的城市交通灯数字控制系统的电路设计方案。 2.交通灯控制系统状态表: 状态 主干道 支干道 时间 S0 绿灯亮,允许通行 红灯亮,禁止通行 45秒 S1 黄灯亮,停车 红灯亮,禁止通行 5秒 S2 红灯亮,禁止通行 绿灯亮,允许通行 25秒 S3 红灯亮,禁止通行 黄灯亮,停车 5秒 如下图所示的交通信号灯控制器的系统框图: 总体电路原理图如下: 五.设计所需装置和功能 1.DE2综合开发板一套,微机一台 2.交通信号灯的功能: 由主干道A和支干道B的汇合点形成十字交叉路口,在交叉路口处设有红绿黄三色信号灯。红灯亮禁止通行;绿灯亮允许通行;黄灯亮则让行驶到路口的车辆有时间停靠到禁止线外。用两位数码管支干道所处的状态。红黄绿分别用R1/R2,Y1/Y2,G1/G2表示 主干道车辆较多,所以绿灯亮灯时间为50s,支干道亮绿灯时间设为30S。当主干道允许通行亮绿灯时则支干道亮红灯;支干道亮绿灯时也相反。每次由绿灯转变为红灯时,期间要亮5s的黄灯。 交通灯正常运行时,用7段数码管显示主干道和支干道的倒计时时间。 六.程序代码分析 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity jtxhd is port(Clk : in std_logic; --时钟输入 Rst : in std_logic; --复位输入 R1,R2 : out std_logic; --红灯输出 Y1,Y2 : out std_logic; --黄灯输出 G1,G2 : out std_logic; --绿灯输出 Display : out std_logic_vector(7 downto 0); --七段码管显示输出 SEG_SEL : buffer std_logic_vector(2 downto 0) --七段码管扫描驱动 ); end jtxhd; architecture behave of jtxhd is signal Disp_Temp : integer range 0 to 15; signal Disp_Decode : std_logic_vector(7 downto 0); signal SEC1,SEC10 : integer range 0 to 9; signal Direction : integer range 0 to 15; signal Clk_Count1 : std_logic_vector(9 downto 0); --产生0.5Hz时钟的分频计数器 signal Clk1Hz : std_logic; signal Dir_Flag : std_logic; --方向标志 begin process(Clk) begin if(Clkevent and Clk=1) then if(Clk_Count11000) then

文档评论(0)

mx597651661 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档