verilog课程设计交通灯.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
本文档如对你有帮助,请帮忙下载支持! 本文档如对你有帮助,请帮忙下载支持! 姓 名学 号成 绩 姓 名 学 号 成 绩 评卷人 论文题目 基于 DE2 的交通灯设计 完成时间 课程名称 Verilog语言设计任课老师 专 业 年 级1.交通信号控制器设计要求与思路 设计背景 FPGA 是一种用户根据各自需要而自行构造逻辑功能的数字集成电路 ,其种类很多, 内部结构也不同 , 但共同的特点是体积小、使用方便。本文介绍了用VerilogHDL 语言设计交通灯控制器的方法,并在 QuartusII 系统对 FPGA 芯片进行编译下载,由于生成的是集成化的数字电路 ,没有传统设计中的接线问题 ,所以故障率低、可靠性高,而且体积非常小。本文通过 EDA 设计,利用 VerilogHDL 语言模拟仿真交通灯控制电路。 设计要求 根据交通灯控制器要实现的功能,考虑用两个并行执行的always 语句来分别控制 A 方向和 B 方向的 3 盏灯。这两个always 语句使用同一个时钟信号,以进行同步,也就是说,两个进程的敏感信号是同一个。每个always 语句控制一个方向的 3 种灯按如下顺序点亮,并往复循环:绿灯----黄灯 红灯,每种灯亮的时 间采用一个减法计数器进行计数,计数器用同步预置数法设计,这样只需改变预 置数据,就能改变计数器的模,因此每个方向只要一个计数器进行预置数就可以。为便于显示灯亮的时间,计数器的输出均采用BCD 码,显示由 4 个数码管来完成, A 方向和B 方向各用两个数码管。设定 A 方向红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s,B 方向的红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s。假如要改变这些时间,只需要改变计数器的预置数即可。 设计思路 两个方向各种灯亮的时间能够进行设置和修改,此外,假设B 方向是主干道, 车流量大,因此 B 方向通行的时间应该比 A 方向长。交通灯控制器的状态转换表 见下表。表中,1 表示灯亮,0 表示灯不亮。A 方向和 B 方向的红黄绿分别用 R1、Y1、G1、R2、Y2、G2 来表示。 交通灯控制器状态转换表 从状态表中可以看出,每个方向 3 盏灯依次按如下顺序点亮,并不断循环: 绿灯----黄灯 红灯,并且每个方向红灯亮的时间应该与另一个方向绿灯、黄 灯亮的时间相等。黄灯所起的作用是用来在绿灯后进行缓冲,以提醒行人该方向马上要禁行了。在使能控制信号( EN)控制时系统工作,并且要求有两个控制输入信号:即复位信号(Reset)和备用模式设置信号(Standby),在复位信号控制时,两个方向均为红灯,在备用模式设置信号控制时,两个方向均为黄灯。 系统设计框图 控制计时钟CLK10K复位RST分频CLK1分频 clk1M2M1 M0时电路复位RST复位 RST时钟 CLK10K数码管显示电路图 1 系统设计示意图2.交通信号控制器具体模块设计 控制计 时钟CLK10K 复位RST 分频CLK1 分频 clk1 M2 M1 M0 时电路 复位RST 复位 RST 时钟 CLK10K 数码管显示电路 图 1 系统设计示意图 2.交通信号控制器具体模块设计 AL AR AY AG A 组信号 灯 B组信号灯BL BR BY BG B 组信号灯 BL BR BY BG 系统的时钟输入为 10KHZ 的脉冲,而系统时钟计时模块需要 1HZ 的脉冲。分频模块主要为系统提供所需的时钟计时脉冲。该模块将10KHZ 的脉冲信号进行分频,产生 1S 的方波(占空比为 50% ),作为系统时钟计时信号。计时模块用来设定路口计时器的初值,并为扫描显示译码模块提供倒计时时间。 名称 方向 表 1 I/O管脚描述 位宽 功能 Clk10K input 1 系统时钟(10KHZ ) RST input 1 复位信号(高电平有效) Clk1 Clk1 output 1 分频后时钟信号(1HZ ) Verilog HDL 源代码如下: module fenpin(clk10k,rst,clk1/)/将; 10K 的频率分频为1 input clk10k,rst; output clk1; reg [7:0]j; reg clk1; always@(posedge clk10k or posedge rst) if(rst)begin clk1=0; j=0; end else if(j==9999)begin j=0; clk1=~clk1; end else j=j+1; Endmodule 控制模块设计 Verilog HDL 源代码如下: module control(EN_in,SW1,RST,Red1,Red2,Yellow1,Yellow2,Green1,Green2); output Re

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

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

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档