多路彩灯控制器课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、课程设计题目:多路彩灯
二、任务和要求:
任务:设计一个多路彩灯控制器,能控制8路彩灯,彩灯用发光二极管模拟。
要求:能演示至少3种花型,花型自拟。
彩灯明暗变换节拍为1.0s和2.0s,两种节拍交替运行。
目的:(1).掌握移位寄存器的移位,置位功能。
(2).掌握TTL集成电路驱动发光二极管的设计方法。
(3).熟悉中、小规模数字集成电路芯片,掌握基本数字电路设计方法,
通过实践提高数字电路连接、调试能力。
三、器件
四、总体方案
方案一:
模块图如下(箭头示数据流的方向和内容):
分析:此方案设计花型种类多,实现简单,使用的芯片数少,但后三种花型变化简单。
方案二:
共设计3种花型,每种花型均有16种状态,花型3的前8种状态和后8
其模块图如下:
分析:此方案花型变化多样,但电路复杂,使用的芯片数多,花型少。
总结:方案一电路简单,所使用的芯片数目少,而且花型种类多,在实现分频
时,二使用了74LS74和74LS00,而方案一只用了一片74就实现了。在数据选择模块,方案一用了一片151就可实现节拍的选择。而方案二电路复杂,花型少。故选择方案一。
五、 单元电路设计:
选择方案一,实现电路简单,共使用了9片芯片。 (一)脉冲发生电路
脉冲发生电路使用了555脉冲发生器和若干器件组成。具体参数:555芯片一片,R1为4.7,R2为150
,C1为0.01uf ,C2为4.7uf ,电源电压为5V 。
其电路图如下:
S1,S0(控制信息);清零信号
其波型为5V的方波。
(二)脉冲分频电路
脉冲分频电路是由555提供脉冲,由74LS74实现分频。其电路图为:
555电路和分频出的波形分别如下:
(三)脉冲选择电路
脉冲选择电路由一片74LS151组成,并有计数电路的控制,每32个脉冲数据选择变化一次,及选择CP信号或分频的信号。其电路如图:
(四)计数电路
计数电路是由两片74LS161和一片74LS04及一片74LS20组成,其实现电路的计数,
其电路图如下:
其有关波形为:
因为电路中有8个灯,因此计数电路每计数八个,SR信号变化一次,然后一是按次循环。对于频率选择电路,每32个CP,clk变化一次,即低电平和高电平的变换。其控制着其后的控制电路和频率选择电路。
(五)彩灯控制电路
彩灯控制电路由两片74LS194和一片74LS04组成。其控制对彩灯亮灭的控制,实现各种花型。
其电路图如下:
完整电路图如下(因为555电路在仿真时,若用5V电源,则输出电压太小,不能得到合适的波形,所以要把电压加大,把参数减小,才能输出合适的波形)。
六、发生的问题和解决方法
实验中,我按照自己画好的电路在面包板上连接好之后,进行加电测试,结果什么都没显示,后来我又检查了几遍,和我画电路图一样,但始终实现不了,不仅浪费时间,最终也没实现。后来我就用Mutsim10.0进行了仿真,电路没有实现,于是我有反复进行了修改,仿真电路实现了,于是我就按照仿真电路连接了电路,终于实现了,而且用的时间也少。所以对电路设计者来说,仿真是很重要的。
在连接电路时,就算按照仿真好的电路图,有时间也会实现不了,在仿真上不会出现延时,但在实际电路中会出现这种情况,对于这种情况仿真软件也没法
解决,所以只有在设计电路时,应该尽量减少实际中的延时。
有时间在实际电路中能实现,但在仿真中实现不了,应该想办法改变相关参数,或用用其他功能相同的器件实现,只要在实际电路中能实现即可。
自启动问题与异步清零的麻烦。我开始的设想是每种花型结束于全0状态,此状态触发模3计数器加1,触发下一种花型。但这种设计存在问题,如果74LS194的初始状态是偏离状态,那么移位可能使花型混乱,且有可能永远不能到达全0状态,从而不能进入循环圈。我想过多种改进方案,最后选择了用计数器与74LS194同步工作,由低位计数芯片触发高位计数芯片(模3)计数,高位片值改变时向74LS194发出清零信号。而我的每种花型都是从全0状态开始,这样就解决了自启动问题。为设计简单,我将每种花型都设计为16种状态(低位计数芯片模16),这样,问题又出现了。用低位片的CO端取反后接入74LS194的清零端是最简单的方法,但74LS194是异步清零,这样会使前一种花型的最后一种状态和后一种花型的第一种状态都为全0,因为低位片为1111时CO即为1。这个问题花了我较长的时间,后来我想了一个折中的办法,将CP脉冲的非跟74LS161低位片的CO相与非后接入两片74LS194的CLR端,但这样每种花型的最后一种状态的长度只有半个CP脉冲周期。我又想过将CP脉冲跟74LS161低位片的CO相与非,我对这种方法抱有很大信心,但在EWB上模拟的结果还是全0状态持续了两个CP周期(花型的第1个非全0状态开始了一瞬就又被清零),后来我分析,花型的第1个非全0状态(第2个状态)开始时,CO从1变到0,CP 从0变到1,但CP变得比CO早一瞬,因此这一瞬间CO与CP都为1,清零信号有效。后来,我准备接受花型的最后一个状态只持续半个CP周期的那种方案。到了第二天,准备开始连电路时,我不由地又在纸上画起CP、CO的波形来。忽然,我想到,在那种方案的基础上把CP的非接到74LS194,让74LS194变为“下降沿”触发,使第1个非全0状态提前半个周期开始,这样,全0状态的长度为1个CP周期而不是以前的1.5个,最后一个状态被提前了半个周期,因而长度达到1个周期。
不论计数电路还是74LS194发生了偏离,最多经16个CP周期便可恢复。自启动问题圆满解决!
七、总结
对于用电路板上实现电路,首先应该做电路仿真,这样才能节省时间。一开始我就在是实验板上实现电路,结果用了两天时间,电路没有实现,浪费了时间。后来又用仿真软件进行仿真,用这种方法,可以随时简单的对电路进行改正,直到实现为止。
在连接电路时,应该现对电路总体进行规划好位置,以节省导线,而却电路连接出来也好看,尤其是在真正设计电路时,合理布局将能节省成本连接电路应该细心,根据仿真的电路图逐一按模块进行连接,否则,一个地方出错了,将会影响整个电路的实现,作为设计电路者,我们应该养成这样的习惯。当电路出现错误时,应该学会检查电路的方法,如,用万用表进行检查。
最后在设计电路时,应该对电路进行不断地改进,以达到电路最简,这样可以节省成本,对于一个电路工作者来说也十分重要。。