数字系统课程设计-交通灯控制器实验报告.docVIP

数字系统课程设计-交通灯控制器实验报告.doc

  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文档。上传文档
查看更多
数字系统课程设计-交通灯控制器实验报告

交通灯控制器 ——数字系统设计报告 姓名: 学号: 实验目的 1.基本掌握自顶向下的电子系统设计方法 2.学会使用PLD和硬件描述语言设计数字电路,掌握 Quartus II等开发工具的使用方法 3.培养学生自主学习、正确分析和解决问题的能力 二. 设计要求 我所选择的课题是用Verilog HDL实现交通灯控制器。该课题的具体内容及要求如下: 主干道与乡村公路十字交叉路口在现代化的农村星罗棋布,为确保车辆安全、迅速地通过,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯禁止通行;绿灯允许通行;黄灯亮则给行驶中的车辆有时间行驶到禁行线之外。主干道和乡村公路都安装了传感器,检测车辆通行情况,用于主干道的优先权控制。 (1)当乡村公路无车时,始终保持乡村公路红灯亮,主干道绿灯亮。 (2)当乡村公路有车时,而主干道通车时间已经超过它的最短通车时间时,禁止主干道通行,让乡村公路通行。主干道最短通车时间为25s 。 (3)当乡村公路和主干道都有车时,按主干道通车25s,乡村公路通车16s交替进行。 (4)不论主干道情况如何,乡村公路通车最长时间为16s。 (5)在每次由绿灯亮变成红灯亮的转换过程中间,要亮5s时间的黄灯作为过渡。 (6)用开关代替传感器作为检测车辆是否到来的信号。用红、绿、黄三种颜色的发光二极管作交通灯。 (7)要求显示时间,倒计时。 交通灯控制器框图如下: (C表示乡村道路是否有车到来,1表示有,0表示无;SET用来控制系统的开始及停止;RST是复位信号,高电平有效,当RST=1时,恢复到初始设置;CLK是外加时钟信号;MR、MY、MG分别表示主干道的红灯、黄灯和绿灯;CR、CY、CG分别表示乡村道路的红灯、黄灯和绿灯,1表示亮,0表示灭) 系统流程图如下:(MGCR:主干道绿灯,乡村道路红灯;MYCR:主干道黄灯,乡村道路红灯;MRCG:主干道红灯,乡村道路绿灯;MRCY:主干道红灯,乡村道路黄灯;T0=1表示主干道最短通车时间到,T1=1表示5秒黄灯时间到,T2=1表示乡村道路最长通车时间到。) 三.设计方案 本交通灯控制系统设计利用Verilog HDL语言进行设计编程,利用Cyclone EP1C6Q240C8芯片和一些外围器件组成硬件电路,利用QUARTUS II软件将编写好的程序进行编译、仿真,并将调试完成的程序下载到Cyclone EP1C6Q240C8芯片上,观测电路板上的红绿信号灯以及数码管显示,看是否按设计要求正常工作. 四、设计流程 本系统采用自顶向下的设计,设计一个顶层文件和三个底层文件。各模块关系如下: 设计文件如下: 低层文件 (1)系统工作模块(traffic1)如下: 功能:该模块完成对输入信号CLK,rst,c的处理,实现交通灯控制的主要功能。 源程序: module traffic1(CLK,rst,c,LAMPA,LAMPB,TAH,TAL,TBH,TBL); output[3:0] TAH,TAL,TBH,TBL;//TAH,TAL分别表示主干道倒计时的高位和低位,TBH,TBL表示乡村道路倒计时的高位和低位 output[2:0] LAMPA,LAMPB;//从高位到低位分别表示红,黄,绿 input CLK,rst,c; reg[7:0] numa,numb,s1,s2;//numa,numb分别表示主干道和乡村道路的倒计时;s1用来表示主干道最短通车时间是否已到,到了s1=1;s2用来表示乡村道路最长通车时间是否已到,到了s2=1 reg[3:0] TAH,TAL,TBH,TBL; reg[2:0] LAMPA,LAMPB; always @(posedge CLK or posedge rst ) //该进程控制主道方向的四种灯 begin if(rst)//重置 begin LAMPA =1;LAMPB =4; //重置情况视乡村道路无车,主干道一直通行 numa = 8b;//主干道计时20秒 numb = 8b; //乡村道路计时25秒 end else begin if(LAMPA==1) //主干道绿灯亮 begin if(numa==1c==0s1) //主干道最短通车时间已到,但乡村道路没车 begin numa=1;//倒计时停在1秒 LAMPA=1;//保持在主干道绿灯 end else if(numa==1c==1s1)//主干道最短通车时间

文档评论(0)

sanshengyuan + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档