当前位置:文档之家› 数电课程设计报告

数电课程设计报告

数电课程设计报告--------交通灯控制电路班级:电气1002姓名:任洁颖学号:100900202指导老师:刘玉英第一章设计指标 (2)设计指标……………………………………………………………第二章系统概述…………………………………… ..2.1设计思想…………………………………………………………..2.2可行性论证…………………………………………….2.3各功能的组成………………………………………………………2.4总体工作过程………………………………………………………第三章单元电路设计与分析……………………………3.1各单元电路的选择………………………………………………3.2设计及工作原理分析………………………………………………第四章电路的组构与调试…………………………………...4.1 遇到的主要问题…………………………………………………..4.2 现象记录及原因分析…………………………………………….4.3 解决措施及效果…………………………………………………4.4 功能的测试方法、步骤、设备、记录的数据……………………第五章结束语……………………………………………………5.1对设计题目的结论性意见及进一步改进的意向说明…………..5.2 总结设计的收获与体会…………………………………………. 附图(电路总图)………………………………………………………参考文献……………………………………………………………第一章设计指标:时序逻辑电路具有记忆功能,含有有限状态的时序电路被称为“状态机”,其特点是电路状态按一定的规律周期性循环变化。

交通灯控制电路是一个典型的有限状态机控制电路,交通干路道口的红、绿、黄三色灯根据不同的控制要求有规律周期性亮灭变化,各灯的亮灭持续时间也因干道的繁忙程度有所不相同。

所以交通灯控制电路必须对状态变化规律和状态持续。

设计一个十字路口交通灯控制电路,要求东西、南北两条干道的红、绿、黄三色的交通灯按如下表的要求循环变化,并以倒计时的方式指示干道通行(或禁行)的维持时间。

设计的控制部分以FPGA实现,用6个发光二极管模拟东西、南北两个方向的红、绿、黄交通灯。

用2个七段数码显示器显示干道的通行(禁行)时间。

附加实验:在原有基本实验的基础上,增加东西转弯、南北转弯的红、绿、黄三色的交通灯,其逻辑如下表所示,按照下表的要求循环变化。

设计的控制部分以FPGA实现,用12个发光二极管模拟东西、南北、东西转弯、南北转弯的红、绿、黄交通灯。

用2个七段数码显示器显示干道的通行(禁行)时间。

表二转弯灯控制要求第二章系统概述2.1 设计思想基于FPGA的交通灯系统控制设计包括4大模块,分别为脉冲发生、状态定时、交通灯闪烁的控制、闪烁时间的控制,基本原理如图1所示。

2.2 可行性论证该设计的交通灯控制分为6个状态。

由于各状态持续时间不同,所以电路的核心控制部分是状态机和定时器,状态机在定时器触发下周期性循环,状态码控制6个灯以一定的规律变化。

变化情况如图2所示。

系统脉冲由FPGA开发板晶振经过分频电路实现。

状态定时由74190可逆十进制计数器和T’触发器实现,只要置数合理,翻转信号到位,就可以使电路在东西(I)、南北(J)两个控制状态间翻转。

红、黄、绿灯的闪烁由7485数字比较器和组合逻辑控制,其中7485数字比较器用于比较计数器当前持续状态和所需要的状态全部时间,并做出相应的变化。

组合逻辑控制由AHDL文件编写真值表实现。

时间显示由AHDL文件编写真值表实现,输入正确的逻辑,七段译码电路即能得到正确的时间显示。

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

2.3.1 脉冲发生脉冲发生器为整个系统提供驱动,将输入端分配给FPGA实验板的PIN55引脚,则会由实验板上产生频率为10 MHz的输入脉冲,用7片7490,每一级都构成10分频电路产生1MHZ,100KHZ,10KHZ,1KHZ,100HZ,10HZ,1HZ 7种占空比为50%的脉冲信号,根据不同的需要连接不同的频率。

2.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与计数脉冲同步。

2.3.3时间显示时间显示模块主要运用的是动态扫描显示技术。

动态扫描显示主要用到的模块有数据选择,分频器,计数器以及七段显示译码。

本实验中数据选择用的是74153M选择器,分频器是本实验开头设计的多分频模块。

74153M:GN为使能端,C0,C1,C2,C3为四个输入端,A,B为地址控制端,Y 输出的为C0C1C2C3中的其中一个,A,B端与分配器相连接。

2.3.4 数字比较器该模块将状态定时模块输出的时间与时间节点进行比较,从而确定电路处于22 s或者16 s的具体的某个状态。

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

图34 总体工作状态系统脉冲由FPGA开发板晶振经过分频电路实现。

状态定时由74190可逆十进制计数器和T’触发器实现,置数合理,翻转信号到位,电路在东西(I)、南北(J)两个控制状态间翻转。

红、黄、绿灯的闪烁由7485数字比较器和组合逻辑控制,其中7485数字比较器用于比较计数器当前持续状态和所需要的状态全部时间,并做出相应的变化。

组合逻辑控制由AHDL文件编写真值表实现。

时间显示由AHDL文件编写真值表实现,输入正确的逻辑,七段译码电路得到正确的时间显示。

第三章单元电路设计与分析3.1 脉冲发生电路的选择:7490的介绍:7490是二-五-十进制加数器,片上有一个二进制计数器和一个异步五进制计数器,其器件符号如图4所示。

图中QA 是二进制计数器的输出,QB~QD 为五进制计数器输出,位序从高到低是D 、C 、B 。

图4图5设计原理及分析:CLKA 和CLKB 分别是两个计数器的脉冲输入端,下降沿触发有效。

CLRA 和CLRB 是两个计数器的复位清零端,同为高电平有效;SET9A 和SET9B 分别是两个计数器的置9控制端,当同为高电平时,QD 、QC 、QB 、QA 被预置为“1001”。

74LS90逻辑功能表如图5所示。

十分频的线路连接:根据7490的逻辑功能表,我们按照图6所示连接线路,即可实现倍率为10,占空比为50%的脉冲信号。

用Quartus II 仿真波形如图7所示图7图6多状态分频器的实现:将图6的十分频线路用Quartus II 打包做成一个模块,通过级联能够分别形成1HZ,10HZ,100HZ,1KHZ,10KHZ,100KHZ,1MHZ,10MHZ 共8种脉冲信号。

具体在Quartus II 的线路连接如图8所示3.2 状态定时电路的选择:图9图8利用Quartus II仿真1622计数器后的波形如图10所示:图10运用2片74190级联,一个接1HZ的时钟脉冲,用两片74190的溢出信号MAX/MIN来控制2个芯片的LDN端,利用高位的MAX/MIN端充当T’触发器的时钟脉冲信号,用触发器的输出S来控制要预置的数的BCD码,实现跳跃。

T’触发器用T触发器来实现,T触发器的特征方程为:Q(N+1)=TQ’(N)+T’Q(N).只需要在T端上链接一个VCC高电平,就能做成一个T’触发器。

1.下片的74190代表的是高4位,MX/MN输出经过反相器,再经过T触发器,分别到高位的B,A和低位的C,当S为0时,预置的是22,计数的是16;当S为1时,预置的是16,计数的是22.2.两片74190都接高电位VCC,表明是减计数。

3.高低片的MX/MN端的与非门输出作为LDN的控制信号时,只有到2个74190的MX/MN端都是1时才有效,实现异步预置数。

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

状态计时电路由两片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,使其实现自翻转。

相关主题