数电课程设计报告交通灯设计.doc

上传人:精*** 文档编号:865498 上传时间:2023-10-05 格式:DOC 页数:35 大小:279KB
下载 相关 举报
数电课程设计报告交通灯设计.doc_第1页
第1页 / 共35页
数电课程设计报告交通灯设计.doc_第2页
第2页 / 共35页
数电课程设计报告交通灯设计.doc_第3页
第3页 / 共35页
数电课程设计报告交通灯设计.doc_第4页
第4页 / 共35页
数电课程设计报告交通灯设计.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、目录第一章设计指标3设计指标3第二章 系统概述3 2.1设计思想3 2.2可行性论证42.3各功能的组成42.4总体工作过程16第三章 单元电路设计与分析163.1各单元电路的选择163.2设计及工作原理分析17第四章 电路的组构与调试184.1 遇到的主要问题18 4.2 现象记录及原因分析184.3 解决措施及效果 194.4 功能的测试方法、步骤、设备、记录的数据19第五章 结束语195.1对设计题目的结论性意见及进一步改进的意向说明195.2 总结设计的收获与体会19附图(电路总图)20参考文献36第一章 设计指标主干道设计指标表(1)东西E绿灯亮绿灯闪黄灯亮红灯亮红黄灯亮南北S红灯亮

2、红黄灯亮绿灯亮绿灯闪黄灯亮时间/s16331033主干道与转弯灯设计指标表(2)东西E绿灯亮绿灯闪黄灯亮转绿亮转黄亮红灯亮红黄灯亮转红亮南北S红灯亮红黄灯亮转红亮绿灯亮绿灯闪黄灯亮转绿亮转黄亮时间/s163373103373第二章 系统概述2.1设计思想基于FPGA的主干道交通灯系统控制设计包括4大模块,分别为脉冲发生即分频模块、状态定时、交通灯闪烁的控制、闪烁时间数字显示的控制,基本原理如图1所示。加转向灯后,由于状态增加,需将数字比较器扩展为四个数字比较器。2.2可行性论证本交通灯控制电路是基于FPGA的设计,FPGA采用逻辑单元阵列概念,内部包括可配置逻辑模块、输出输入模块和内部连线三个

3、部分。 FPGA内部丰富的逻辑模块可实现本设计中状态定时模块与分频模块,并且与LED七段显示器连接可实现闪烁时间数字显示。对于交通灯闪烁模块,可利用FPGA设计源文件,创建控制LED灯闪烁的原件;该部分还可以利用简单逻辑门来实现,这个在实验拓展中会实现。2.3各功能的组成1、分频模块 用七块7490实现7次十分频电路,由于FPGA硬件自身可得到10Mhz晶振,经过7次分频后,可以分别得到1Mhz、100khz、10khz、1khz、100hz、10hz、1hz。2、状态定时模块A、无转弯状态定时:状态计时电路由两片74190级联而成,构成22和16自翻转的电路。其要解决的核心问题包括置数,翻转

4、和借位。借位通过溢出信号RCON的上升沿实现借位,使得数字能够从20到19,个位向十位借位,顺利过渡。置数和翻转之间有先后关系,即须先置数后翻转。分析两个BCD码各位特点,可知两者D7D6D3D0位均为0,D1位均为1,而D5D4D2位不同,如图,D5D4D2位由状态电平S来控制,当为东西(E)状态时,计数器的预置的数为D5=1,D4=D2=0,而为南北(S)状态时,计数器的预置的数为D5=0,D4=D2=1,根据74190的功能,将2片74190的MAXMIN引出,通过与非门,分别连在高位和低位的LDN置数端,通过分析可知,当计数器从01减到00时候,高位片4、5相或同时实现从0到1的跳转,

5、经过T触发器,74190被置数,其置数值由状态S来决定,使系统表示的数字能在220,160之间循环。无转弯状态定时波形仿真:B、有转弯状态定时:转弯状态定时,由于出状态的改变,置数处要做出改变,每次置数要实现32与26转换。下图为了清晰,列出转弯的简易状态定时(省略了D触发器)对于D触发器是为了消除MAX/MIN信号的竞争冒险现象,D触发器的时钟频率选择在10khz,以减少信号延迟。有转弯状态定时仿真波形:3、闪烁时间数字显示控制时间显示所用芯片为7448七段显示译码器,由于是两位BCD码,故用二选一数据选择器。选择端S接一个频率很高的方波,设计中采用的是1khz。4片二选一芯片中,B端输入高

6、片位,A端输入低片位,通过S的高低电平实现选择输出,再输入7448中实现译码。最后7448与硬件LED连接后,便可实现闪烁时间数字显示。4、交通灯闪烁的控制A、无转弯交通灯闪烁的控制:比较部分:该模块将状态定时模块输出的时间与时间节点进行比较,从而确定电路处于22 s或者16 s的具体的某个状态。由表(1)可知,东西(E)或南北(S)的控制状态都有3个阶段的控制逻辑,分别对应3个时间段:13 s,46 s和大于6 s,因此,采用数字比较器进行比较,确定定时值小于4 s(Y1)或大于6 s(Y2),方法例图所示,采用4片7485数字比较器,两两级联,其中一个由状态定时模块的输出与4即二进制010

7、0比较;另一个由状态定时模块的输出与6即二进制0110比较。例图(Y1状态)交通灯控制部分: 该部分可由俩种方法实现。a、AHDL文件编写组合逻辑真值表,b、用简单逻辑门实现。下面分别进行介绍。a、AHDL文件编写组合逻辑真值表新建AHDL文件,将状态信号S,两个数字比较器的输出Y1,Y2和1 Hz脉冲cp作为输入,各个灯的状态作为输出。从而根据逻辑关系得出对应时间电路的状态,控制红、黄、绿灯处于不同的状态。S判断电路处于22 s状态还是16 s状态,Y1,Y2区分东西、南北六个阶段状态,1 Hz脉冲实现绿灯闪烁。下面是AHDL文件内容,其中b中四个分别表示S、Y2、Y1、CP。ER,EY,E

8、G,SR,SY,SG分别表示东西红、黄、绿灯与南北红、黄、绿灯,为1时灯亮,为0时灯灭,由AHDL文件可以看出,当在CP为0与1时灯均为1时,该等表示亮,当在CP仅为1或者仅为0时亮时,表示灯闪,当在CP为0与1时均为0表示灯灭。SUBDESIGN RYG( data_in3.0 :INPUT; ER,EY,EG,SR,SY,SG :OUTPUT;)BEGINTABLEdata_in3.0 =ER,EY,EG,SR,SY,SG; b0011 = 0,0,1,1,0,0; b1011 = 0,0,1,1,0,0; b0001 = 0,0,0,1,0,0; b1001 = 0,0,1,1,0,0;

9、 b0101 = 0,1,0,1,1,0; b1101 = 0,1,0,1,1,0; b0010 = 1,0,0,0,0,1; b1010 = 1,0,0,0,0,1; b0000 = 1,0,0,0,0,0; b1000 = 1,0,0,0,0,1; b0100 = 1,1,0,0,1,0; b1100 = 1,1,0,0,1,0;END TABLE;END;b、用简单逻辑门实现其中S表示图中ss,S表示ss非SG=S(Y2+Y1*CP)SY=Y1SR=SEG=S(Y2+Y1*CP)EY=Y1ER=SB、有转弯交通灯闪烁的控制:比较部分:交通灯控制部分: a、 AHDL文件编写组合逻辑真值表

10、AHDL文件中,b中四个分别表示S、Y2、Y1、CP。ER,EY,EG,EZR,EZY,EZG,SR,SY,SG,SZR,SZY,SZG分别表示东西主干道红、黄、绿灯及其转弯的红、黄、绿灯与南北主干道红、黄、绿灯及其转弯红、黄、绿等,为1时灯亮,为0时灯灭。 SUBDESIGN ZTD(data_in5.0 :INPUT;EG,EY,ER,EZG,EZY,EZR,SG,SY,SR,SZG,SZY,SZR :OUTPUT;)BEGINTABLEdata_in5.0=EG,EY,ER,EZG,EZY,EZR,SG,SY,SR,SZG,SZY,SZR;b111100=1,0,0,0,0,1,0,0,

11、1,0,0,1;b111101=1,0,0,0,0,1,0,0,1,0,0,1;b101100=0,0,0,0,0,1,0,0,1,0,0,1;b101101=1,0,0,0,0,1,0,0,1,0,0,1;b100100=0,1,0,0,0,1,0,1,1,0,0,1;b100101=0,1,0,0,0,1,0,1,1,0,0,1;b100000=0,0,0,1,0,0,0,0,0,0,0,1;b100001=0,0,0,1,0,0,0,0,0,0,0,1;b100010=0,0,0,0,1,0,0,0,0,0,0,1;b100011=0,0,0,0,1,0,0,0,0,0,0,1;b011

12、100=0,0,1,0,0,1,1,0,0,0,0,1;b011101=0,0,1,0,0,1,1,0,0,0,0,1;b001100=0,0,1,0,0,1,0,0,0,0,0,1;b001101=0,0,1,0,0,1,0,0,0,0,0,1;b000100=0,1,1,0,0,1,0,1,0,0,0,1;b000101=0,1,1,0,0,1,0,1,0,0,0,1;b000000=0,0,0,0,0,1,0,0,0,1,0,0;b000001=0,0,0,0,0,1,0,0,0,1,0,0;b000010=0,0,0,0,0,1,0,0,0,0,1,0;b000011=0,0,0,0,

13、0,1,0,0,0,0,1,0;END TABLE;END;b、 用简单逻辑门实现其中S表示图中ss,S表示ss非SG=S(Y4+Y3*CP)SY=Y3*Y2SR=SSZG=S*Y1*Y2SZY=S*Y1SZR=Y2*S+SEG=S(Y4+Y3*CP)EY=Y3*Y2ER=SEZG=S*Y1*Y2EZY=S*Y1EZR=S*Y2+S2.4总体工作过程核心模块为状态定时模块,该模块实现了各干道的计时,并与比较电路一同实现了对状态的控制,再加之七段显示译码器与AHDL或者简单逻辑门的配合,将设计在硬件中实现,便可完成交通灯控制电路的设计及实现第三章 单元电路设计与分析3.1各单元电路的选择1、分频

14、模块 因为电路在之后设计要用10khz消除竞争冒险,1khz来实现显示译码器的扫描显示,1hz实现计时及LED闪烁,FPGA硬件自身可得到10Mhz晶振,这就需要实现分频功能,所以采用7490实现十分频电路,打包后,经过7次分频,这样便可以用简单的电路得到需要的10khz、1khz、1hz频率。2、状态定时模块该模块需实现可进行转换的减记器功能,构成22和16自翻转的电路,所以采用两片74190级联而成。其要解决的核心问题包括置数,翻转和借位。借位通过溢出信号RCON的上升沿实现借位,使得数字能够从20到19,个位向十位借位,顺利过渡。转弯状态定时,由于出状态的改变,置数处要做出改变,每次置数

15、要实现32与26转。为了消除MAX/MIN信号的竞争冒险现象,在MAX/MIN出来接D触发器,时钟频率选择在10khz,以减少信号延迟。3、闪烁时间数字显示控制由于状态定时模块出来的计数为俩位8421BCD码,如果要显示到硬件上,自然想到7448七段显示译码器,由于是两位BCD码,故用二选一数据选择器。选择端S接一个频率较高的方波,设计中采用的是1khz。4片二选一芯片中,B端输入高片位,A端输入低片位,通过S的高低电平实现选择输出,再输入7448中实现译码。最后7448与硬件LED连接后,便可实现闪烁时间数字显示。4、交通灯闪烁的控制为了实现各个状态的控制,首先要用到的是比较部分来区分各个状

16、态;该模块将状态定时模块输出的时间与时间节点进行比较,从而确定电路处于22 s或者16 s的具体的某个状态。由表(1)可知,东西(E)或南北(S)的控制状态都有3个阶段的控制逻辑,分别对应3个时间段:13 s,46 s和大于6 s,因此,采用数字比较器进行比较,确定定时值小于4 s(Y1)或大于6 s(Y2),方法如图7所示,采用4片7485数字比较器,两两级联,其中一个由状态定时模块的输出与4即二进制0100比较;另一个由状态定时模块的输出与6即二进制0110比较。区分状态后,对LED进行控制的实现部分,由于要实现绿灯闪烁,要用到分频部分产生的1hz的频率。在用AHDL文件编写组合逻辑真值表

17、时,当在CP为0与1时灯均为1时,该等表示亮,当在CP仅为1或者仅为0时亮时,表示灯闪,当在CP为0与1时均为0表示灯灭,这样便实现了对状态的控制。而用简单逻辑门实现的过程,要通过卡诺图或者其他方法写出逻辑表达式,这样工作量比用AHDL工作量大一些。3.2设计及工作原理分析基本原理如图1所示。加转向灯后,由于状态增加,需将数字比较器扩展为四个数字比较器。从图中易看出来,设计主要包括4大模块,分别为脉冲发生即分频模块、状态定时、交通灯闪烁的控制、闪烁时间数字显示的控制,各个模块的详细设计及单元电路选择在3.1有详细介绍。第四章 电路的组构与调试4.1 遇到的主要问题1、完成状态定时并经过七段显示

18、译码器后,显示数字跳转时,当数字为8时便跳转到26。2、LED灯不亮。3、南北方向绿灯一直不亮,其他方向正确。4.2 现象记录及原因分析1、显示数字跳转时,当数字为8时便跳转到26。 首先排除七段显示译码器的错误,讲错误确定在状态计时器部分,并且是在状态跳转是发生错误,电路设计中,状态跳转用到的是MAX/MIN信号,而该信号极易出现竞争冒险现象,因此,初步确定原因为MAX/MIN信号出现竞争冒险现象2、LED灯不亮。 对电路进行检查后,排除电路中的错误,与同学讨论后发现acom没有接高电平。3、南北方向绿灯一直不亮,其他方向正确。由于其他方向正确,表示电路其他部分正确,可能是编写AHDL文件时

19、出现逻辑问题。4.3 解决措施及效果 1、通过俩个D触发器消除竞争冒险。由于冒险信号较窄,宽度小于D触发器的建立时间,不足以使触发器输出改变状态,从而消除冒险脉冲。D触发器的时钟频率选择在10khz左右,以减少信号延迟。2、将acom接高电平。3、打开AHDL文件,检查逻辑错误,并改正。4.4 功能的测试方法、步骤、设备、记录的数据1、再次检查电路后,将程序拷到硬件,观察数字跳转显示,不再发生竞争冒险,跳转正常。2、再次检查电路后,将程序拷到硬件,LED灯亮。3、再次检查电路后,将程序拷到硬件,LED灯正确闪烁第五章 结束语5.1对设计题目的结论性意见及进一步改进的意向说明本实验的难点在于对实

20、验仪器以及软件的理解。只要整体设计思路理好,并把各个设计模块完成,便可以较好的完成设计。5.2 总结设计的收获与体会通过本次设计,提高了我对数字信号的理解,发现简单的数字可以传递信息,最简单的例子就是我们日常生活中最常见的交通信号等。由于该设计对于第一次做的我存在一定的难度,起初对于软件的使用不理解便饶了不少弯子,但是经过与同学的交流,并向老师老师请教,我最终克服了困难,用quarters II实现了自己的设计,并且使自己对quarters II产生了一定兴趣。附图(电路总图)无转弯交通灯控制电路:总图:详细: 简单逻辑门实现电路:其中是将换为有转弯交通灯控制电路:总图:详细:简单逻辑门实现电路:总图:其中是将换为参考文献基于FPGA的数字电路系统设计西安电子科技大学出版社数字电路及系统设计高等教育出版社基于FPGA的交通灯系统控制设计 35 / 35

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 技术资料 > 课程设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922