- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
EDA课设交通控制器设计.doc
学 号
天津城建大学
EDA技术及应用B
设计说明书
起止日期: 2015 年 月 日 至 年 月 日
学生姓名 班级 成绩 指导教师(签字)
学院
年 月 日
2014 —2015 学年第 2 学期
控制与机械工程 学院 电气工程及其自动化 专业
课程设计名称: EDA技术及应用B
设计题目: 交通控制器设计
完成期限:自 2015 年 6月 15 日至 2015 年 6 月 19 日共 1 周
一.设计.设计.设计要求1
1.1设计内容 1
1.2设计思路 1
1.3实现方法 1
第二章 设计原理 2
2.1 总体电路设计 2
2.2 控制器模块设计 2
2.3 输出显示模块设计 5
2.4时钟分频模块 6
2.4.1 CNT25S 6
2.4.2 CNT20S 8
2.4.3 CNT03S 9
第三章 程序仿真 11
3.1仿真结果 11
3.2仿真结果分析 11
总结 12
参考文献 13
设计思路
1.1设计内容
设计一个四路口三灯交通控制器,用LED显示灯表示交通状态,主干道绿灯亮时,支干道红灯亮;主干道,放行45s,其中直行绿灯时间25秒,左转20秒,直行和左转时间内个包含黄灯时间为3s。要求采用时序逻辑设计实现,数码管显示当倒计时秒数。此外可对红、绿、黄灯持续时间可以设置。
1.2设计思路
本次设计是针对十字路口,进行南北和东西直行情况下交通灯控制。设定东西方向为主干道方向,主干道绿灯亮时,支干道红灯亮;主干道,放行45s,其中直行绿灯时间25秒,左转20秒,直行和左转时间内个包含黄灯时间为3s。如表所示:
主干道绿灯45S 直行25S 左转20S 绿灯22S 黄灯3S 绿灯17S 黄灯3S 表1-1 交通灯控制器状态转换表
本次设计的总体框图如图所示。
图1-1总体框图
1.3实现方法
本次利用Verilog HDL语言描述交通控制器,采用时序逻辑设计,实现数码管显示当倒计时秒数。通过状态机计数法,实现设计所要求的交通灯控制及时间显示。
设计原理
2.1 总体电路设计
图2-1 总体电路图
2.2 控制器模块设计
根据交通灯显示有4种状态,可以采用CASE语句设置选择4种状态。设置3个输入:CLK(时钟脉冲)、SB(直行传感器)、SM(左转传感器)。具体模块如图所示:
图2-2控制器模块
程序实现如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY JTDKZ IS
PORT(CLK,SM,SB: IN STD_LOGIC;
MR,MY,MG,BR,BY,BG: OUT STD_LOGIC);
END JTDKZ;
ARCHITECTURE ART OF JTDKZ IS
TYPE STATE_TYPE IS(A,B,C,D);
SIGNAL STATE:STATE_TYPE;
BEGIN
CNT:PROCESS(CLK) IS
VARIABLE S:INTEGER RANGE 0 TO 25;
VARIABLE CLR,EN:BIT;
BEGIN
IF(CLKEVENT AND CLK=1)THEN
IF CLR=0THEN
S:=0;
ELSIF EN=0 THEN
S:=S;
ELSE
S:=S+1;
END IF;
CASE STATE IS
WHEN A=MR=0;MY=0;MG=1;
BR=1;BY=0;BG=0;
IF(SB AND SM)=1THEN
IF S=25 THEN
STATE=B;CLR:=0;EN:=0;
ELSE
STATE=A;CLR:=1;EN:=1;
END IF;
ELSIF(SB AND (NOT SM))=1THEN
STATE=B;CLR:=0;EN:=0;
ELSE
STATE=A;CLR:=1;EN:=1;
END IF;
WHEN B=MR=0;MY=1;MG=0;
BR=1;BY=0;BG=0;
IF S=3 THEN
STATE=C;CLR:=0;EN:=0;
ELSE
STATE=B;CLR:=1;EN:=1;
END IF;
WHEN C=MR=1;MY=0;MG=0;
BR=0;BY=0;BG=1;
IF(SM AND SB)=1THEN
IF S=20 THEN
S
文档评论(0)