数电课程设计:洗衣机时控电路_第1页
数电课程设计:洗衣机时控电路_第2页
数电课程设计:洗衣机时控电路_第3页
数电课程设计:洗衣机时控电路_第4页
数电课程设计:洗衣机时控电路_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、电气工程学院数字电子电路课程设计报告书姓 名: 班 级: 学 号: 完成日期: 设计题目目录 设计过程 设计过程设计过程设计过程设计过程设计过程设计过程设计过程设计过程洗衣机时控电路题目要求1规定电动机运行规律为正转20s、停10s、反转20s、停10s、再正转20s,以后反复运行;2要求能显示洗衣机剩余工作时间,每当电机运行一分钟,显示计数器自动减1,直到显示器为“0”时,电机停止运转;3电机正转和反转要有指示灯指示。由要求的正转20s、停10s、反转20s、停10s、再正转20s一个周期刚好是60秒,我们可以用六十进制秒计数器的十位的数字状态来进行运行状态的控制。例如,当秒位在59s40s

2、之间时, 需要门电路来实现秒十位上的亮,。要实现洗衣机剩余时间的显示,根据实际情况它就包括分和秒的显示。首先我们利用四个74LS192十进制减数器设计成六十进制秒计数器和百进制分计数器,然后将可以接高低电平的四个双向开接到它的最高位的四位即就是分的十位,在运行之前通过键盘控制它的个高低电平输入即进行预置数(当然 也可以进行分的个位预置数,在设计中为了体现这种思想,我们只预置分的十位),剩余时间显示的话,只要在六十进制秒计数器和百进制分计数器的个位和十位分别接上一个显示器即可。再者,我们需要一个寄存器来稳定数码管的显示,将此刻秒计数器的十位数稳定输出来控制运动状态灯的显示。由于该功能的实现是以秒

3、为单位进行脉冲计数的,所以需要设计一个秒脉冲源,但我们采用最简单的方法,只要对脉冲源的频率属性进行了设计而已,不做特别要求。设计原理开始前我们通过键盘控制双向开关来对其运行时间进行预置即洗涤时间设置,开始运转后,洗涤时间显示进行减计数功能,当秒计数器的个位减为零时就向十位借数,十位减一(分计时器同理),而在同时通过并行输出寄存器稳定输出秒十位数据,再经过门电路来控制洗衣机运行状态的显示灯,当设置的洗涤时间到后,显示器显示清零。3.系统框图一百进制分计数器剩余时间显示总控制图运行状态显示灯六十进制秒计数 器双向开关预置数图1-1系统框图一. 模块电路设计六十进制秒计数器和一百进制分计数器模块选用

4、具有双时钟输入功能的可逆计数器74LS192来实现,需要的是它的减数功能。1.将它的加计数端UP接到高电平或者+5伏电源上,CLK接地端;2.对于秒个位我们不需要置数,所以将它的异步置数端LD(低电平有效)接到高电平上。3.DOWN接一秒脉冲源,而它的借位输出端BO接到秒十位的信号输入端DOWN,当秒个位的数清零时,BO发送一个借位信号到十位,使得十位减一,而秒个位继续从9减到1。4.对于秒十位,我们同样将它的借位输出端BO接到下一个高位的信号输入端DOWN。5.由于秒个位要不断向它借位,等到秒位全部为零时它的秒十位借位输出端 BO就会向高位的分位的信号输入端DOWN发送一个低电平借位信号。6

5、.为了实现六十进制功能我们让秒十位的输入端B,C接高电平,A,D接低电平(秒个位上的四个输入均接到低电平上)再把它的异步置数端LD和它的借位输出相连,当它要向高位借位时借位输出端 BO发出的低电平信号会使得LD 有效,此时系统自动就将其置为0110即就是6,这就实现了六十进制秒计数器。对于百进制分计数器,同理,我们将它UP接到高电平或者+5伏电源上,CLK接地端。它的异步置数端LD接到高电平上即使之无效,个位借位输出端BO接到十位的信号输入端DOWN,当个位的数减为零时,BO发送一个借位低电平信号到十位,使得十位减一,而秒个位也继续从9减到1,秒位上的输入端A,B,C,D均接到低电平上。当然要

6、显示剩余时间,就需要在每一个减数器上连接一个显示管,即将计数器的四个输出端QA,QB,QC,QD依次连接到显示管的四个输入端1,2,3,4上。再者,电路中是以一秒为脉冲周期进行脉冲输入的,但我们简化了一下这个实验步骤,只是改变了一下脉冲频率,让脉冲周期接近于一秒,即双击脉冲源得到如下图所示对话框,在图中的Freuency栏目中修改频率为0.15KHz即可。 图1-2启动开关运行,仿真结果如下图图1-3六十进制秒计数器和一百进制分计数器注:74LS192的引脚图如下图 图1-4 74LS192管脚其中BO为借位输出端,CO为进位输出端UP为加计数端,DOWN为减计数端,LOAD为异步置数端,CL

7、R为异步清零端。输 入输 出CRLDUPDOWNDCBAQDQCQBQA1*000000*abcdabcd011*加计数功能011*减计数功能 表1-1 74LS192的逻辑功能表当CLR为高电平时(高电平有效),计数器直接清零,当CLR为低电平,LOAD也为低电平(低电平有效)时,数据直接从置数端A,B,C,D植入计数器,CLR为低电平,LOAD为高电平时,执行计数功能,执行加数功能时,减计数端DOWN接高低电平,计数脉冲由UP端输入;执行减数功能时,加数端UP接高电平,计数脉冲由减数端DOWN。LED数码显示管的引脚如图1-5 图1-5 LED数码显示管其中4,3,2,1端为其数据输入端,

8、其它各端口显示器默认有效。预置数对于本题我们只预置分十位数即体现这种思想即可。因为使用器件的输入本来就是一组二值代码,所以我们就给分十位减数器的每一个输入端接一个双向开关,并且每一个开关的外两端分别接+5伏和地端,连接完成后,左键双击开关,设置其键盘控制属性,如下图所示,在上面我们可以选择用键盘上的某个键来分别控制各个开关动作。图1-6这样,在运行开始之前,我们通过单击或者双击键盘上我们设置的键来控制输入端的高低电平输入,即就设置成我们想要的时间,例如0110,设置完成之后,即可运行,且初始显示时间就是我们所设置的六十分钟。在这里我们要注意一点就是在之前我们所设置的百进制分计数器,由于不需要预

9、置数,所以将其两个异步预置数端LD都接到高电平上使之无效,但是如果要预置数就必须将其设置成有效状态即接到低电平上,但是,因为它的置数不受时钟信号的控制,也就是说,洗衣机已经开始运行之后,如果LD端一直有效,分十位上的数就会一直是我们开始给它预置的而不会发生变化,所以我们也给它接了一个双向开关,运行开始前,我们预置数的时候将它接到低电平,置完数后就将其置为无效状态接到高电平上,这样,显示器上所显示的时间就会随着时钟信号的输入而递减,在本题中我们给分十位设置的预置数键从A,B,C,D,LOAD依次为A键,B键,C键,D键,E键。下图为预置数仿真模块图;图1-7 预置数功能模块循环电路因为正转,停,

10、反转,停刚好一个周期是60s,且每种状态的运行时间恰好都是十秒的整数倍所以我们就考虑用秒十位上数的变化来控制洗衣机运行状态的显示。,在一个周期内59s40s之间洗衣机处于正转状态,39s30s之间洗衣机处于停止状态,29s10s之间洗衣机处于反转状态,9s0s之间又是停止时间,所以我们让正转状态显示灯X1=QCQBQA+QCQBQA经化简得X1=QCQB,即就是我们把QB端求反后再用一个两输入与门将其与QC连接送到正转显示灯上,当秒十位的输出为0101(5)或者是0100(4)时X1=1该灯亮,显示洗衣机处于正转状态 ,同理我们让停状态显示灯X2=QC(QBQA),即用一个两输入的同或门将QA

11、和QB连接,再有一个两输入的与门将其输出与求反后的QC连接送到停滞状态显示灯上,当十位的输出为0011(3)或者0000(0)时X2=1,此时显示洗衣机处于停滞状态,同样我们也可以控制反转状态,这样,一个周期也就是六十秒完成后秒十位再向高位借数继续循环以上过程,仿真结果如下图所示如下图所示;图1-8 循环控制模块其中寄存器74LS194的管脚图如下所示 图1-9 74LS194的管脚图A,B,C,D为并行输入端,QA,QB,QC,QD位并行输出端,Sr,Sl分别为右移和左移串行输入端,因为该组合电路主要有四种工作模式,并行输出,右移输出,左移输出和保持,所以管脚S1,S0用来控制工作模式,CL

12、R为异步清零端,CLK为时钟脉冲输入端,当CLR接高电平(低电平有效),S1,S2接高电平时,它将输进的数平行再输出去。其逻辑功能如下图所示:功能输 入输 出CLRS1S0SLSRABCDQ0Q1Q2Q3送数111*abcdabcd右移101*DrabcdDrabc左移110Dl*abcdbcdDl保持100*Q0Q1Q2Q3表1-2 74LS194的逻辑功能表在我们的实验中因为我们需要的是寄存器的并行输出功能,所以我们让S1,S0均接到高电平上 。二.总电路对于总控制电路,我们只需将各个模块连接起来即可,如前面模块设置所示,我们将双向开关连到第一块减数器即分十位减数器的四个输入端A,B,C,

13、D,当然预置数端LOAD也不能少。因为我们要用秒十位上的显示数据来控制洗衣机的三种状态的显示灯,为方便起见我们将十位上的数输出到一个移位寄存器上,利用其并行输出功能将数据输出给各个门电路,经过组合仿真即可得到如下仿真结果;正转仿真 图1-10 正转仿真反转仿真 图-11 反转仿真停止仿真 图1-12 停止仿真三.仿真调试遇到的问题以及分析其实开始的时候我们就认为要实现如题所示功能其基本上就是两大模块的问题,六十和一百进制减计数器和正反转停循环控制模块,计数器相对来说比较简单,而到了循环控制这个模块,因为它有三种状态,开始我们是想着用时序逻辑电路来实现,但最后又想到它的三种状态刚好是一个周期,我

14、们就简化了一下问题即用时间来控制三种状态的灯亮就行了。再如前面模块设计可知我们是利用秒十位上数值的变化来控制电路的正反转停状态的显示灯亮,理论上这个的确是成立的,但是当我们连接好各个模块开始仿真时我们发现,9s0s(显示器显示时间)是停止灯亮 ,59s40s之间时正灯亮,而在六十秒那一秒之内正转状态的灯亮了一下,然后是停止的灯亮,然后再到59s正转灯亮,经过分析我们发现当第一秒即就是最后一秒显示完后,显示器清零,也就是说从9秒到0秒一共是用了9秒,六十秒那一秒应该是停止才对,但是我们没有将其考虑在内,所以状态显示灯就随机亮。所以我们又将六十秒那一秒考虑到停止状态就实现了总图所示完整电路。还有,

15、虽然这个软件用起来比较方便但毕竟是初次接触,好多东西都不熟悉,就象我们在用门电路来实现状态灯时,开始我们选用的与门是74LS08D,但是当我们把它连接上以后,结果却出不来,但理论绝对是没有问题的,然后我们发现我们使用的与门有两种,还有一种是7408N,于是我们就试着全用7408N,结果灯就亮了,为什么用74LS08D就出不来呢?我们分析可能是这种74LS08D只能够用于特定的组合逻辑电路吧。四收获以及体会由于以前接触过仿真软件proteus,对于同一类的仿真软件Multisim上手比较快,所以在较短时间内,就可以简单的应用该软件。虽然会用软件,但画图也不是件容易的事,用时序电路来设计循环运转时,仿真图画了一次又一次,检查了一遍又一遍结果就是出不来,最后我们就简化了一下问题将其改为用门电路控制状态灯亮,就成了现在的结果。我们刚刚做完计数器和时序逻辑电路的实验,我们对其用法都还算都比较熟悉,特别是计数器部分,所以我们很快就做出来了六十进制和百进制计数器。想到将计数器的数据输入端接到一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论