电气工程学院
数字电子电路课程设计报告书
姓 名: XX 班 级: XXXXXXXXXXXXX 学 号: XXXXXXXX 完成日期: XXXXXXXXXXXX
1
目录
设计要求--------------------------------------------------------------------------3
一、整体设计构想--------------------------------------------------------------3
二、仿真软件简要介绍--------------------------------------------------------3
三、系统分模块设计过程-----------------------------------------------------3
1、开关控制指示灯模块---------------------------------------------------------------3 2、编码器与译码器转换模块----------------------------------------------------------4 3、数码管显示模块-------------------------------------------------------------------7 4、蜂鸣器呼叫模块-------------------------------------------------------------------7
四、系统完成电路图-----------------------------------------------------------8
五、课程设计总结--------------------------------------------------------------9
2
设计题目 一、整体设计构想 病房呼叫系统 本次数字电子电路课程设计我组选择的题目是病房呼叫系统,要求如下: 1.用1~5个开关模拟5个病房的呼叫输入信号,1号优先级最高;1~5优先级依次降低; 2.用一个数码管显示呼叫信号的号码;没信号呼叫时显示0;又多个信号呼叫时,显示优先级最高的呼叫号(其它呼叫号用指示灯显示); 3.凡有呼叫发出5秒的呼叫声; 4.对低优先级的呼叫进行存储,处理完高优先级的呼叫,再进行低优先级呼叫的处理 下面对4个要求进行逐一分析。首先,根据题目要求用5个开关模拟5个病房的呼叫信号,由于1~5优先级依次降低,所以我们使用优先编码器来控制其优先级;其次,要显示病房号码,就要使用数码管以及能将编码器产生的8421码转化为数码管显示格式的译码器;能够发出呼叫声,在仿真中就需要蜂鸣器来实现这个功能;对于存储呼叫信息,由于要使用优先编码器,当同时闭合两个开关时,它会遵循优先级最高的来执行操作,当优先级高的开关断开后,之后的优先级较高的会进行操作,这个过程是自动的,所以不用考虑。 设计过程 二、仿真软件简要介绍 本次课程设计我们主要使用Multisim 10来进行仿真。Multisim是美国国家仪器(NI)有限公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。Multisim软件有许多版本,这次我们选择Multisim 10是因为该版本比较普遍,兼容性也较强。 三、系统分模块设计过程 根据课程设计要求,在设计整个系统时我们采取了分模块设计的方法,这样,设计过程清晰,也便于检查其中错误。主要将系统分为:开关控制指示灯模块、编码器与译码器转换模块、数码管显示模块、蜂鸣器呼叫模块。 下面分模块来介绍: 1、开关控制指示灯模块 该模块的仿真图如下图所示,5个开关分别控制5个指示灯的亮与灭,VCC为正极 +5V。将5个开关的键位分别设置为从“1”到“5”,当按下对应数字键后,开关闭合,相应的指示灯亮。
3
2、编码器与译码器转换模块 1)为了使各个病房具有优先顺序,我组使用优先编码器来实现此功能,我们使用较为简单的74ls148优先编码器。对于74ls148,有I0~I7八个输入端,A0~A2三个输出端,E0为选通输出端,当所有编码输入为高电平且EI=1时E0为0;GS为扩展端用于扩展编码功能,只要任何一个输入端有低电平信号且EI=1时GS才为0;EI为选通输入端只有在EI=0时编码器才能正常工作。下表为其功能表 输入 EI 1 0 0 0 0 0 0 0 0 0 输出 I4 x 1 x x x 0 1 1 1 1 I5 x 1 x x 0 1 1 1 1 1 I6 x 1 x 0 1 1 1 1 1 1 I7 x 1 0 1 1 1 1 1 1 1 A2 1 1 0 0 0 0 1 1 1 1 A1 1 1 0 0 1 1 0 0 1 1 A0 1 1 0 1 0 1 0 1 0 1 GS 1 1 0 0 0 0 0 0 0 0 EO 1 0 1 1 1 1 1 1 1 1 I0 x 1 x x x x x x x 0 I1 x 1 x x x x x x 0 1 I2 x 1 x x x x x 0 1 1 I3 x 1 x x x x 0 1 1 1 4
根据要求,本系统只需要5个输入端,所以选取IO~I4五个输入端,由于I4的优先级最高,所以I4对应病房为1号以此类推,连接后的电路图如下: 2)由于要用数码管来显示号码,所以要使用相应的译码器来翻译74ls148编码器输出的BCD码。我们使用74ls47译码器来进行翻译,74LS47是BCD-7段数码管译码器/驱动器, 74LS47的功能用于将BCD码转化成数码块中的数字,通过它解码, 可以直接把数字转换为数码管的显示数字,其功能表如下: 输 入 输 出 显示数字符号 LT(——) RBI(——-) A3 A2 A1 A0 BI(—)/RBO(———) a(—) b(—) c(—) d(—) e(—) f(—) g(—) 1 1 0 0 0 0 1 0 0 0 0 0 0 1 0 1 X 0 0 0 1 1 1 0 0 1 1 1 1 1 1 X 0 0 1 0 1 0 0 1 0 0 1 0 2 1 X 0 0 1 1 1 0 0 0 0 1 1 0 3 1 X 0 1 0 0 1 1 0 0 1 1 0 0 4 1 X 0 1 0 1 1 0 1 0 0 1 0 0 5 1 X 0 1 1 0 1 1 1 0 0 0 0 0 6 1 X 0 1 1 1 1 0 0 0 1 1 1 1 7 1 X 1 0 0 0 1 0 0 0 0 0 0 0 8 5
1 X 1 0 0 1 1 0 0 0 1 1 0 0 9 X X X X X X 0 1 1 1 1 1 1 1 熄灭 1 0 0 0 0 0 0 1 1 1 1 1 1 1 熄灭 0 X X X X X 1 0 0 0 0 0 0 0 8 对于本次课程设计我们仅使用1~5字码,所以仅选用1~5来使用。由功能表得出LT、RBI、BI/RBO三个使能端可给以高电平,使用A、B、C、D分别表示输入端A0、A1、A2、A3,所以按要求可列出74ls148编码器与74ls47之间转换的真值表: 输入 A0 1 0 1 0 A1 1 0 0 1 A2 0 1 1 1 A 1 0 1 0 输出 B 0 1 1 0 C 0 0 0 1 D 0 0 0 0 0 显示数字 1 2 3 4 5 1 1 1 1 0 1 由真值表可以得出如下逻辑表达式: A=(A1+A2) •A0 B=A2•A1’ C=A1•A2 D=0 由逻辑表达式可得电路图如下: 6
3、数码管显示模块 本次课程设计我组使用的是7段共阴数码管,分为abcdefg七段二极管来控制其显示的数字,所以根据74ls47译码器的功能表对该模块的电路设计如下: 4、蜂鸣器呼叫模块 根据要求有开关闭合时,蜂鸣器发出五秒的响声,由于蜂鸣器在仿真中无法看出效果,所以采用指示灯来代替,以便看出效果,为了控制时间,我们使用函数信号发生器和74160计数器来进行控制。 我们考虑到给予灯泡高电平时,并且有五秒的时间,所以采用计数器来给予其高电平。74160是十进制计数器,其QA输出端连接灯泡,上图中的两个数码管在系统中并没有真正的用途,只是用来检测741607
芯片的计数功能。在我们的构想中,计数部分每循环一次就会有五个高电平与五个低电平交替输出,这样灯泡就能闪烁五次,之后使用芯片的置位端来保持一个状态,使循环“停止”,灯泡不亮。但是经过多次的验证之后,发现一片74160组成的“十进制”不能满足“亮暗”要求。为了解决这个问题,我们采用两片74160组成一个“十一进制”的计数部分,当一次“十一进制”结束后,由进位输出给予置位端脉冲,使其停在“11(QA端输出低电平)”这个状态,就是“停止”。函数信号发生器接74160的CLK端,并将其波形调为“方波”,频率调节为“2Hz”,这样就能保证指示灯闪烁的总时间为5秒钟。 四、系统完成电路图 8
五、课程设计总结 本次课程设计我组使用Multisim 10软件来进行仿真模拟,通过实际操作,我组基本完成了课程设计的所有要求,也对Multisim 10软件有了更进一步的了解,也能够更加熟练的使用它,所以这次的课程设计对我来说收益很大。 但同时,通过设计病房呼叫系统,我们也发现了自身的一些不足之处,比如,在设计电路的时候仅考虑要达到功能,而忽略了要使电路更简化;对一些芯片的认识还不够,以至于不能够很好的发挥其功能。所以,以后还要认真学习相关知识,多多充实自己,使自己能够更好地运用所学知识。 成绩评定
分 9