基于eda技术的交通灯设计内容摘要:
的编译核心支持Altera的FLEX 10K、FLEX 8K、MAX9000、MAX7000、FLASHlogic、MAX5000、Classic系列可编程逻辑器件; 2. MaxPlus II的设计输入、处理与校验功能一起提供了全集成化的一套可编程逻辑开发工具,可加快动态调试,缩短开发周期; 3. MaxPlus II支持各种HDL设计输入,包括VHDL、Verilog和Altera的AHDL; 4. MaxPlus II可与其他工业标准设计输入、综合与校验工具链接。 与CAE工具的接口符合EDIF200和20参数化模块库( LPM )、Verilog、VHDL及其它标准。 设计者可使用Altera或标准CAE设计输入工具去建立逻辑设计,使用MaxPlus II编译器对Altera器件设计进行编译,并使用Altera或其它CAE校验工具进行器件或板级仿真。 MaxPlus II支持与Synopsys、Viewlogic、Mentor Graphics、Cadence、Exemplar、Data I/O、Intergraph、Minc、OrCAD等公司提供的工具接口。 利用MaxPlus II软件平台进行设统设计。 具体的设计流程图如图12所示:设计要求系统产品设计输入设计编译设计修改设计校验器件编程在线校验图12 MaxPlus II软件的设计流程图城市中常见的大型十字路口如图21所示。 图21 十字路口示意图 一般情况下,当汽车行驶至十字交通路口时,有3种选择: 向前,向左转弯,向右转弯。 根据我国的交通规则规定,汽车是靠右行驶,向右拐弯只要走弧形的支干道即可,不需受十字交通灯的束缚。 因此,本文主要考虑前行和左转这两种情况。 十字路口交通灯负责控制各走向红绿灯的状态及转换,并且各状态之间有一定的时间过渡。 同时,东西南北每条干道上都为人行横道设置了红绿灯,提醒行人在安全时刻穿越道路以保证行人的安全。 交通灯控制系统的功能交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。 在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,本系统就是基于此目的而开发的。 交通灯控制系统设计选择城市路口交通信号控制系统大体上分为三种类型: 定周期的信号机、多时段且具有无电缆协调功能的微电脑型信号机以及联网式自适应多相位智能型信号机。 具体采用哪种类型, 应根据其应用场合及特点加以确定。 其中, 第一种类型以其成本低,设计简单, 安装及维护方便等特点得到了广泛应用。 交通灯控制系统设计要求1.能显示十字路口东西、南北两个方向的红、黄、绿灯的指示状态,用两组红、黄、绿三色灯作为两个方向的红、黄、绿灯;2.南北向为主干道,每次通行时间为50S,东西向为支干道,每次通行时间为30S;3.能实现正常的倒计时功能,用两组数码管作为东西、南北向的倒计时显示。 其中,黄灯:5S。 4.能实现特殊状态的功能。 按下SP键后,能实现以下特殊功能:(1)显示倒计时的两组数码管闪烁;(2)计数器停止计数并保持在原来的状态;(3)东西、南北路口均显示红灯状态;(4)特殊状态解除后能继续计数;5. 能实现全清零功能。 按下reset键后,系统实现全清零,计数器由初状态计数,对应状态的指示灯亮;6. 用VHDL语言设计上述功能的交通灯控制器,并用层次化方法设计该电路;7. 仿真、验证设计的正确性。 交通灯控制系统的基本组成模块红 绿 黄主控制器显示器译码器置数器定时计数器特殊状态清零红 绿 黄图22 交通灯控制器原理框图交通灯控制器原理框图如图22所示,包括置数模块、计数模块、主控制器模块和译码器模块。 置数模块将交通灯的点亮时间预置到置数电路中,计数模块以秒为单位倒计时,当计数值减为零时,主控电路改变输出状态,电路进入下一个状态的倒计时。 其中,核心部分是主控制模块。 交通灯控制器状态根据要求,交通灯分四个状态,如下表21:表21 交通灯的四个状态 南北方向(主干道) 东西方向(次干道)状态绿红黄绿红黄1( st0 )1000102( st1 )0010103( st2 )0101004( st3 )010001有一条主干道和一条支干道的汇合点形成的十字路口,为确保车辆安全,迅速通行,在干道和支道的入口设置了红、绿、黄3色信号灯。 交通灯控制器功能描述及设计方法通过两组交通灯来模拟控制东西、南北两条通道上的车辆通行,所有功能在实验操作平台上进行模拟通过,根据原理其主要功能如图31:图31 系统结构图其中ledcontrol部分为控制器模块,ledshhow部分为译码器模块。 控制器包括指数模块、计数模块和主控制器模块。 置数模块将交通灯的点亮时间预置到置数电路中,计数模块以秒为单位倒计时,当计数值减为零时,主控电路改变输出状态,电路进入下一个状态的倒计时。 译码器模块将控制器模块的控制作用通过译码表现出来,即我们看到的交通灯。 最后上图最左边是系统输入,右边是系统输出。 交通灯控制器各模块的程序设计 下面是各功能模块的VHDL程序,文中只写出了它们的核心部分,各模块完整的程序在附录中给出。 控制部分的设计 控制模块是交通控制系统的核心部分,控制模块主要用于控制系统的时钟、计数值、循环周期判别和人工控制信号输入,并将计数值做相关的运算得到数码管的倒计时值,同时控制十字路口信号灯的亮、灭火闪烁。 如图32所示,reset是复位引脚;clk是时钟引脚,其值为分频器的输出时钟信号;urgen是紧急状态引脚;state[1..0]是状态引脚;sub,set1,set2是状态选择引脚。 statelabel:process(reset,clk)beginif reset=39。 139。 then count=0000000。 state=00。 elsif clk39。 event and clk=39。 139。 then if urgen=39。 039。 then count=count+1。 subtemp=39。 139。 else subtemp=39。 039。 end if。 if count=0 then state=00。 set1=39。 139。 set2=39。 139。 elsif count=25 then state=01。 set1=39。 139。 elsif count=30 then state=10。 set1=39。 139。 set2=39。 139。 elsif count=45 then state=11。 set2=39。 139。 elsif count=50 then count=0000000。 else set1=39。 039。 set2=39。 039。 end if。 end if。 end process statelabel。 图32 控制部分的图形 显示部分的设计 显示模块包括数码管动态扫描电路和译码显示电路,动态扫描电路用于选择需要显示的数码管,译码显示电路用于将输入的二进制信息转换为数码管显示编码。 如图33所示,clk是时钟引脚;urgen是紧急状态引脚;state[1..0]是状态引脚;sub,set1,set2是状态选择引脚,在sub为上升沿时,可以用set1和set2来选择调整交通灯的状态;r1,g1,y1,r2,g2,y2分别是主干道方向和次干道方向的红、绿、黄灯信号引脚;led1[7..0。基于eda技术的交通灯设计
相关推荐
基准信号图 2第二章 频率计测量频率的层次化设计方案 4 位十进制计数器模块4 位十进制计数器模块包含 4 个级联十进制计数器,用来对施加到时钟脉冲输入端的待测信号产生的脉冲进行计数,十进制计数器具有集束使能、清零控制和进位扩展输出的功能。 使能信号和清零信号由闸门控制模块的控制信号发生器所产生来对 4 个级联十进制计数器周期性的计数进行控制。 (1)十进制计数器元件的设计十进制计数器的程序如下
mweaver 8,Photoshop ,记事本等。 网页的兼容性与信息安全:由于是个人网站,所以源文件与源代码的不得不开放,这样也加强了个人网站的技术共享性。 但按照你设计时的对象,根据IE版本以及浏览器的不同,调整理想的效果,但是大部分出现问题的是JS\VB等代码,如果只是单纯静态图片,基本不会有很大的差别,尽量往W3C标准靠。 站点的发布:购买自己的空间域名,其实事先就应该购买的
河北劳动关系职业学院毕业论文 4 第 三 章 Flash 多媒体课件的设计与制作 Flash 多媒体课件的设计与制作是一个复杂的系统工程,涉及到方方面面的东西。 限于篇幅,这里以一个教学课件的开发为例,仅探讨如下三方面的思路和实现方法:课件制作流程、课件界面设计、课件交互功能的实现。 多媒体课件制作的流程 多媒体课件的开发通常包括以下几个步骤:分析目标、撰写脚本、准备素材、整合课件、反馈修改
冲选择不做介绍。 传输码 (或称线路码 )的结构将取决于实际信道特性和系统工作的条件。 通常,传输码的结构应具有下列主要特性: (1) 相应的基带信号无直流分量, 且低频分量少; (2) 便于从信号中提取定时信息; (3) 信号中高频分量尽量少, 以节省传输频带并减少码间串扰; (4) 不受信息源统计特性的影响, 即能适应于信息源的变化; (5) 具有内在的检错能力,传输码型应具有一定规律性,
%将原始信号做 FFT 变换 Pyy=y.*conj(y)。 %做功率谱分析 f=(0:(N/21))。 for i=1:N/21。 f(i)=f(i)*fs/N。 end。 figure(l)。 Plot(f, pyy(1:N/2))。 y=fft(yyl, N)。 Pyy=y.*conj(y)。 f=(0:(N/21))。 for i=1:N/21。 f(i)=f(i)*fs/N。 end
it12 bit11 bit10 bit9 bit8 MS Byte S S S S S 26 25 24 这是 16 位转化后得到的 16 位数据,存储在 DS18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 5 位为 0,只要将测到的数值乘于 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加 1 再乘于