- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FPGA(EDA)课程设计——交通灯(附源代码)
技术规范
功能描述:
实现一个由一条主干道和一条支干道的汇合点形成的十字路口的交通灯控制器,具体功能:
(1) 主、支干道各设有一个绿、黄、红指示灯,两个显示数码管。
(2) 主干道处于长允许通行状态,而支干道有车来时才允许通行。当主干道允许通行亮绿灯时,支干道亮红灯。而支干道允许通行亮绿灯时,主干道亮红灯。
(3) 当主干道、支干道均有车时,两者交替允许通行,主干道每次通行45 秒,支干道每次通行25 秒,在每次由绿灯向红灯转换的过程中,要亮5 秒的黄灯作为过渡,并进行减计时显示。
A
B
45秒倒计时绿灯亮
50秒倒计时 红灯亮
30秒? 红灯亮
25秒绿灯亮
5秒黄
5秒黄
图一:交通灯闪烁时序图 !--[if !vml]--!--[endif]-- !--[if !vml]--!--[endif]--
每个周期结束时都要进行支干道是否有车的检测,若有车则进行下一个周期,若没有,则主干道亮绿灯,支干道亮红灯,直到检测到支干道有车。
?
系统总体框图:
根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如下图所示的交通信号灯控制器的系统框图。
数码管位码
数码管段码
LED灯
clk
?
car
?
rst
?
?
?
时钟分频模块
交通灯控制及计时模块
扫描显示译码模块 !--[if !vml]--!--[endif]-- !--[if !vml]--!--[endif]--
?????????????????? 图二:系统总体框图
?
?
I/O管脚的描述
?
名称 方向 电平 位宽 功能 ?? clk Input 3.3V 1 系统时钟信号(10KHZ) ?? car ? Input 3.3V 1 检测信号 rst ? Input 3.3V 1 复位信号 led ? Output 3.3V 6 LED灯 sel ? Output 3.3V 7 数码管段码 ? ?seg ? Output 3.3V 4 数码管位码 ????????????? 表一:系统总体I/O管脚的描述
注:其中系统时钟的频率选为10KHZ,复位采取同步复位方式,且低有效。支干道检测到有车时, car=1;否则,car=0。
方案对比:在交通灯控制器的设计中,交通灯控制及计时模块是本设计的关键模块。这个模块的实现可以用状态机,也可以用if—else语句来写。相比较而言,用状态机来写比较清楚明白直观,且容易避免出现未知状态。所以选用状态机来写此模块。
拟选用的FPGA类型:ep1cq240c8n
?
?
总体设计方案
交通灯
!--[if !supportLists]--一、??????????? !--[endif]--系统详细框图
在系统总体框图的基础上进一步详细设计,得到如下系统详细框图
数码管位码
数码管段码
LED灯
clk
?
car
?
rst
?
?
?
时钟分频模块
交通灯控制及计时模块
扫描显示译码模块
clk_odd !--[if !vml]--!--[endif]--。
?
?
??????????? ??图三:系统详细框图
注:系统总体I/O管脚描述请查看技术规范。
?
!--[if !supportLists]--二、??????????? !--[endif]--具体模块设计
1.时钟分频模块
系统的动态扫描需要10KHZ的脉冲,而系统时钟计时模块需要1HZ的脉冲。分频模块主要为系统提供所需的时钟计时脉冲。该模块将10KHZ的脉冲信号进行分频,产生1S的方波(占空比为50%),作为系统时钟计时信号。
clk
?
时钟分频模块
rst
clk_odd !--[if !vml]--!--[endif]-- !--[if !vml]--!--[endif]--
?????????????????? 图四:时钟分频模块框图
I/O管脚描述如下:
?
名称 方向 电平 位宽 功能 clk input 3.3V 1 系统时钟(10KHZ) rst input 3.3V 1 复位信号 clk_odd output 3.3V 1 分频后时钟信号(1HZ) ????????????? 表二:时钟分频模块I/O端口描述
注:系统时钟的频率为10KHZ,分频后的时钟信号为1HZ(占空比为50%)。复位信号为同步复位,且低有效。
?
2.交通灯控制及计时模块
控制模块根据外部输入信号和计时模块产生的输出信号,产生系统的状态机,控制其他部分协调工作。计时模块用来设定主干道和支干道计时器的初值,并为扫描显示译码模块提供倒计时时间。
控制模块采用状态机进行设计,可以定
文档评论(0)