




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西华大学课程设计说明书目录1 EDA技术发展及介绍22 整体设计论述33 单元模块设计与仿真43.1时钟分频模块43.2交通灯控制及计时模块53.3扫描显示译码模块63.4顶层文件的编写84 硬件实验方案及实验结果94.1硬件实验方案94.2实验结果105收获和体会11附录(程序代码)12参考文献17摘要:本设计是基于EDA技术的交通灯控制器的设计。该设计通过用数字信号自动控制十字路口交通灯状态转换的方法,指挥各种车辆和行人安全通行,实现十字路口交通管理的自动化。在本次课程设计里,用VHDL语言为基础来实现设计交通控制信号灯,在Quartus II软件完成其仿真,实现主干和枝干道上的红绿灯转换。关键词:交通信号灯, VHDL, 仿真Abstract:This design is based on EDA technology, traffic light controller. The design with digital signal control intersections by traffic light state transition method, the command of various vehicles and pedestrians safe passage, a crossroads of traffic management to achieve automation. In this curriculum design, the use of VHDL language-based approach to design traffic control signal, the Quartus II software to complete the simulation, realization of the trunk and branches Road to the traffic lights change.Keywords:Street-traffic control lights, VHDL , Simulation1 EDA技术发展及介绍EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD、CAM、CAT和CAE的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言HDL完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。可利用HDL程序来描述所希望的电路系统,规定器件结构特征和电路的行为方式;然后利用综合器和适配器将此程序编程能控制FPGA和CPLD内部结构,并实现相应逻辑功能的的门级或更底层的结构网表文件或下载文件。就FPGA/CPLD开发来说,比较常用和的HDL有ABEL-HDL、AHDL和VHDL 2 整体设计论述根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如下图所示的交通信号灯控制器的系统框图。 CLK 时钟分频模块 1kHZ 1kHZ 1HZ CAR 交通灯控制及计时模块 支干道车辆检测 扫描显示译码模块 1kHZ 数码管及LED信号 数码管段码 数码管位码 LED显示 根据以上设计思路,可以得到如下的顶层文件原理图顶层文件的实体图: 3 单元模块设计与仿真3.1时钟分频模块 系统的动态扫描需要1HZ的脉冲,而系统时钟计时模块需要1HZ的脉冲。分频模块主要为系统提供所需的时钟计时脉冲。该模块将1kHZ的脉冲信号进行分频,产生1S的方波,作为系统时钟计时信号。其实体模块如下: 将END TIME改为5S CLK采用系统的1KHZ的时钟脉冲仿真波形如下: 可以看到能够得到1s的时钟脉冲3.2交通灯控制及计时模块 控制模块根据外部输入信号和计时模块产生的输出信号,产生系统的状态机,控制其他部分协调工作。计时模块用来设定主干道和支干道计时器的初值,并为扫描显示译码模块提供倒计时时间。控制及计时模块采用状态机进行设计,可以定义出5种状态,分别为S0:主干道绿灯,支干道红灯且没有车辆行驶;S1:主干道绿灯,支干道红灯或支干道有车辆驶入;S2:主干道黄灯,支干道红灯;S3:主干道红灯,支干道绿灯;S4:主干道红灯,支干道黄灯。利用CASE语句定义状态的转换方式及时间的变换方式,达到主干道绿灯亮45秒,支干道绿灯亮25秒,黄灯亮5秒的设计要求。其实体模块如下: CAR为支干道车辆检测开关在支干道有车的情况下,模块可以进行减计时CLK1S为1S的时钟脉冲TIME1H、TIME1L、TIME2H、TIME2L分别为主干道时钟高位、主干道时钟低位、支干道时钟高位、支干道时钟低位LED为LED灯发光情况,分别为主干道绿灯、主干道黄灯、主干道红灯、支干道绿灯、主干道黄灯、主干道红灯Count的总的系统时间,用来改变系统的状态仿真波形如下:通过仿真可以看到:当主干道绿灯,支干道红灯时,主干道倒计时高位置数0100,低位置数0101;支干道高位置数0101,低位置数0000;当主干道黄灯,支干道红灯时,主干道黄灯倒计时置数0101;支干道继续刚才的减计数;当主干道红灯,支干道绿灯时,主干道倒计时高位置数0011,低位置数0000;支干道高位置数0010,低位置数0101;当主干道红灯,支干道黄灯时,支干道黄灯倒计时置数0101;主干道继续刚才的减计数。在S4状态结束后,自动跳回到S0状态,继续判断支干道是否有车行驶,若有车行驶,则跳转到S1状态,给高、低位置数,继续进行减计时。系统根据COUNT的变化自动在各状态下跳变,当count为45时,跳变到S2状态;当count为50时,跳变到S3状态;当count为75时,跳变到S4状态;当count为80时,若支干道没有车跳变到S0状态,有车则跳变到S1状态。3.3扫描显示译码模块扫描显示译码模块可以根据控制信号,驱动交通信号灯以及倒计时数码管的显示,其中数码管的显示采用动态扫描显示。其实体模块如下: CLK为1KHZ的系统时钟脉冲 CLK1S为1S时钟脉冲CAR为支干道车辆检测开关 SEL为数码管位码扫描SEG为数码管段码TIME1H、TIME1L、TIME2H、TIME2L为数码管计时的时间,由控制及计时模块为其赋值仿真波形如下:通过仿真可以看到:给CLK一个时钟脉冲,数码管的位码随CLK时钟的变化而进行扫描,由于CLK的频率较高,人的眼睛会有短暂的视觉停留,所以会看到4个数码管都在显示时间。3.4顶层文件的编写将以上各个单元模块仿真成功后,再进行顶层文件的编写。将各个单元模块的变量赋值给顶层文件,从而将各个单元模块连接起来,统一调配。得到顶层文件的实体模块: CLK为1KHZ系统时钟脉冲 CAR为支干道车辆行驶情况,高电平为有车行驶,低电平为无车行驶 LED为交通灯发光情况SEL为数码管位码扫描 SEG为数码管段码仿真波形如下:仿真后可以得到最终的结果:开始时,支干道没有车辆行驶。主干道处于常通行状态,支干道处于禁止状态;当支干道有车来时,主干道亮绿灯,经行45秒倒计时,支干道亮红灯,经行50秒倒计时;主干道45秒倒计时结束后跳变到黄灯,进行5秒倒计时,支干道继续亮红灯,进行倒计时;主干道5秒倒计时结束后跳变到红灯,经行30秒倒计时,支干道跳变到绿灯,进行25秒倒计时;支干道25秒倒计时结束后跳变到黄灯,进行5秒倒计时,主干道继续亮红灯,进行倒计时;支干道5秒倒计时结束后,判断支干道是否有车,若有车跳变到S1状态,没有车跳变到S0状态4 硬件实验方案及实验结果 将程序进行编译后,就可以把管脚绑定后把程序下载到实验板上进行调试了。4.1硬件实验方案管脚绑定如下所示TOLocationI/O Bank1CLKPIN_15232CARPIN_16033SEG0PIN_17534SEG1PIN_17635SEG2PIN_17736SEG3PIN_17837SEG4PIN_17938SEG5PIN_18039SEG6PIN_1110SEL0PIN_3111SEL1PIN_4112SEL2PIN_5113LED0PIN_170314LED1PIN_173315LED2PIN_174316LED3PIN_165317LED4PIN_166318LED5PIN_1673注:CLK绑定时钟1KHZ CAR绑定DK4LED0绑定LED6;-支干道红灯 LED1绑定LED7;-支干道黄灯LED2绑定LED8;-支干道绿灯 LED3绑定LED1;-主干道红灯LED4绑定LED2;-主干道黄灯 LED5绑定LED3;-主干道绿灯SEL0绑定LI0; SEL1绑定LI1; SEL2绑定LI2。SEG0绑定G8; SEG1绑定F8; SEG2绑定E8;SEG3绑定D8; SEG4绑定C8; SEG5绑定B8;SEG6绑定A8;将管脚按上图绑定后就可以下载到实验板上进行调试了4.2实验结果将程序下载到实验板后,CAR置于低电平后,可以看到LED灯的显示情况为主干道亮绿灯,支干道亮红灯,主干道数码管显示45秒,支干道数码管显示50秒。但支干道有车时,把CAR置于高电平,可以看到主、支干道的数码管开始倒计时;主干道倒计时结束后再进行5秒倒计时,并且交通灯变为黄灯;当主干道倒计时结束后,主干道数码管显示30,支干道数码管显示25,主干道变为红灯,支干道变为绿灯,继续进行倒计时;支干道倒计时结束后再经行5秒倒计时,交通灯变为黄灯;支干道倒计时结束后再回到初始状态。从实验板上可以看出硬件测试下的效果达到了设计的要求,能够实现交通信号灯控制器的基本功能。但是,由于实验板的系统时钟不稳定,导致数码管的扫描有时会出现闪动的现象,在更换了实验板后可以看出,数码管的扫描基本稳定,在视觉上不会出现闪动的情况。或者可以将系统的时钟频率改为2KHZ,更改分频模块后再进行编译下载,这样可以加快数码管扫描的速度,从而达到消除视觉上闪动的现象。5 收获和体会短短十天是EDA课程设计很块就结束了,虽然在之前的学习过程中还存在着没有弄懂的问题,但是通过这次设计,进一步加深了对EDA的了解,让我对它有了更加浓厚的兴趣。在拿到题目后,首先进行了单元模块的设计,将每一个单元模块设计完成后再经行仿真,仿真成功后就可以进行顶层文件的编写了,在顶层文件的编写过程中遇到了一些问题,特别是各模块之间的连接,以及信号的定义,总是有错误。有的时候信号的定义容易出现混淆,在反复的修改过后,顶层文件终于能够编译成功了。在设计的过程中还应该多联系下实际情况,要了解实际情况下交通信号灯的工作情况,才能更好的完成此次的课程设计。在今后的工作和学习中,我们不能仅仅把目光停留在课本上,要多理论联系实际。有的时候,理论上是正确的东西放到现实中去,可能由于种种因素的制约,并不能达到实际的效果,还需要我们进行相应的修改才能完成要求。这次的课程设计使我巩固了以前学习到的知识,还使我掌握了以前没有掌握的知识,同时锻炼了自己的能力。附录(程序代码)时钟分频模块:LILIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fp ISPORT(clk:IN STD_LOGIC; CLK1S:OUT STD_LOGIC);END fp;ARCHITECTURE one OF fp IS SIGNAL N: STD_LOGIC_VECTOR(9 DOWNTO 0); BEGINPROCESS (clk) BEGIN IF clkEVENT AND clk=1 THEN N=N+1; END IF;END PROCESS;CLK1S=N(9);END one;交通灯控制及计时模块:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY kz ISPORT (CLK1S,car:IN STD_LOGIC;-1S脉冲,支干道车辆检测 TIME1H,TIME1L:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);-主干道计时 TIME2H,TIME2L:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);-支干道计时 count:OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -系统总计时 led:OUT STD_LOGIC_VECTOR(5 DOWNTO 0); -交通灯显示 END kz;ARCHITECTURE one OF kz IS TYPE states IS (s0, s1, s2,s3, s4); -状态初始化 SIGNAL current_state,next_state : states; SIGNAL c:STD_LOGIC_VECTOR(6 DOWNTO 0);BEGINREG:PROCESS(CLK1S,car,current_state,c)BEGINIF car = 0 THEN current_state = s0 ; c=0000000; ELSE IF CLK1SEVENT AND CLK1S = 1 THEN -支干道有车开始计数 c = c +1; current_state LED = 100001; -支干道无车不减计时 TIME1H=0100;TIME1L=0101; TIME2H=0101;TIME2L=0000; IF car = 1 THEN next_state = s1; ELSE next_state LED = 100001; -主干道绿灯,支干道红灯 IF c=0101100 THEN next_state = s2; ELSE next_state LED = 010001; -主干道黄灯,支干道红灯 IF c=0110001 THEN next_state = s3; ELSE next_state LED = 001100; -主干道红灯,支干道绿灯 IF c=1001010 THEN next_state = s4; ELSE next_state LED = 001010; -主干道红灯,支干道黄灯 IF c=1001111 THEN next_state = s1; ELSE next_state LED = 100001;next_state = s0;END CASE;IF c=0101101 THEN TIME1H=0000;TIME1L=0101;-系统时间为45,主干道黄灯计时5秒END IF;IF c=0110010 THEN TIME1H=0011;TIME1L=0000;TIME2H=0010;TIME2L=0101;-系统时间为50,支干道计时30秒。支干道计时25秒END IF;IF c=1001011 THEN TIME2H=0000;TIME2L=0101;-系统时间为75,支干道黄灯计时5秒END IF;IF c=1010000 THEN TIME1H=0100;TIME1L=0101;TIME2H=0101;TIME2L=0000;-系统时间为80,主干道计时45,支干道计时50END IF;IF c=1010000 THEN c=0000000;-系统时间清零END IF;END PROCESS REG;count = c;END one;扫描显示译码模块:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY xs IS PORT(clk,CLK1S,car:IN STD_LOGIC; TIME1H,TIME1L:IN STD_LOGIC_VECTOR(3 DOWNTO 0); -主干道置数 TIME2H,TIME2L:IN STD_LOGIC_VECTOR(3 DOWNTO 0); -支干道置数 count:IN STD_LOGIC_VECTOR(6 DOWNTO 0); -计数信号 sel:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);-数码管位码 seg:OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-数码管段码END xs;ARCHITECTURE one OF xs IS SIGNAL num:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL numsel:STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL numseg:STD_LOGIC_VECTOR(6 DOWNTO 0);SIGNAL Q1,Q2,Q3,Q4:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINSM:PROCESS (clk,num,numsel) -扫描 BEGIN IF clkEVENT AND clk=1 THEN numsel=numsel+1; IF numsel=011 THEN numselnumnumnumnumNULL; END CASE;END PROCESS WX;ZS:PROCESS(CLK1S,car,Q1,Q2,Q3,Q4,num,TIME1H,TIME1L,TIME2H,TIME2L)-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年锂能源行业锂能源应用技术前景报告
- 2025年旅游行业在线旅游平台发展前景分析报告
- 2025年会展行业虚拟会展平台市场前景展望报告
- 大渡口区2025二季度重庆大渡口事业单位招聘8人笔试历年参考题库附带答案详解
- 四川省2025四川省民政厅直属事业单位考核招聘专业技术人员4人笔试历年参考题库附带答案详解
- 南京市2025江苏南京技师学院招聘工作人员26人笔试历年参考题库附带答案详解
- 东莞市2025广东东莞广播电视台招聘8人笔试历年参考题库附带答案详解
- 2025陕西宝石花油气技术服务有限公司宝鸡分公司招聘(310人)笔试参考题库附带答案详解
- 2025湖南怀化市产业投资集团有限公司校园招聘15人笔试参考题库附带答案详解
- 2025广东汕尾市水务集团有限公司招聘人员8人笔试参考题库附带答案详解
- 特种作业电工安全培训
- DB37-T 1933-2022 氯碱安全生产技术规范
- 校园传染病防控班主任培训
- 《大肠癌的治疗进展》课件
- GB/T 15268-2024桑蚕鲜茧
- GYK运行记录智能分析系统研究
- 计划生育服务站劳动合同
- GB/T 44757-2024钛及钛合金阳极氧化膜
- 红领巾爱祖国 星星火炬耀成长主题班会2
- 中国地级市经纬度-精确版
- 07SG111-1 建筑结构加固施工图设计表示方法
评论
0/150
提交评论