一、概述
这次的课程设计任务是设计一个可预置的定时器显示报警系统。该可预置的定时器显示报警系统可用于任意定时系统,要求是设计电路时预置30秒的时间,在这30秒内,完成从预置的30秒减到0秒报警或是预置0秒计数到30秒报警,并且要求每隔5秒显示一次时间,即要显示30秒,25秒,20秒,15秒,10秒, 5秒,0秒时,同时系统能准确地预置和清零。
本次课程设计可以采用电路仿真软件Multisim来设计电路,或者是采用VHDL语言编写程序,并在MAX+plusⅡ平台中进行仿真,下载到EDA实验箱进行验证,或编写单片机程序并在单片机上进行仿真。综合上面的方法,我选择用电路仿真软件来完成课设要求。
先用555芯片生成频率为1HZ的脉冲信号,用这个信号接在后面需要计数的芯片上。然后用两片74LS192级联,来设计一个0到30的加法计数器,使之每隔一秒计数一次,再通过74LS47芯片编译成7段数码管所识别的高低电平,用它的输出来驱动共阳极数码管,来显示时间。最后用比较器来实现每隔五秒后来显示一次。原理框图如图1所示:
利用VHDL语言编写程序,生成相应的模块,最后在整体的电路形成中实现预置报警功能,相关的电路生成思路和方案一一致。
在本次综合课程设计中,选用方案一来实现课程设计的要求。利用相关芯片可以降低题目设计的难度,且可以降低设计成本,并能顺利实现电路功能。
1.脉冲产生电路
该脉冲产生电路是利用555定时器生成多谐振荡电路,来产生频率为1HZ的脉冲信号。在接入VCC之后,电容C1开始充电,当C1两端电压到达2/3VCC时充电完成,并开始放电,当C1两端电压降到1/3VCC时,放电完成,接下来又开始放电,周而复始不断循环。C1充电与放电产生振荡,并最终从U。端输出脉冲信号。根据C1的充电与放电的时间可求出输出脉冲信号的周期
充电时间:T1=(R1+R2)× C1×ln2
放电时间:T2=R1×C1×ln2
总的振荡周期为T=T1+T2=(R2+2×R1) ×C1×ln2
利用以上公式可计算相应的电容和电阻,其中R1=50kΩ,R2=10kΩ,C1=13.1μF,C2=10nF。脉冲电路如图2所示:
图2 脉冲产生电路
2.计数电路
计数器选用的是双时钟方式的十进制可逆计数器74192芯片,74192芯片的引脚图如图3所示:
图3 74LS192芯片引脚图
所用的74LS192芯片,是在当LOAD’,CLR端均为0时,计数器处在置数的位置。在CLR=1时,计数器可以清零。最终在LOAD’=1,CLR=0,UP=1时,且有上升沿脉冲加到DOWN端时,则计数器进行减法计数。 74192芯片的功能表如表1所示:
表1 74LS192芯片功能表
输入 | 输出 | |||||
CLR | LOAD’ | UP | DOWN | A B C D | Qa Qb Qc Qd | |
1 | ╳ | ╳ | ╳ | ╳ ╳ ╳ ╳ | 0 0 0 0 | |
0 | 0 | ╳ | ╳ | A B C D | A B C D | |
0 | 1 | 1 | ↑ | ╳ ╳ ╳ ╳ | 计数减 | |
0 | 1 | ↑ | 1 | ╳ ╳ ╳ ╳ | 计数加 |
由74LS192的功能表所知,需要两片74LS192芯片来实现30到0的计数功能,U1为高位片U2为低位片,具体的芯片连接电路如图4所示:
图4 由74LS192芯片组成的31进制计数电路
3.预置,清零电路
当LOAD’=0,CLR=0时,计数器处在置数状态,因十位数和个位数计数器四位数据输入端上的DCBA端分别为0011和0000,因此预置数为30。在CLR=0时,LOAD’=0为置数状态,而在LOAD’=1时为计数状态,因此当双掷开关接上端时,电路置数30,双掷开关接至下端时计数器开始减数。数字减到0后,电路会默认从99开始递减,因此需要开关来控制它的置数端和置零端,来达到电路的功能。30秒预置数电路如图5所示:
图5 30秒预置数电路
将双掷开关接至计数器的CLR端即可实现清零功能,当双掷开关接至上端,即CLR=0时,计数器开始进行减法计数,在当双掷开关接至下端即CLR=1时,计数器清零。清零电路如图6所示:
图6 清零电路
4.数值比较电路
74LS85芯片组成的数值比较系统,可以进行数字的选取,选择出在0到30的5的倍数,进而触发74LS47芯片的控制端,让显示器显示相应的数字,达到预期效果。74LS85芯片的功能表如表2所示:
表2 74LS85芯片的功能表
比较输入 | 级联输入 | 输出 | |||||||
A3,B3 | A2,B2 | A1,B1 | A0,B0 | A>B | A<B | A=B | A>B | A<B | A=B |
A3>B3 | ╳ | ╳ | ╳ | ╳ | ╳ | ╳ | H | L | L |
A3<B3 | ╳ | ╳ | ╳ | ╳ | ╳ | ╳ | L | H | L |
A3=B3 | A2>B2 | ╳ | ╳ | ╳ | ╳ | ╳ | H | L | L |
A3=B3 | A2<B2 | ╳ | ╳ | ╳ | ╳ | ╳ | L | H | L |
A3=B3 | A2=B2 | A1>B1 | ╳ | ╳ | ╳ | ╳ | H | L | L |
A3=B3 | A2=B2 | A1<B1 | ╳ | ╳ | ╳ | ╳ | L | H | L |
A3=B3 | A2=B2 | A1=B1 | A0>B0 | ╳ | ╳ | ╳ | H | L | L |
A3=B3 | A2=B2 | A1=B1 | A0<B0 | ╳ | ╳ | ╳ | L | H | L |
A3=B3 | A2=B2 | A1=B1 | A0=B0 | H | L | L | H | L | L |
A3=B3 | A2=B2 | A1=B1 | A0=B0 | L | H | L | L | H | L |
A3=B3 | A2=B2 | A1=B1 | A0=B0 | L | L | H | L | L | H |
数值比较电路采用两片74LS85芯片,分别由U1设置数值“5”和U2设置数值“0”与个位数进行比较,当个位输出5时,U1的0AEQB端输出高电平,当个位输出0时,U2的0AEQB端输出高电平,经过或门后,一旦有高电平输出给74LS47芯片,则将会触发锁存器将0到30之间的5的倍数来显示出来,当不是5的倍数时,显示器不显示数字,具体数字选择电路如图7所示:
图7 数字选择电路
5.锁存显示电路电路
此次所设计的锁存显示电路主要是由芯片74LS47芯片组成的,将数据选择电路选择出来的个位数和十位数再经过芯片74LS47芯片的编译来显示在7段码的数码管上。
由74LS47芯片和共阳极数码管显示电路,其中U3和U1组成十位数,U4和U2组成个位数,并且为了保证电路的安全,在每个数码显示管上端加上限流电阻,具体的数码显示电路由图8所示,以及74LS47芯片的功能表如表3所示:
表3 74LS47芯片的功能表
数字 | 输入 | 输出 | ||||||||||||
LT’ | RBI’ | A3 | A2 | A1 | A1 | BI’/RBO’ | a | b | c | d | e | f | g | |
0 | H | H | L | L | L | L | H | L | L | L | L | L | L | H |
1 | H | ╳ | L | L | L | H | H | H | L | L | H | H | H | H |
2 | H | ╳ | L | L | H | L | H | L | L | H | L | L | H | L |
3 | H | ╳ | L | L | H | H | H | L | L | L | L | H | H | L |
4 | H | ╳ | L | H | L | L | H | H | L | L | H | H | L | L |
5 | H | ╳ | L | H | L | H | H | L | H | L | L | H | L | L |
6 | H | ╳ | L | H | H | L | H | H | H | L | L | L | L | L |
7 | H | ╳ | L | H | H | H | H | L | L | L | H | H | H | H |
8 | H | ╳ | H | L | L | L | H | L | L | L | L | L | L | L |
9 | H | ╳ | H | L | L | H | H | L | L | L | H | H | L | L |
10 | H | ╳ | H | L | H | L | H | H | H | H | L | L | H | L |
11 | H | ╳ | H | L | H | H | H | H | H | L | L | H | H | L |
12 | H | ╳ | H | H | L | L | H | H | L | H | H | H | L | L |
13 | H | ╳ | H | H | L | H | H | L | H | H | L | H | L | L |
14 | H | ╳ | H | H | H | L | H | H | H | H | L | L | L | L |
15 | H | ╳ | H | H | H | H | H | H | H | H | H | H | H | H |
图8 显示电路
四、性能的测试
1.电路清零测试
图9 电路清零测试
在清零电路测试中,左边为0到30每个数字均显示的电路表示,右边的是0到30的5的倍数的电路表示,当电路给出清零信号后,两边的数码管均显示0,因此由图可知,清零电路可以顺利实现它的功能。
2.置数电路测试
图10置数电路测试
在置数电路测试中,左边为0到30每个数字均显示的电路表示,右边的是0到30的5的倍数的电路表示,当电路给出置数信号后,两边的数码管均会显示30,并且会自动进入数字减得状态。
3.总体功能测试
在测试电路的整体新能时,需要通过对0到30之间的普通数字的测试,还需要对5的倍数数字的测试,应该出现的结果是在除5的倍数之外的数字左边的数码显示管显示0到30之间的数字,而右侧的数码管并不显示数字。只有当出现5的倍数时,两边的数码显示管会显示数字,且显示的数字是一样的,图11和图12分别显示了两种不同的情况,具体内容如图11和图12所示:
图11 非5的倍数的测试
图12 5的倍数的测试
五、结论
这是一次综合性很强的课程设计,毕竟是大学生涯中最后一次课设,综合了很多以前所学的专业知识,一个题目可以通过电路仿真,单片机语言设计以及VHDL语言来实现,这次我选择了电路仿真来实现相应功能。同时通过上面的功能测试,也可以知道该电路在设计思路没有明显问题,但在设计的过程中,所遇见的问题并不少,我通过查找书籍和资料,解决很多问题。通过这次课程设计,我掌握了很多解决问题的方法,同时对专业课相关知识有了新的认识,并有了更深的了解和把握。
六、性价比
该电路设计的成本较低,没有特别昂贵的芯片和部件,总体电路设计的并不繁琐,没有通过简化电路可以减掉的芯片和与非门。同时,电路设计之初本着简化的思想,因此可以通过几个简单的开关来实现相应要求的功能和要求。总体电路设计的性价比还是比较高的。
七、课设体会
这个课程设计的题目是我自己选取的,当时只是感觉这个题目是利用相关芯片,就可以实现,并起初就有了一定的想法和思路,但在用仿真软件进行仿真之后才发现这个过程并没有那么容易实现,在连接电路后才知道针对法光二极管在没有连接阻值较小的电阻时,会产生仿真错误,同时7段数码管的开启电压为5伏而你的VCC也是5伏,那你的数码管是无法发光的。在解决这些问题时,耗费了我大量的时间,不过能够独立解决这些问题,这个过程给予我很大的信心,并最终完成这次课设任务。
参考文献
[1] 阎石主编.数字电子技术.[M]北京:高等教育出版社,2006年
[2] 陈振官等编著.新颖高效声光报警器.[M]北京:国防工业出版社,2005年
[3] 谢自美.电子线路设计·实验·测试[M].武汉:华中理工大学出版社,2000
[4] 付家才.电子实验与实践[M].北京:高等教育出版社,2004年
附录I 总电路图
附录II 元器件清单
序号 | 编号 | 名称 | 型号 | 数量 |
1 | U1,U2 | 十进制计数器 | 74LS192 | 2 |
2 | U3 | 定时器 | LM555CN | 1 |
3 | U4,U5 | 显示译码器 | 74LS47 | 2 |
4 | U6,U7 | 数据比较器 | 74LS85 | 2 |
5 | U8,U9 | 七段数码管 | BS201B | 2 |
6 | U10A | 或门 | 74LS32D | 1 |
7 | U11A | 非门 | 74LS04BM | 1 |
8 | R1,R4 | 电阻 | 668Ω | 2 |
9 | LED1,LED2 | 发光二极管 | GaP | 2 |
10 | R2 | 电阻 | 50000Ω | 1 |
11 | R3 | 电阻 | 10000Ω | 1 |
12 | C1 | 电容 | 13.1μF | 1 |
13 | C2 | 电容 | 10nF | 1 |
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |