交通灯拔控制器设计.ppt

上传人:xt****7 文档编号:4404294 上传时间:2020-01-07 格式:PPT 页数:26 大小:705.36KB
返回 下载 相关 举报
交通灯拔控制器设计.ppt_第1页
第1页 / 共26页
交通灯拔控制器设计.ppt_第2页
第2页 / 共26页
交通灯拔控制器设计.ppt_第3页
第3页 / 共26页
点击查看更多>>
资源描述
交通灯控制器设计 应用场合 繁忙的高速路与较少使用的农场路相交设计要求 探测器沿着农场路放置 只要有车辆等待着穿越十字路口 就发出信号C 交通灯按照如下方式操作 若农场路无车辆 则在高速路保持绿灯 在探测农场路有车辆 高速路上的交通灯应由绿到黄 再到红 并允许农场路方向灯变绿 绿灯亮一段时间 由绿变黄再到红 这时即使还有车辆穿越高速路 高速路的绿灯也要亮一段时间 假设 把两个黄灯时间设相同5S将高速绿灯最短时间和农场路绿灯最长时间设置为相同10S仅需一个计数器 能对两个时间间隔发生信号 一个间隔短 一个间隔长 理解问题 确定输入 输出 控制器的状态配置输入信号Reset 将控制器置于初始状态clk 系统时钟信号C 探测农场路上两个方向的车辆输出信号HG HY HR 分别点亮高速路上的绿灯 黄灯 红灯FG FY FR 分别点亮农场路上的绿灯 黄灯 红灯转换过程时间显示状态按照输出组合唯一原则 仅有4种不同的输出 因此控制器有4个不同的状态HG 高速路亮绿灯 农场路亮红灯 HY 高速路亮黄灯 农场路亮红灯 FG 农场路亮绿灯 高速路亮红灯 FY 农场路亮黄灯 高速路亮红灯 基于Spartan 3E开发板交通灯控制器设计 为方便实验 探测器由按键代替 当按下FPGA开发板上按键时 产生的触发信号相当于检测到农场路上有车 由于FPGA板上led资源有限 农场和高速路上的交通灯由两个LED管代替 HG状态显示00 HY状态显示01 FG状态显示10 FY状态显示11Spartan 3E开发板有两个7段数码管 显示状态为转换过程剩余的时间 系统模块图 硬件电路 控制器有限状态机将Reset CLK TL 相对长时间已到点 和TS 相对短的时间已经到点 以及经过同步之后的C people 信号等作为输入 并产生ST 复位定时器 开始对长和短时间间隔进行计数 信号定时器子系统将Reset CLK和ST信号作为输入 产生TL和TS为输出车辆传感器子系统具有一个异步输入C 而它的输出为C同步信号交通灯译码器将编码后的交通灯控制信号转换成不同的信号 分别驱动独立的交通灯 问题分解 车辆传感器输出译码和交通灯显示定时器 短时间间隔TS和长时间间隔TL定时器 控制器的有限状态机次态和输出组合逻辑状态寄存器 n个状态位 其中n由状态编码决定 车辆探测器 嵌在路上的双掷开关用来判断是否有车辆到达因为车辆可在任意时刻到达 车辆探测器是异步工作的 为了将车辆识别信号同步化 该信号必须通过一个同步触发器 该触发器由系统时钟控制 车辆探测器 sensor v模块 输入信号为clk reset n people 其中people信号来自按键 输出信号为people valid 表示检测信号有效 键盘检测原理 当按键按下时 输入电平由高变低 按键松开后 输入电平有低变高 如此会产生一个下降沿和一个上升沿 只要扑捉到这两个沿 就可以确定按键按下 键盘防抖原理 在按键被按下的瞬间 由于物理上的原因 导致按键在被按键的瞬间的过程中其实是处于高电平和低电平之间进行抖动 加上本实验的时钟频率很高 容易产生信号采集错误 导致检测失败 无法得到正确的结果 若要正确防抖 需要在检测到按键上升沿后延迟一小段信号在进行上升沿和下降沿检测 实验三按键检测实验 交通灯译码器 使用2 4译码器 交通灯状态显示模块 segled v Spartan 3E开发板上提供两个LED七段数码管 可以显示数字 开发板上采用的是共阴的 即 低点亮 在Spartan 3E开发板上LED数码管不是直接连在FPGA上 而是通过74HC595的8bit的串转并芯片连接到FPGA上的 这样连接的目的是可以更有效的使用FPGA的IO管脚 然后两个数码管再通过选通管脚选通 农场和高速路上的交通灯4种状态由两个LED管代替 HG状态显示00 HY状态显示01 FG状态显示10 FY状态显示00 交通灯状态显示模块 segled v 输入信号有 clk reset n traffic state data sel temp 其中traffic state为信号灯 直接驱动LED data sel temp为送到两位数码中要显示的时间模块输出信号分别为 led b0 ledb1 led data led oe n led rck led srck led b0 led b1作为选通数码管信号 高电平有效 led data 串行输入数据信号led oe n 选通74HC595 低电平有效 led rck 串行数据转并信号led srck 数据串行输入74HC595移位信号 led1 led2 显示红绿黄灯 间隔定时器 设计的目的是在ST信号进行设置之后 产生TL和TS信号 使用一个计数器和外部译码器逻辑 当ST信号为真时 计数器清零 而当计数器的计数值到达一个适当的阈值时 外部逻辑就使得TL或TS信号为真 假设计数到0111时 TS为真 当到达1111时 TL为真 时钟分频与计时模块 timer v 输入信号clk reset n ST traffic state 其中ST为计数器复位后重新启动信号 traffic state为当前显示状态输出信号为TS TL data sel temp 当TS为1 表示短时间计时已到 当TL为1 表示长时间计时已到 data sel temp表示定时器剩余的定时时间值 用于显示 时钟分频与计时模块 timer v purpose Dividethe66 666667MHZclkto1HZ generatetheTSandTLsignal usedforcontrollingthedisplaytimeoftrafficlightmoduletimer TS TL ST clk reset n traffic state data sel temp outputTS outputTL output 7 0 data sel temp reg 7 0 data sel temp inputST inputclk inputreset n input 1 0 traffic state reg 3 0 value reg 24 0 counter regclk1hz wiretime10s wiretime5s 时钟分频与计时模块 timer v always posedgeclkornegedgereset n beginif reset n 1 b0 begincounter 25 d0 clk1hz 1 endelseif counter 25 d33333333 counter counter 1 elsebegincounter 25 d0 clk1hz clk1hz endend Dividethe66 666667MHZclkto1HZ reg 7 0 data sel temp1 根据状态转换设定定时时间always negedgereset norposedgeclk beginif reset n 1 b0 data sel temp1 8 h10 elseif time10s delay data sel temp1 8 h10 elseif time5s delay data sel temp1 8 h05 elsedata sel temp1 8 h00 endregST delay 对输入ST信号进行延迟两个周期always negedgereset norposedgeclk beginif reset n 1 b0 ST delay 0 elseST delay ST endregST delay1 always negedgereset norposedgeclk beginif reset n 1 b0 ST delay1 0 elseST delay1 ST delay end always negedgereset norposedgeclk1hzorposedgeST delay1 beginif reset n 1 b0 data sel temp 8 h10 elseif ST delay1 定时器启动信号 根据状态设定初始值data sel temp data sel temp1 elseif data sel temp 8 h00 data sel temp 8 h00 elseif data sel temp 8 h10 data sel temp 8 h10 8 h07 elsedata sel temp data sel temp 1 b1 end 原因对两个数码管显示为16进制 显示10H后 下一个为09Hendmodule 交通灯状态机的设计 其中people valid是作为系统检测到的信号C 即按键 有效的提示 提供给FSM模块作为输入 TS 相对短的时间已经到点 TL 相对长的时间已经到点 该系统的核心部分 为整个系统逻辑功能实现的模块 是一有限状态控制器 输入信号为clk reset n people valid TS TL 输出信号 traffic state 1 0 即交通灯的工作状态 作为显示模块和定时模块的输入 ST 复位定时器 并开始对长和短时间间隔进行计数 交通灯一切换状态 立刻置ST为高电平 是计时器复位并重新计时 交通灯状态机的设计 使用外部计数器后的米利型状态图尝试 状态机说明 系统启动对计数器进行复位 并设置长计数时间到 TL 1 当检测到people C 信号 将ST置1对计数器进行复位 HG转换为HY 当计数到短时间间隔 置ST为1开始进行长时间计数 转换到FG 若TL为1或people C 0 退出到FY 最后若TS为1 短时间计时到 切换到HG 并且ST置1 对计时器复位并计数到TL 次态逻辑和输出 有限状态机具有6个输入 Reset C TL TS以及当前状态位 Q1和Q0 有限状态机具有7个输出 2个次态位P1 P0 ST信号 H1 0 编码后的高速路交通灯信号 和F1 0 编码后的农场路交通灯信号 采用随机状态编码 HG 00 HY 10 FG 01 FY 11 将这些状态填充至状态表 就能得到编码后的状态表 就可产生次态逻辑和输出逻辑 由状态图到状态表 交通灯状态机的设计 purpose Finitestatemachineusedforimplementingthelogicoftrafficlightmodulefsm ctrl people valid clk reset n TS TL ST traffic state Inputpeople valid inputTS inputTL inputclk inputreset n outputST output 1 0 traffic state reg 1 0 traffic state reg 1 0 fsm next state regST regpeople check parameterHG 2 b00 HY 2 b01 FG 2 b10 FY 2 b11 trafficlightstatecontrolalways posedgeclkornegedgereset n beginif reset n 1 b0 traffic state HG elsetraffic state fsm next state endalways traffic stateorTLorTSorpeople check begincase traffic state HG if people checkendcase endcaseend endalways wireST temp assignST temp traffic state HG people checkisusedforholdthe informationpeople validdetecedbysensorendendmodule 顶层模块traffic top v 输入信号有 clk reset n peopleclk 系统时钟 频率为66 666667MHZ reset n 系统异步复位信号 将控制器置于初始状态 低电平有效 People 检测信号输入 由外部按键按下产生一低电平信号提供 顶层模块traffic top v moduletraffic top clk reset n people led data led oe n led srck led rck led b0 led b1 led1 led2 inputclk reset n people outputled data led oe n led srck led rck led b0 led b1 led1 led2 wirepeople valid TL TS ST wire 1 0 traffic state wire 7 0 data sel temp fsm ctrlU1 clk clk reset n reset n people valid people valid traffic state traffic state TS TS TL TL ST ST SegledU2 clk clk traffic state traffic state reset n reset n led data led data led oe n led oe n led srck led srck led rck led rck led b0 led b0 led b1 led b1 led1 led1 led2 led2 data sel temp data sel temp TimerU3 TS TS TL TL ST ST clk clk reset n reset n traffic state traffic state data sel temp data sel temp sensorU4 clk clk reset n reset n people people people valid people valid endmodule
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!