爱游戏

成功案例

爱游戏全站app下载

爱游戏_app官方下载-爱游戏全站

公司地址:山东省淄博市张店区三赢路69号潘博科技工业园创业园3号楼

电话:0533-8170600

传真:0533-8170603

全国服务热线:400-0533-061

邮箱:ruiliandz@126.com

网址:www.kllxjz.com

联系电话:

销售一部:田经理  13589512680   QQ:2440363922 

销售二部:李经理  13589557350   QQ:1365277889 


爱游戏app官方下载

您的当前位置: 首页 > 成功案例

爱游戏:Verilog HDL基础之:实例5 交通灯控制器

发布时间:2022-06-14 11:18:23 来源:爱游戏app官方下载 作者:爱游戏全站app下载


  本实例通过Verilog HDL语言设计一个简易的交通等控制器,实现一个具有两个方向、共8个灯并具有时间倒计时功能的交通灯功能。

  交通灯是城市交通中不可缺少的重要工具,是城市交通秩序的重要保障。本实例就是实现一个常见的十字路通灯功能。读者通过学习这个交通灯控制器,可以实现一个更加完整的交通灯。例如实现实时配置各种灯的时间,手动控制各个灯的状态等。

  一个十字路口的交通一般分为两个方向,每个方向具有红灯、绿灯和黄灯3种,另外每个方向还具有左转灯,因此每个方向具有4个灯。

  这个交通灯还为每一个灯的状态设计了倒计时数码管显示功能。可以为每一个灯的状态设置一个初始值,灯状态改变后,开始按照这个初始值倒计时。倒计时归零后,灯的状态将会改变至下一个状态。

  值得注意的是,交通灯两个方向的灯的状态是相关的。也就是说,每个方向的灯的状态影响着另外一个方向的灯的状态,这样才能够协调两个方向的车流。如果每个方向的灯是独立变化的,那么交通灯就没有了意义。

  在实际的交通系统中,直行绿灯、左转绿灯和红灯的变化之间都应该有黄灯作为缓冲,以保证交通的安全。因此假如我们假设方向A的黄灯亮的时间持续5s,直行绿灯灯亮的时间持续40s,左转灯灯亮的时间持续15s,则方向B红灯灯亮的时间持续为(直行绿灯+黄灯+左转绿灯+黄灯)所消耗的时间,一共为65s。

  同样假设方向B黄灯亮的时间持续5s,直行绿灯灯亮的时间持续30s,左转灯灯亮的时间持续15s,则方向B红灯灯亮的时间持续为(直行绿灯+黄灯+左转绿灯+黄灯)所消耗的时间,一共为55s。

  具体时间参数的设定读者可以根据需要进行修改,但是一定要保证两个方向的灯的状态符合表1的要求。

  下面给出交通灯控制器的Verilog HDL源代码,首先介绍交通灯端口信号的定义及说明,读者可以通过这些端口将此交通灯模块实例化至自己的工程设计中。

  //设置各交通灯的持续时间初始化值,红灯的值由另一个方向的黄灯和绿灯计算得出。

  if(!EN) begin //使能信号EN无效时,对交通灯的计数值进行初始化

  //控制B方向4种灯的模块,模块的语言描述与方向A的描述基本一致,这里不再重复注释

  通过上面这个Verilog HDL模块,基本实现了交通灯控制器的基本功能。读者可将此设计应用于实际的硬件系统中,通过晶振、FPGA、开关、LED灯及数码管等资源即可完成硬件实现。