推荐产品3推荐产品2推荐产品1
新闻内容News
光电光缆长治亨通光电成功中标山西省电力公司晶片出货量供应商台触控IC厂攻下大陆滩头堡 酝酿大反扑价格平台架构Xilinx 宣布提前发售量产SPARTAN-3A DSP器件部件编号外设Microchip推出增强型中档8位PIC单片机系列销量明年大中小iPad领衔平板电脑业 销量或是PlayBook的10倍产品台湾媒体首款支持UPnP的AV产品通过认证日本产业太阳能日本新能源角色重要 中国该向日本学习什么?求NXT 2和CP7设备各种技术资料,小弟刚刚进入SMT行业,急需提升专业技能知识,谢谢!中国标准智能打破国外企业垄断 我国推出首款智能存储卡

状态计数器脉冲基于FPGA的交通灯系统控制设计

1 系统概述

1.1 设计思想

基于FPGA的交通灯系统控制设计包括4大模块,分别为脉冲发生、状态定时、交通灯闪烁的控制、闪烁时间的控制,基本原理如图1所示。

1.jpg

1.2 总体工作情况

交通灯控制要求如表1所示。

该设计的交通灯控制分为6个状态。由于各状态持续时间不同,所以电路的核心控制部分是状态机和定时器,状态机在定时器触发下周期性循环,状态码控制6个灯以一定的规律变化。变化情况如图2所示。

2.jpg



系统脉冲由FPGA开发板晶振经过分频电路实现。状态定时由74190可逆十进制计数器和T’触发器实现,只要置数合理,翻转信号到位,就可以使电路在东西(I)、南北(J)两个控制状态间翻转。红、黄、绿灯的闪烁由7485数字比较器和组合逻辑控制,其中7485数字比较器用于比较计数器当前持续状态和所需要的状态全部时间,并做出相应的变化。组合逻辑控制由AHDL文件编写真值表实现。时间显示由AHDL文件编写真值表实现,输入正确的逻辑,七段译码电路即能得到正确的时间显示。

1.3 各功能的组成

整个电路可以分为4大部分,包括脉冲发生、状态定时、时间显示和数字比较一组合逻辑控制。

1.3.1 脉冲发生

脉冲发生器为整个系统提供驱动,将输入端分配给FPGA实验板的PIN55引脚,则会由实验板上产生频率为10 MHz的输入脉冲,用7片7490,每一级都构成10分频电路,使频率从10 MHz降低为1Hz。

1.3.2 状态定时

状态定时可由预置BCD码初值的74190级联实现,构成减计数器。级联原则是:低位计数器从全0状态变为最大码值状态时可使高位计数器减1。级联方式分为异步和同步两种,本文采取的是异步级联方式,即低位计数器溢出信号控制高位计数器的记数脉冲输入端。可根据计数器的时钟触发方式,在低位计数器状态码从全“0”变为最大码值的瞬间,为高位计数器提供有效的计数脉冲边沿。具体做法是将低片位的溢出信号RCON端口接到高片位的计数脉冲CLK,实现两位BCD码的置数、翻转和借位,使系统表示的数字能在22~16之间循环。
74190功能说明:
(1)GN为计数器使能控制端,低电平有效。当GN为高电平时,禁止计数。
(2)DNUP为计数方式控制,接高电平为减计数,接低电平为加计数。
(3)LDN为异步预置数控制。当LDN为低电平时,计数器状态QD,QC,QB,QA分别等于D,C,B,A。
(4)计数器位序由高至低顺序为QD,QC,QB,QA。QD为最高位MSB,QA为最低位LSB。
(5)计数脉冲CLK上升沿有效。
(6)当计数器输出QDQCQBQA为十进制加计数的最大状态码“1001”或为减计数的最小状态码全“0”时,极值状态码指示MAX/MIN输出为高电平。
(7)当极值状态码指示MAX/MIN为高电平且CLK为低电平时,溢出信号RCON为低电平,即RCON与计数脉冲同步。

系统记数脉冲为1 Hz时,如表2所示,当I状态(东西控制状态)的定时时间为22 s,计数器应该先预置22的BCD码;同理,J状态(南北控制状态)之前应该预置16的BCD码。

3.jpg

状态计时电路由两片74190级联而成,构成22和16自翻转的电路。其要解决的核心问题包括置数,翻转和借位。根据74190芯片的特点,可分析其实现原理如图4所示,通过溢出信号RCON的上升沿实现借位,使得数字能够从20到19,个位向十位借位,顺利过渡。

置数和翻转之间有先后关系,即须先置数后翻转。如表3所示,分析两个BCD码各位特点,可知两者D7D6D3D0位均为1,D1位均为0,而D5D4D2位不同,如图5,D5D4D2位由状态电平S来控制,当为I状态时,计数器的预置的数为D5=0,D4=D2=1,而为J状态时,计数器的预置的数为D5=1,D4=D2=0,根据74190的功能,将2片74190的MAX/MIN引出,通过与非门,分别连在高位和低位的LDN置数端,通过分析可知,当计数器从01减到00时候,高低位的MAX/MIN均为高电平,经过与非门以后为低电平,74190被置数,其置数值由状态S来决定,S是由LDN端信号经

过一个T’触发器决定的,即LDN信号每置数一次,S翻转1次,从而区分16和22状态。按这个结构,可分别置数16和22,使其实现自翻转。

图5为状态定时模块的实际连接图。

5.jpg

1.3.3 时间显示

时间显示要用到7段显示译码电路,由于是两位BCD码,故用二选一数据选择器。选择端S接一个频率很高的方波(如1 kHz);数据比较器的输出和1 Hz脉冲作为AHDL模块的输入,即可正确显示时间。

6.jpg

6.jpg

为正确显示时间,用AHDL文件自编译码真值表如下:

QQ截图未命名1_副本.jpg

1.3.4 数字比较一组合逻辑控制

该模块将状态定时模块输出的时间与时间节点进行比较,从而确定电路处于22 s或者16 s的具体的某个状态。由表1可知,东西(I)或南北(J)的控制状态都有3个阶段的控制逻辑,分别对应3个时间段:1~3 s,4~6 s和大于6 s,因此,采用数字比较器进行比较,确定定时值小于4 s或大于6 s,方法如图7所示,采用4片7485数字比较器,两两级联,其中一个由状态定时模块的输出与4即二进制0100比较;另一个由状态定时模块的输出与6即二进制0110比较。

8.jpg

编写组合逻辑真值表,将状态信号S,两个数字比较器的输出Y1,Y2和1 Hz脉冲作为输入,各个灯的状态作为输出。从而根据逻辑关系得出对应时间电路的状态,控制红、黄、绿灯处于不同的状态。S判断电路处于22 s状态还是16 s状态,Y1,Y2区分东西、南北六个阶段状态,1 Hz脉冲实现绿灯闪烁。

QQ截图未命名1_副本.jpg



2 电路的组构与调试

来用QuartusⅡ软件设计各个模块,并进行仿真。确认结果后,下载至FPGA实验板中,进行相应的硬件调试,调试结果与仿真结果相一致。图8为仿真波形,系统上电需要调整的过程,因此电路正常工作前重复了22s的状态。

11.JPG

蓝牙技术设备分析师:2010至2011年十大移动技术多相电源控制器安森美半导体推出新双缘多相控制器国内多晶硅行业劣势剖析家电战略海尔家电业进入零时代:主要产品能效将提升10%苹果Mac OS安全更新存缺陷 会致病毒感染年度法院判决书《半导体》联发科营所税22亿元缴定了系统成本荧光灯LED冷藏照明将是一个高增长领域三星面板工厂三星中国7.5代LCD面板厂有望2012年投产公司董事会人选AMD物色新CEO工作难有进展 或影响业绩改善
 0.59871196746826 s