您的当前位置:首页正文

彩灯控制器

2020-06-05 来源:易榕旅网
电子技术课程设计

——彩灯控制器

要求:

学院 :电子信息工程学院 彩灯控制

2008年12月

1.有十只LED,L0……L9

2.显示方式:

①先奇数灯依次灭

②再偶数灯依次灭

③再由L0到L9依次灭

3.显示间隔0.5S,1S可调。

二.总体框图

555定时器(二分频器)→23进制计数器(由74LS161构成)→五线——32

线译码器(由74154构成)→ 或非门(还有与非门和非门)→小灯

设计方案

从课程设计要求来看,要求实现彩灯的23种状态,所以,可以用一个23进制的计数器,从0到22来控制这23种状态。

再画出这23种状态和计数器数字对应的状态图,计算出逻辑式,便可实现彩灯的控制。由于变量过多,逻辑式的化简比较困难,所以我们使用了译码器来得到最小项,直接用最小项进行连接。

题目要求实现频率的选择,可以使用了74161进行分频,从实验箱得到8Hz的脉冲信号,经分频得到2Hz和1Hz的信号,然后用数据选择器进行选择。也可使用555定时器先产生周期为0.5S的波形,然后再用二分频器产生周期为1.0S的波形。我选用第二种方法实现频率的选择。

三.器件选择

一.555定时器

555定时器功能表见表1,其中4脚RD,为复位端,当RD为低电平时,不管其他输人端的状态如何,输出 Uo为低电平。只有当RD为高电平时,输出的状态将由2脚低电平触发端和6脚高电平触发端电压的大小来决 定,因此,在正常工作时,应将4脚接高电平。

当uil<(2/3)Vcc,ui2<(1/3)Vcc时,放电晶体管VT截止,输出端仍。为高电平。

图1 555定时器内部结构及逻辑符号

当uil>(2/3)Vcc,ui2>(1/3)Vcc时,放电晶体管VT导通,输出端uo为低电平。

当uil<(2/3)Vcc,ui2>(1/3)Vcc时,电路亦保持原状态不变。如果在电压控制端(5脚)施加一个外加 电压(其值在0~Vcc之间),比较器的参考电压将发生变化,电路相应的阈值、触发电平也将随之变化, 进而影响电路的工作状态。

表1 555 定时器功能表

二.74ls161(十六进制计数器)

电路如图所示

(1) 由电路写出驱动方程

JQQLDQQLDLDA(LDQ)213122314ALDLDA(LDEPET)KAQ22Q31LDA(LDEPET)

(2) 功能分析

◎ 、当EP=ET=1、LD=1时:

JA=1,KA=1, 即为T触发器,具有计数功能。 例:JD=KD=QCQBQA 当QC=QB=QA=1时,计数。 ◎、当EP=ET=1、LD=0时:

n1QAJAAJAA当JK时,KAAn1QDJDD 这称为置数功能。 ◎、当EP(或ET)=0,LD=1时

JA0即T0KA0 即保持。 ◎、当图中RD=0时

LD不论EP总有Qn10ET 即清零。 由此可得161的功能表

CP的作用时刻:CP为低电平时,C1为高电平;由于JK触发器的>符号知,要求C1为后沿,而对CP来说恰为前沿 有效。

(3) 由分析的结论QA的波形,同理可得QB、QC、QD、的波形

(4) 从波形图可知功能

当清零之后,置数,再后计数。当计数到QDQCQBQA=1111之后,再有一个脉冲到来后QDQCQBQA=0000;同时RCO=1表示进位。这是一个M=16的加计数器,其功能表如上。

(三) 74154(4线——16线译码器) 电路如图所示

G1,G2低电频有效,输出以低电频有效。当G1或G2中有一个是高电频时,GI,G2经与非门输出低电频,所有的输出端被封锁在高电频,译码器被禁止。当门输出高电频时,译码器处于工作状态。

功能表如下图

译码器输出以低电频有效,Y0’——Y15’同时又是A.B.C.D这四个变量的全部最小项的译码输出。

(四)7410(三脚与非门) 逻辑图如下

这个与非门的逻辑功能是 Y = (ABC)′。 (五)74LS04(非门) 逻辑图如下

74LS04是6非门(反相器)他的工作电压5V,他的内部含有6个coms反相器,74LS04的作用就是反相把1变成0,把0变为以1。

(六)7474(双D触发器)

7474是常用的双D中规模集成电路触发器芯片,每片芯片中包含两个带复位. 置位端的上升沿触发的D触发器,其中电路引脚图和每个D触发器的功能真值表分别如下图

7474双D触发引脚图

7474每个D触发器的功能表

上升沿时刻触发,当RD′=0,SD′=1时,触发器被置0;当RD′=1,SD′=0时,触发器被置1;

当RD′=0,SD′=0时,触发器被置1;RD′SD′听同时为1时,触发器在CP上升沿时刻根据输入信号D来确定状态。

四.功能模块

模块一,23进制计数器

使用2块74161扩展成为23进制计数器,采用并行进位方式、整体置数。因为计数器需要23种状态(00000-10110),所以,我先用两片74161连接成256(16×16)进制计数器,然后在输出为10110(22)时,用与非门来控制两计数器的LDN端清零。同时清零信号可作为进位信号输出。每次计数器输出22时,CO端输出高电平。

经验证此模块功能正确。

模块二,5-32译码器

用两片74154(4-16译码器)扩展为5-32译码器。74154只有4个地址输入端A,B,C,D,如果对5为二进制代码译码,就要利用一个附加控制端来实现扩展。A,B,C,D分别对应连接两片74154的A,B,C,D输入端,另外一个输入端E,利用74154的G1N和G2N来实现选择两片之一。高位的O0N――O15N分别表示O16N――O31N。

模块一与模块二的电路设计及验证如下:

经验证此模块功能正确。

模块三,分频器

用74161做23进制计数器进行分频分出8Hz,用数据选择器和一个数据选择器,控制时间间隔分别为0.5s,1s可调。用跳线选择实验箱上的CLK2的183Hz,用模块一的23进制计数器来实现23分频,可得到8Hz的时钟信号,在把得到的信号用74151再次分频,选择B,C端输出,即可得到2Hz和1Hz的时钟信号。此过程太繁琐,我每采用。

用555定时器先产生周期为0.5S的波形,用D触发器(7474N)接成二分频器,把555定时器的输出波形作为二分频器的信号控制端,即可产生周期为1.0S的波形。对于555定时器构成的多谐振荡器,要产生振荡周期为0.5S的波形,设计输出占空比为Q=2%3。选用 c1=10uF, c2=0.01uF。由:

q=R1+R2%R1+2R2=2%3 得R1=R2。

再由T=(R1+2R2)C㏑2=0.5 取C=10uF,代入上式得 3R1C㏑2=0.5 R1=0.5%3C㏑2=24K 因R1=R2,所以R2=24K

VCCVCC5VU2A48U1R1VCC24kOhm_5%4RSTOUT37DIS6THRR22TRI24kOhm_5%5CONGNDC110uFC20.01uF 1LM555CM321~1PR1CLK1D~1CLR7474N1Q~1Q565V

经验证此模块功能正确。

模块四,控制模块

由23进制计数器输入一个五位二进制数(00000-10110),输出彩灯所对应的状态(1表示灯亮,0表示灯灭)。对应的状态图如下: E 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 D 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 最小项 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 0 L1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 L2 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 0 0 L3 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 L4 1 1 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 L5 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 L6 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 L7 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 L8 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 LL91 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 0 1 0 1 0 17 18 19 20 21 22上 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 1 1 1 1 0 0 1 1 1 1 1 0 由上表可得到各个输出对应输入端的逻辑表达式 L0=M0+M1+M2+M3+M4+M5+M6+M12

L1=M0+M6+M7+M8+M9+M10+M11+M12+M13

L2= M0+M1+M2+M3+M4+M5+M6+M7+M12+M13+M14

L3= M0+M1+ M6+M7+M8+M9+M10+M11+M12+M13+M14+M15

L4= M0+M1+M2+M3+M4+M5+M6+M7+M8+M12+M13+M14+M15+M16

L5= M0+M1+M2+M6+M7+M8+M9+M10+M11+M12+M13+M14+M15+M16+M17

L6=M0+M1+M2+M3+M4+M5+M6+M7+M8+M9+M12+M13+M14+M15+M16 +M17+M18

L7=M0+M1+M2+M3+M6+M7+M8+M9+M10+M11+M12+M13+M14+M15+M16+M17+M18+M19

L8=M0+M1+M2+M3+M4+M5+M6+M7+M8+M9+M10+M12+M13+M14+M15 +M16+M17+M18 +M19+M20

L9=M0+M1+M2+M3+M4+M6+M7+M8+M9+M10+M11+M12+M13+M14+M15+M16+M17+M18+M19+M20+M21

然后进行连线。 电路图如下:

L0—L9表示10个彩灯

经验证此模块功能可按要求实现(先奇数灯依次灭

,再偶数灯依次灭,再由L0到L9依次灭。)。

模块五,总控制模块

把频率控制模块(模块三)和彩灯控制模块(模块四)连接起来,就组成了频率可调的彩灯控制器,输入端可产生频率为2赫兹和1赫兹的信号。

电路图如下:

由555定时器构成的多谐振荡器和用D触发器(7474N)接成二分频器,可产生频率为2赫兹和1赫兹的信号,经用2块74161扩展成为23进制计数器,产生用两片74154(4-16译码器)扩展为5-32译码器的输入端,,译码器产生的输出信号作为控制小灯亮灭的输入信号。

经验证总模块功能正确。

五.总体设计电路图

总电路图如模块五,经验证按设计要求功能真确。

.硬件实验情况

软件设计是非常重要的,但是还是纸上谈兵啊,真正要到了 安装调试的时候,这又是一个另一个比设计还头痛的事。

在确定了软件实现正确后,根据设计图纸,用所需芯片根据引脚,逐个连接,在连线的过程中,我按模块依次连接,接完单个模块就做测试,功能正确后再接下一个,我尤其注意了时钟信号的连接,最终得到了令人相当满意的彩灯闪烁效果。

. 改进方法

刚刚开始设计时,计数器的我都采用了CLRN端清零,但在使用中发现这样进位的脉冲过短,影响实验结果。于是全部改为LDN端清零。

.收获与体会

两周的时间虽然很短暂,但从中获益匪浅.首先对数字电路这门课程有了更深的了解,因为课程设计本身要求将以前所学的理论知识运用到实际的电路设计当中去,在电路的设计过程中,无形中便加深了对数字电路的了解及运用能力,对课本以及以前学过的知识有了一个更好的总结与理解;以前的数字实验只是针对某一个小的功能设计,而EDA课程设计对我们的总体电路的设计的要求更严格,需要通过翻阅复习以前学过的知识确立了实验总体设计方案,然后逐步细化进行各模块的设计;其次,在电路仿真的过程中总会出现一些问题,需要我们细心解决,所以这两周下来,我对电路故障的排查能力有了很大的提高;再次,通过此次课程设计,我对实验所用到的软件有了进一步的了解,这对我们以后的工作和学习的帮助都很有用处。

感谢学校给我们这次机会,锻炼了我们的动手能力。通过这次课设让我明白了理论和实际操作之间差距,而且也让我很明确得意识到自己在数电上有很多的知识漏洞,以后应该多钻研一下。

最后再次感谢老师的辅导以及同学的帮助。

因篇幅问题不能全部显示,请点此查看更多更全内容