EDA实验报告验四:交通灯控制器设计.docVIP

EDA实验报告验四:交通灯控制器设计.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA实验报告验四:交通灯控制器设计

实验四 交通灯控制器设计 一、实验目的 学习与日常生活相关且较复杂数字系统设计; 2、进一步熟悉EDA实验装置和QuartusⅡ软件的使用方法; 3、学习二进制码到BCD码的转换; 4、学习有限状态机的设计应用。 二、设计要求 完成设计、仿真、调试、下载、硬件测试等环节,在型EDA实验装置上实现一个由一条主干道和一条乡间公路的汇合点形成的十字交叉路口的交通灯控制器功能,具体要求如下: 有MR(主红)、MY(主黄)、MG(主绿)、CR(乡红)、CY(乡黄)、CG(乡绿)六盏交通灯需要控制; 交通灯由绿转红前有4秒亮黄灯的间隔时间,由红转绿没有间隔时间; 乡间公路右侧各埋有一个串连传感器,当有车辆准备通过乡间公路时,发出请求信号S=1,其余时间S=0; 平时系统停留在主干道通行(MGCR)状态,一旦S信号有效,经主道黄灯4秒(MYCR)状态后转入乡间公路通行(MRCG)状态,但要保证主干道通行大于一分钟后才能转换; 一旦S信号消失,系统脱离MRCG状态,即经乡道黄灯4秒(MRCY)状态进入MGCR状态,即使S信号一直有效,MRCG状态也不得长于20秒钟; 控制对象除红绿灯之外,还包括分别在主干道和乡间公路各有一个两位十进制倒计时数码管显示。 主要仪器设备 微机 1台 QuartusII集成开发软件 1套 EDA实验装置 1套 四、实验思路 1、设计一个状态寄存器,控制六盏灯的亮与灭 2、设计一个计时器,控制各状态的持续时间,计时器应满足以下要求: 1)当S=1,且计数器已完成60计数时,计数器进入模4计数,随后进入模 20计数,再进入模4计数,再回到模60计数 2)当计数器进行摸20计数时,一旦S变为0,计数器立马进入模4计数, 再进入模60计数 3)完成模20计数后,不论S为0或1,计数器进入模4计数,再进入模60 计数 4)若计数器未完成模60计数,不论S如何变话,计数器将继续进行模60 计数 3、设计一个译码显示电路,将计时器的八位BCD码转化为数码管可以显示的段位码。通过动态扫描电路实现。 4、设计一个分频器,将扫描频率分频为基准频率,提供计时器,状态器,译码显示的钟控。 5、使用文本设计4个底层文件,并生成相应元器件,再使用原理图设计顶层文件 五、实验步骤 1、建立工作库文件夹和编辑设计文件 1)建立一个文件夹保存工程文件; 2)打开QuartusII,建立新的VHDL文件,再打开的页面下输入以下程序 控制6盏灯的模块代码: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY jtd IS PORT(clk,RESET,S:IN STD_LOGIC; COUNT:IN STD_LOGIC_VECTOR(7 DOWNTO 0); MG,MY,MR,CG,CY,CR:OUT STD_LOGIC); END jtd; ARCHITECTURE behav OF jtd IS TYPE jtdSTATE IS(mgcr,mycr,mrcg,mrcy); SIGNAL STATE:jtdSTATE; BEGIN PROCESS(RESET,STATE,clk, S) BEGIN IF RESET=1 THEN STATE=mgcr;MG=1;CR=1;MY=0;MR=0;CG=0;CY=0; ELSIF clkEVENT AND clk=1 then CASE STATE IS WHEN mgcr=IF COUNTAND S=1THEN STATE=mycr;MY=1;CR=1;MG=0;MR=0;CG=0;CY=0; ELSE STATE=mgcr;MG=1;CR=1;MY=0;MR=0;CG=0;CY=0; END IF; WHEN mycr=IF COUNTTHEN STATE=mrcg;MR=1;CG=1;MG=0;MY=0;CR=0;CY=0; ELSE ST

文档评论(0)

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

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

1亿VIP精品文档

相关文档