VerilogHDL负责数字电路设计(AI助学版)课件_第1页
VerilogHDL负责数字电路设计(AI助学版)课件_第2页
VerilogHDL负责数字电路设计(AI助学版)课件_第3页
VerilogHDL负责数字电路设计(AI助学版)课件_第4页
VerilogHDL负责数字电路设计(AI助学版)课件_第5页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

17.2按键交通灯问题:用于控制主干道与支干道交叉路口的交通,它具有以下应用场景:(1)由于主干道上来往的车辆很多,在默认情况下主干道的绿灯常亮;(2)有行人需沿着支干道穿越主干道时,先按一下按键,支干道方向交通灯等待一段时间之后,开始变为绿灯,并维持一段足够长的时间,以便行人穿过主干道。支干道方向的等待时间为主干道开始绿灯计数和黄灯计数时间之和;(3)支干道方向的指示灯变为黄灯,然后变为红灯;同时,主干道方向的交通灯由红变绿;(4)保持主干道方向的指示灯常绿,直到下一次有人需要穿越主干道,再次触发为止;(5)在一次主支干道信号灯交替过程期间,按键不起作用。设计分析:这个要求与普通交通灯的功能是一致的,唯一区别就是,电路外部加了一个手动开关,该开关被按下后,完成一次普通交通灯的转换,最后停留在主干道为绿灯,支干道为红灯的状态,等待下一次触发。假定手动开关按下以后,EN=1,交通灯开始一次红绿灯变化,变化结束,自动把EN清为0,等待下一次触发。也就是EN=1时,计数器开始工作,EN=0时,计数器不进行计数。(1)锁存按键开关EN=1信号,锁存时间为60秒;(2)计时60秒结束后,自动清除锁存信号。(3)在按键信号EN=1锁定以后,再按按键不起作用,不会因为再次按压按键,计数器重新开始计数。按键处理电路:开关按键不按时key=0,为低电平,按下时key=1,为高电平。按键按下时key=1的值在时钟clk的作用下,存入D触发器DFF中,并一直保持。这里利用了二输入或门的特点。按键处理电路:完成一次交通信号灯的变换以后,即60秒的时钟计数以后,存储在DFF中的高电平自动清为低电平。根据上一节设计,秒计数器count的值是从61计到2。当count计到2时,信号count_Eq_2为一个时钟周期的高电平,把DFF的输入变为0,使Q的输出为0,实现按键信号的清除功能。对应电路修改就是把图17-7所示的电路改为图17-8所示的电路。信号位宽I/O描述clk1I时钟信号,频率为32.768kHzreset1I异步复位信号,高电平有效key1I开关按键不按时key=0,为低电平;按下时key=1,为高电平,clk的上升沿采样数据count6I模60计数器,61到2进行减计数,clk的上升沿采样数据EN1O每当key=1时,EN在按键触发后输出持续60秒的高电平使能信号,在输出高电平的60秒期间,若按键再次按下,对EN输出没有影响。60秒结束后有按键再次按下,再次输出一个60秒的高电平信号,时钟clk的上升沿更新//开关控制模块电路设计:modulekey_control(clk,reset,key,count,EN);inputreset,key,clk,second_pulse;input[5:0]count;outputEN;regEN;always@(posedgeclkorposedgereset)beginif(reset)EN<=0;elseEN<=(EN|key)&(~(count==2));endendmodule在进行电路设计时,需要在普通交通灯电路的基础上,加入按键信号处理电路key_c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论