交通灯VHDL课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《电子设计自动化(EDA)技术》课程实训报告
题目: 交通信号控制器VHDL设
计
** 姓名:
院技术学应院系:用
业:电子信息工程(仪器仪表)专学号: ************ 坤指导教师:徐正
目录
1 课程设计题目、内容与要求…………………………………4页
设计题目…………………………………………………4页
设计内容…………………………………………………4页
具体要求…………………………………………………4页
2 系统设计………………………………………………………5页设计思路…………………………………………………5页
系统原理…………………………………………………5页
3 系统实现………………………………………………………5页 VHDL源程序的具体程序和说明………………………5页
交通信号控制器程序中使用到得信号及其对应的管脚…7页
4 系统仿真………………………………………………………7页
5 硬件验证(操作)说明………………………………………7页
页8…………………………………………………………总结6 7 参考书目……………………………………………………8页
交通灯控制器
周晓
重庆三峡学院应用技术学院电子信息工程(仪器仪表)2008级重庆万州 404000
摘要基于VHDL的交通灯控制器设计,芯片采用ALTERA公司的ACEX1K 系列的
EP1K10TC100-3,使用硬件描述语言 VHDL进行描述,对交通灯进行模块化,在VHDL编程环境Quartus II下编译通过。此报告对该设计的思想原理,详细程序和引脚配置以及波形仿真进行了详细的阐述。
关键词: VHDL 模块化交通灯设计
1 课程设计题目、内容与要求
设计题目
交通信号控制器VHDL设计
设计内容
交通信号控制器的VHDL源程序;
交通信号控制器的仿真波形;
交通信号控制器的硬件测试结果。
具体要求
设计一个交通信号控制器。
交通信号控制器原理框图如下图所示。.
模拟场景图:
2 系统设计设计思路源程序代码→对程序进行全程编译→查资料写出交通信号控制器的VHDL选择课程设计题目→时序仿真→引脚设置和下载→硬件测试系统原理
编写程序实现交通信号控制器以下功能:用VHDL秒黄灯亮的间隔时间;)交通灯从绿变红时,有51()交通灯红变绿是直接进行的,没有间隔时间;(230秒3)主干道上的绿灯时间为50秒,支干道的绿灯时间为(
的时钟信号;1HZ clk为标准的编写程序实现交通信号控制器的端口控制信号。其中,用VHDL为紧急情况信号,负责紧急情况的处理,当紧急情况发生时,南北主干道和东西为复位信号;SPCR 支干道均显示红灯。;,50s时,南北方向亮绿灯,东西方向亮红灯S0。当状态为S0,S1,S2,S3个状态4该程序定义了.
当为状态为S1时,南北方向亮黄灯,东西方向亮红,5s ;当状态为S2时,南北方向亮红灯,东西方向绿灯,30s;当状态为S3时,南北方向亮红灯,东西方向黄灯,5s;程序还设计了一个紧急信号情况,当遭遇紧急情况时,主干道和支干道都亮红灯。
3 系统实现
交通灯控制器 VHDL源程序的具体程序和说明
LIBRARY IEEE;
USE ;
ENTITY TRAFFIC2 IS
PORT (CLK,R,SPC: IN STD_LOGIC; --时钟、复位、特殊情况 LIGHT: OUT STD_LOGIC_VECTOR(5 DOWNTO 0);
--light:G1,R1,Y1,G2,R2,Y2;
Q1,Q2 : OUT INTEGER RANGE 0 TO 55);
END TRAFFIC2 ;
ARCHITECTURE behav OF TRAFFIC2 IS
TYPE STATES IS (S0,S1,S2,S3); --定义枚举
SIGNAL STATE : STATES ;
SIGNAL T1,T2: INTEGER RANGE 0 TO 55;
BEGIN
P1: PROCESS (CLK,STATE)
BEGIN
IF R='1'THEN STATE<=S0;T1<=50;T2<=55; --复位
ELSIF SPC='1' THEN LIGHT<=010; --特殊情况亮红灯
ELSIF CLK'EVENT AND CLK='1' THEN
CASE STATE IS
--states为s0时,南北方向亮绿灯,东西方向亮红灯,50s
WHEN S0=> LIGHT<=@010;
T1<=T1-1;T2<=T2-1;
Q1<=T1;Q2<=T2;
IF T1=0 THEN
STATE<=S1;T1<=5;T2<=5;
END IF;
--states为s1时,南北方向亮黄灯,东西方向亮红,5s
WHEN S1=> LIGHT<=010;
T1<=T1-1;T2<=T2-1;
Q1<=T1;Q2<=T2;
IF T1=0 THEN
STATE<=S2;T1<=35;T2<=30;
END IF;
--states为s2时,南北方向亮红灯,东西方向绿灯,30s
WHEN S2=> LIGHT<=100;
T1<=T1-1;T2<=T2-1;
Q1<=T1;Q2<=T2;
IF T2=0 THEN
STATE<=S3;T1<=5;T2<=5;
END IF;
--states为s3时,南北方向亮红灯,东西方向黄灯,5s
WHEN S3=> LIGHT<=001;
T1<=T1-1;T2<=T2-1;
Q1<=T1;Q2<=T2;