单片机控制的循环彩灯控制系统的设计实习报告

2025-02-14|版权声明|我要投稿

单片机控制的循环彩灯控制系统的设计实习报告(5篇)

1.单片机控制的循环彩灯控制系统的设计实习报告 篇一

多路彩灯控制器的设计

一 课程设计题目(与实习目的)

(1)题目:多路彩灯控制器(2)实习目的:

1.进一步掌握数字电路课程所学的理论知识。

2.熟悉几种常用集成数字芯片,并掌握其工作原理,进一步学会使用其进行电路设计。

3.了解数字系统设计的基本思想和方法,学会科学分析和解决问题。

4.培养认真严谨的工作作风和实事求是的工作态度。

5.作为课程实验与毕业设计的过度,课程设计为两者提供了一个桥梁。二 任务和要求

实现彩灯控制的方法很多,如EPROM编程、RAM编程、单板机、单片机等,都可以组成大型彩灯控制系统。因为本次实习要求设计的彩灯路数较少,且花型变换较为简单,故采用移位寄存器型彩灯控制电路。(1)彩灯控制器设计要求

设计一个8路移存型彩灯控制器,要求: 1.彩灯实现快慢两种节拍的变换;

2.8路彩灯能演示三种花型(花型自拟); 3.彩灯用发光二极管LED模拟;

4.选做:用EPROM实现8路彩灯控制器,要求同上面的三点。(2)课程设计的总体要求

1.设计电路实现题目要求;

2.电路在功能相当的情况下设计越简单越好;

3.注意布线,要直角连接,选最短路径,不要相互交叉;

4.注意用电安全,所加电压不能太高,以免烧坏芯片和面包板。

三 总体方案的选择

(1)总体方案的设计

针对题目设计要求,经过分析与思考,拟定以下二种方案:

方案一:总体电路共分三大块。第一块实现花型的演示;第二块实现花型的控制及节拍控制;第三块实现时钟信号的产生。主体框图如下:

方案二:在方案一的基础上将整体电路分为四块。第一块实现花型的演示;第二块实现花型的控制;第三块实现节拍控制;第四块实现时钟信号的产生。并在部分电路的设计上与方案一采用了完全不同的方法,如花型的控制。主体框图如下:

(2)总体方案的选择

方案一与方案二最大的不同就在,前者将花型控制与节拍控制两种功能融合在一起,是考虑到只要计数器就可以实现其全部功能的原因,且原理相对简单。这样设计,其优点在于:设计思想比较简单。元件种类使用少,且都较熟悉易于组装电路。缺点则是:中间单元电路连线过于繁多,容易出错。且可能出现线与关系。要避免这些,则势必造成门电路使用过多。导致电路不稳定,抗干扰能力下降。而后者则将以上两种功能分开设计,各单元电路只实现一种功能。其优点在于:电路设计模块化,易于检查电路,对后面的电路组装及电路调试带来方便。缺点则是:节拍控制电路采用可编辑逻辑电路,原理相对复杂,不易理解。花型控制电路简单,花型也比较简单。基于以上原因,加上为了确保短时间内完成课程设计,我选择了连线少,易于组装和调试的方案二。

四 单元电路的设计

1.设计所使用的元件及工具:

74LS161(四位二进制同步计数器)----------------------2个; 74LS194(移位寄存器)------------------------------2个; 74LS151(八选一数据选择器)---------------------------1个; 74LS74(双D 触发器)---1个; 74LS20(双四输入与非门)----------------------------3个; 74LS04(六非门)-----2个; 发光二极管--------------8个; 555----------------1个;

电容: 4.7μf---------------1个;

0.01μf--------------1个;

电阻: 150kΩ

-----------------------------1个;

100Ω---------------1个; 4.7kΩ----------1个;

实验板一个; 万用表一个; 钳子一个; 导线若干。2.各个单元电路(1)花型演示电路

由二片移位寄存器194级联实现。其八个输出信号端连接八个发光二极管,用其输出信号控制发光二级管的亮灭实现花型演示。三种花型变换样式

花型1:8路灯分两半。从左至右渐亮,全亮后,再分两半从左至右渐灭。循环两次;

花型2:从中间到两边对称地逐次渐亮,全亮后仍由中间到两边逐次渐灭。循环两次;

花型3:从左至右顺次渐亮。全亮后逆序渐灭。循环两次。

移存器输出状态编码表

我的设计是每种花型完整显示两遍,所以三种花型完全显示一遍需要的总结拍数为64,即1~16显示第一个花型,17~32显示第二个花型,33~64显示第三个花型。

要用194实现三个花型的连续显示必须对两片194的S1、S0和SL、SR一句节拍的变化进行相应的改变。现将两片194分为低位片1和高位片2,再将其输出端从低位到高位记为L1~L8。列出各花型和其对应的194的S1、S0、SL、SR的输入信号及节拍控制信号列表如下:(用^Li表示Li的取非)

经过分析可以得到控制194高低位片的左移右移变化的控制量。用QA~QH表示161从低位到高位的个输出端。控制结果表达式如下:

电路图如下:

(2)花型控制信号电路

由二片161级联的模128(三种花型节拍每种显示两遍,再总体重复一遍的总节拍数)计数器。

161的级联用的是同步,并用^QH清零。

当三种花型全新显示一遍后(总共64拍)161的输出变为00000100所以将161高位片的Q2(即QG)信号输给节拍控制电路的151的A来通过节拍控制电路改变第二遍花型显示的频率。161的CP脉冲来自节拍控制电路中74的输出端Y。

电路图如下:

(3)节拍控制电路

由一片151和一片74级联实现。整体上实现脉冲频率的变换,即交替产生快慢节拍。

令74的Vcc,CLR,PR都接高电平,将^Q的输出接到D端,Q端的输出接到151的D1端。令151的D0,D2,D3,D4,D5,D6,D7,B,C,G’,GND接低电平,Vcc接高电平,D0接时钟信号的CP脉冲,A端接由花型控制电路的QG输出。

所以Y端的输出就为:Y=CP·^A+Q·A

(Q是74D触发器的输出端)由D触发器具有记忆功能,记录上一个状态,所以在每一个CP脉冲的上升沿,Q输出为上一次的记录(即一个脉冲)。也就比时钟信号电路的CP脉冲慢了一拍。

所以通过A为0或1选择Y端输出的脉冲的频率。A端接的是161的高位片的QG即当到达第64拍时QG为1接下来的65~128拍为变慢后的脉冲输出。电路图如下:

(4)时钟信号电路

由一片555加上适当电容及电阻实现。电容取:4.7μf

0.01μf 电阻取:150 kΩ

4.7 kΩ

电路图如下:

五 总体电路图(见附页)六 电路组装完成后,实际测量的各个单元电路的输入、输出信号波形

1.基本CP脉冲产生电路波形图与分频电路波形图

2.测试波形:(列依次为CP脉冲,低位片194A,B,C,D,高位片194A,B,C,D)花型一:

花型二:

花型三:

七 电路组装、调试过程中发生的问题及解决的方法。

我的数字电路课程设计总共用了4天完成的,这4天每一天都有所收获,都有所进步。起初想预习但不知道都该看些什么也不知道从何看起,因为对自己要设计的东西一点思路都没有。所以第一天去了只知道要用到CP脉冲产生电路,因为书上有完好的电路图直接照着连就OK。可是问题并不是想的那么简单,因为我一开始操作就不知道怎样布线才合理,常出现看着电路图不知道这条线该走哪儿连过去,看过老师的示范后,对老师的布线法真是无限敬佩,聪明呀。所以当然要学习了,于是自己也那样连了。连完时钟电路后,满以为会很成功,因为我的电路连得很简洁。结果是加电后LED二极管居然常亮,检查电路没什么问题,我开始不知所措,于是去咨询其他同学,发现好多同学都有和我一样的问题,有同学说那可能是线的而问题,也可能是板子的问题,也可能是电容的正负极插反了„不管是什么问题,一个个排除吧。最终其实也没很确切的知道问题的所在,因为不同的方法都在试具体是哪个也不确定了。我觉得最可能是电容的正负极和LED的插稳与否的问题。

第二天去我拿了个数码管来测试,结果连好了的电路加电测试结果却完全是错误的显示,我检测了电路测试了电位,都正确。老师过来看时让我加电他看看,结果居然是我给的电压太高了,我在加电是不小心把电压调的很高,自己还没在意,幸好没把芯片很板子烧坏。

在接下来的几天中我看了一些参考书籍,大概有了自己的思路,于是开始一一试验,我用了<<数字系统设计——数字电路课程设计指南>>(北京邮电学院出版社 高书莉编)所提供的三种花型,所以刚开始的几天就一直在想怎样将三种花型衔接起来,前两天是一直都没相处具体的解决方法。后来我就不停地分析花型的变化与161加法器数值的增加两者之间的规律。我发现自己好像有点太急于求成首先就把问题带到了最不容易解决的地方,于是我改变了思路开始不复杂的先简单化,三个花型的演示先不管,一个花型弄好再说。说行动立马行动,先连好了时钟信号电路再连了161的级联电路,先用清零端制1同步CP脉冲,还连了194的级联电路直接给低位片和高位片都加右移信号。先测试了161的工作状态是否正常,正常后又测试了194 的移位寄存功能,都正常。说明芯片和板子都很正常。将下来的一天我又通过分析找到了前两种花型通过节拍控制其变化的方式,于是按照自己的设计连了电路图,测试过电压后,加电测试。结果完全正确,那一刻真挺欣慰,觉得这也是一件挺开心的事情。接下来的问题就是如何把第三种花型也加进去。因为我选的第三种花型稍有点复杂,因为两个194是同步级联的但在花型显示中看到是似乎是第一个先工作等到前4个灯都亮后高位片的194才开始工作,所以考虑将它怎样加入费了我好长时间。问题的关键还是在如何用最少的门电路将其加入。最后的设计我用了12个芯片,应该是很多了,可是依据我设计的花型,也只能得到这样的设计,到目前为止我也只找到这样的最简连接方案。

其实在电路组装过程中,遇到的最大问题是,芯片分布不够合理,无法很好的布线。于是在分析了我的设计后计算了要用芯片的个数和个芯片之间的关系,按照各个控制电路的走向较合理的插好了芯片。其次就是布线,因为要求不准交叉,且横平竖直,所以在保证连通的情况下,在布线上也下了不少工夫,虽然布线的成绩不高只得到B+,但我想我是用心考虑过的,而且尽力做到我认为很合理的布线,也就是用线的颜色有点混乱,因为用了很多从之前面包板上拆下来的旧线,所以整个板子看起来有点杂乱。也因为我的设计中要用3个74L00和2个74L04,12个与非门电路的连接却是非了我好大的功夫。于是连线也就不十分合理了。

调试过程中,第一轮用万用表欧姆档测试,就遇了实验板上有插孔不通的情况,导致芯片不能正常工作。相对于别的办法,我选择了导线显示连通,因为其更明晰,更易实现。对于高阻导线则只能换掉。第二轮接电后,用万用表的电压档测试单元电路的状态。如:时钟信号电路的信号是否正常产生,控制信号电路中的计数器能否正常计数,D触发器能否每2拍翻转一次„„最后在整体上测试一遍。

在整个调试完成后,却遇到的新问题:彩灯演示时有时正常有时混乱。在排除其它可能的情况下,我仔细检查各端子的连接情况,发现清“0”端在清“0”后悬空了。将其插到电源正极后,发现问题解决了。八 分析和总结。

本次课程实习我虽然用了一个星期的时间就全部做完,但整个过程我都认真的完成了,而且从中收获很多。可以总结为以下的几点:

1,对数字电路知识的巩固与提高

这次课程设计主要是运用数字电路逻辑设计的一些相关知识,在整个实习过程中,都离不开对数字电路课程知识的再学习。我在最开始,就先将实习用到的知识通过翻阅数电书回顾了一遍(这也是对这门课的复习,给以后的复习备考减少了很多负担),这样的回顾让我对知识的理解更加透彻,对后来的快速设计起了很好的铺垫作用。

2,学会了理论联系实际

课程设计,通过选择的题目,根据要求,运用所学知识将其付诸实践来完成。这并不是在课堂上的单纯听懂,或者课后看书过程中的深入理解,这需要的是一种理论联系实践的能力。理论知识往往都是在一些理想状态下的假设论,而实际的动手操作则完全不同,需要考虑实际中的很多问题。有些知识在理论上可能完全没错但到了实际中则不然。比如在动笔做题时我们是不用考虑导线的电阻的,但在实际中,导线电阻有时是会带来时延造成花型变化的错乱,所以我们应尽量在连接电路时选择最短路径。

3,学会了如何运用电路板、芯片、导线等组装各种功能的电路;

虽然这不是第一次用电路板,因为之前的课内实验也用过,但当时的运用也只是插些导线和电阻电容之类的,用了电路板的很小部分。这次的实习中应用了整块板子,实习后对电路板的组成完全了解了,并能熟练运用。实习中通过对电路的连接也懂得了如何通过设计的分析对所连电路的整体布局,如何更好的放置芯片在最合适的位置。在导线的连接上,如何选择导线走向是关键,我们应该尽量保证所连电路的简捷,宁短勿长,合理布线。一个完美的作品不仅要能很好的完成要求实现功能,还要在感官上给人美的享受。所以站在美的角度对自己的电路进行改良是很必要的。

4,和同学的互相协作共同进步

在实习中经常会遇到一些自己可能暂时无法想明白的问题,请教同学或老师是很好的做法,节省时间也会从别人上上学到更多。在设计时和同学相互交流各自的想法也是很重要的,不同的人对问题的看法总有差异,我们可以从交流中获得不同的idea,其他人的设计一定有比你出色的地方,很好的借鉴,并在大家的商讨中选择最优方案最终一定会得到最好的设计方法。

5,其他

课程实习设计是开端,连接是关键,测试是必须。所以实现过程中不仅要求对知识的掌握要足够准确与精通,更要有绝对的耐心与细心。连接电路时一定按照自己的设计图仔细连接这会对后面的测试起到很好的铺垫作用。在后面查错时就不用花费精力在查线上,可以给减少很多后续工作。我在这次的实习中其实也有连错线的时候,但我很快检查出来调整了那根线的连接,结果测试电路后花型显示完全正确。没有费太多的功夫在检查电路上。

九 参考文献。

<<数字电路逻辑设计>>

高等教育出版社 王毓银编 <<数字系统设计——数字电路课程设计指南>>

北京邮电学院出版社

高书莉编

十 过程考核表和成绩鉴定表

(这个具体内容老师会给你的,每个学校都有点不同在这我就不发了。)

下面是总体电路图,就是截图有点小,可能看不太清楚,其实就是前面每个分模块的组合。。大家看看就明白了。

2.单片机控制的循环彩灯控制系统的设计实习报告 篇二

LED (发光二极管) 在导通后根据制作材料的不同能向外发出相应颜色的光, 通过适当的光的比例搭配, 可以产生五颜六色的光, 实现绚丽的效果。另外由于其成本低、易于控制, 因此在我们的生活中应用十分广泛。本文以STC 15F2K61S2单片机为核心控制芯片, 搭配相应的外围电路, 完成彩灯控制器的设计与制作, 实现彩灯控制的不同效果[1,2]。

2 彩灯控制器的整体设计

2.1 设计要求

采用STC 15F2K61S2单片机控制32个3色发光二极管, 实现红外遥控控制, 在发光二极管按程序要求进行灯光效果展示时, 通过电路板上的M P3模块和LC D液晶显示模块分别完成歌曲播放机歌词显示。

2.2 整体设计方案

彩灯控制器系统包括主控单片机模块、LED模块、红外模块、M P3模块、LC D液晶显示模块, 通过红外模块接受红外指令, 由单片机模块去控制彩灯的闪烁效果, 并实现M P3模块播放歌曲的同时在LC D液晶显示屏上显示歌词。系统整体设计方案示意图如图1所示。

3 硬件电路设计

主控芯片选择的是STC 15F2K61S2, 其具有速度快、片内资源丰富等特点。LED模块对应32个3色发光二极管采用点阵的形式通过单片机的I/O来控制。红外模块采用V S1838红外接收管, 稳定性好、低功耗、抗干挠能力强、接收距离长。液晶显示模块选用的是128*64液晶模块, 采用串口通信。音乐播放选择的是G D 5600M P3模块, 具有24位D A C输出, 多种控制模式, 可以通过单片机串口进行控制播放指定的音乐。

硬件主电路设计如图2所示。

制作的PC B板如图3所示。

4 程序设计

彩灯控制器的功能实现需要通过单片机编程来完成[3,4]。系统软件设计包括主程序和中断服务程序。系统初始化后根据收到的红外遥控指令选择不同的模式, 实现各种显示效果, 并使M P3模块和液晶显示屏协同工作。系统主程序流程图如图4所示。

5 制作与调试

按照相应的元件位置及型号完成彩灯控制器电路的焊接与组装。电路制作完成后, 将程序下载到单片机芯片内部加以验证。通过测试, 该彩灯控制器性能稳定, 易于控制, 性价比高, 其系统实现思路和方法对于各种彩灯控制器的设计与改进具有一定的参考价值和实际意义。

摘要:介绍了一种彩灯控制器的设计与实现方案, 系统以STC15F2K61S2单片机作为主控核心, 通过编程控制相应的LED模块、MP3模块、液晶显示模块及红外控制模块协同工作, 实现彩灯的各种控制效果。

关键词:彩灯,控制器,单片机,红外

参考文献

[1]张梅梅.单片机控制发光二极管的开发[J].与应用动力与电气工程, 2010.

[2]王晓鹏.3组12只LED循环灯[J].电子制作, 2008.

[3]熊建平.基于Proteus压控变色彩灯控制电路设计[J].电子设计工程, 2014.

3.单片机彩灯心得体会 篇三

艺术彩灯控制系统设计

二、设计内容

1.设计并实现具有复位功能的单片机小系统。

2.利用单片机进行灯光的场景开关控制。

3.利用单片机进行灯光的循环点亮控制及速度变化控制。

4.利用单片机进行灯光的色彩连续变化效果控制。

5.利用单片机进行灯光的三色联动定时控制。

6. 配合2至5项中功能,实现液晶屏输出功能或状态信息。(受器件条件限制,只需仿真方式实现。)

7. 以调节5或4项中的时间为例实现基于4X4键盘的输入功能。(受器件条件限制,只需仿真方式实现。)

三、设计要求

1.能启动、停止;

2.能通过开关进行功能选择;

3.要体现循环、组合和色彩变化的控制功能和效果,实现三色联动定时控制,

控制变化规律的类型或功能不少于5种;

4.要有完善的课程设计报告

四、设计流程

本课程设计是采用80C51单片机设计艺术彩灯,通过keil进行c语言编程,通过protues进行软件硬件仿真。本设计成果,主要通过按键开关对彩灯进行控制,包括灯光的场景开关控制、灯光的循环点亮控制及速度变化控制、灯光的色彩连续变化效果控制、灯光的三色联动定时控制,以上内容均基于面包板完成。在4X4矩阵键盘和LCD液晶显示方面均在仿真下完成。

五、设计方案

(一)硬件设计

(1)单片机最小系统设计

80c51单片机最小系统是由晶体振荡器和复位电路构成,如图所示 晶振电路: 复位电路:

(2)单片机外部电路设计

4.基于单片机的时钟控制器设计 篇四

1.设计目的与要求

设计出一个用于数字时钟的控制器,准确地理解有关要求,独立完成系统设计,要求所设计的电路具有以下功能:

(1)显示: 可以显示时、分和秒

(2)调时功能:时(0-24)、分和秒(0-60)可以连续可调(3)时间日误差< 2秒(4)增加整点报时功能(5)增加闹钟任意设定功能 2.设计内容

(1)画出电路原理图,正确使用逻辑关系;(2)确定元器件及元件参数;(3)进行电路模拟仿真;(4)SCH文件生成与打印输出;(5)PCB文件生成与打印输出; 3.编写设计报告

写出设计的全过程,附上有关资料和图纸,有心得体会。4.答辩

在规定时间内,完成叙述并回答问题。

目录

1.引言…………………………………………………………………………-1-2 总体设计方案………………………………………………………………-1-2.1 设计思路…………………………………………………………………-1-2.2 方案确立…………………………………………………………………-1-2.3 设计方框图………………………………………………………………-2-3 设计原理分析………………………………………………………………-2-3.1 系统硬件电路设计 ……………………………………………………-2-3.2 主控器件AT89S51 ………………………………………………………-2-3.3 译码器74HC245 …………………………………………………………-3-3.4 显示电路 …………………………………………………………………3-3.5 按键电路…………………………………………………………………-4-3.6 复位电路…………………………………………………………………-4-3.7 蜂鸣电路…………………………………………………………………-5-3.8 时钟电路…………………………………………………………………-5-3.9 总体原理图………………………………………………………………-5-3.10程序框图…………………………………………………………………-5-4 结束语………………………………………………………………………-7-参考文献………………………………………………………………………-8-附录 1 电路总原理图 ………………………………………………………-9-附录 2 总程序………………………………………………………………-10-

基于单片机控制的时钟控制器

摘要:本设计以Atmel公司的AT89S51单片机为控制系统的核心,模型采用单片机作为主控制器,以汇编语言为程序设计的基础,设计的一个用两个四位一体数码管串口显示的时钟控制电路,包含了时钟控制电路的基本功能:数码显示,时间调整,闹钟设定,秒表显示等,按照二十四小时循环,具有调节方便,简单实用,可靠性强的优点,有很高的利用价值。关键词:单片机 AT89C51 74LS245 数码管 引言

数字钟是采用数字电路实现对时、分、秒及数字显示的计时装置,广泛用于个人家庭、车站、码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。为了适应时代的潮流,本设计采用AT89S51单片机为核心,使得计时的精度有了很大的提高,而且调节也变的简单实用,采用数字显示也跟加的直观方便。总体设计方案

2.1 设计思路

本设计采用AT89S51单片机为控制核心,产生精确的时钟震荡,来控制数码管显示电路来进行数码显示,外围电路主要有复位电路,震荡电路,按键电路,显示电路,蜂鸣电路组成;复位电路可及时的对单片机进行复位,恢复到初始的状态,震荡电路主要用于计数,定时,产生合适的波特率,按键电路主要是给人们提供一个合适的人机对话的界面,方便人们进行实时的调节,显示电路主要用于数码的显示,蜂鸣电路用于闹铃设定等辅助功能。2.2 方案确立

本设计主要有包含了时钟电路,按键扫描,显示电路等几个部分。由单片机实现时钟功能单片机内部具有定时器,可方便实现定时功能。按键电路:键盘分为矩阵式键盘扫描电路和独立式按键电路。。矩阵式键盘电路,此类键盘是采用行列扫描方式,优点是当按键较多时可以降低占用单片机的I/O口数目,缺点是电路复杂且会加大编程难度。独立按键电路,每个键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式。缺点是当按键较多时占用单片机的I/O数目较多,优点是电路设计简单,且编程极其容易。由于该系统采用了常规钟表式的校对方式,用键较少,系统资源足够用,故采用了独立按键电路。显示电路分为:静态显示法与动态显示法,由于静态显示法需要数据锁存器等硬件,接口复杂一些,又考虑到时钟显示只有6位,且系统没有其它复杂的处理任务,所以决定采用动态显示法。2.3 硬件设计方框图

电路的设计以AT89S51单片机为核心,包含了按键电路,复位电路,震荡电路,数 码显示电路,整点报时电路等一系列独立环节,下面介绍一下电路设计过程中的总体框图,如图1所示。

图1 时钟电路总体框图 设计原理分析

用AT89S51单片机控制的数字时钟电路,外接震荡电路,按键电路,显示电路,蜂鸣电路等:用单片机电路P0口来输出7段码数据,P2.0~P2.5口作列扫描输出;按键用P1口控制,分别用于调节时,分,以及秒表和闹钟的设定;P1.7口接5V的小蜂鸣器,用于按键发音以及定时提醒,整点报时提醒等;采用74HC245作为数码管的段码驱动,为了提供共阳LED数码管的列扫描驱动电压,用三极管8550做电源的驱动输出;采用12MHZ晶振,可提高秒计时的精确性;在软件设计方面,应完成时钟控制电路的各项要求。

3.1 系统硬件电路设计

系统硬件电路主要组成:主控制器AT89S52、译码器74HC245、显示电路、蜂鸣器电路,复位电路时钟电路。3.2 主控器件AT89C51 AT89S51是一款低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。管脚如图2所示。

图2 DIP-40封装89C51引脚图

3.3译码器74LS245 74LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。当89S51单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。当片选端/CE低电平有效时,DIR=“0”,信号由 B 向 A 传输;(接收)DIR=“1”,信号由 A 向 B 传输;(发送)当CE为高电平时,A、B均为高阻态。P0口与74LS245输入端相连,E端接地,保证数据线畅通。管脚如图3所示。

图3 74LS245管脚图

3.4 显示电路

LED显示块是由发光二极管显示字段的显示器件。这种显示块有共阴与共阳两种结构。共阴极LED显示块的发光二极管阴极共地,当某个发光二极管的阳极为高电平时,发光二极管点亮。共阳极LED显示块的放光二极管阳极并接。显示块与单片机接口非常容易,只要将一个8位并行输出口语显示块的发光二极管引脚相连即可(AT89S51需要加上拉电阻)。此次电路采用2个4位共阳LED数码管,从P0口输出段码,列扫描用P2.0~P2.7来实现。如图4所示。

图4 74LS245驱动段码显示电路图

3.5 按键电路

按键调节电路有四个独立的按键接到P1口的P1.0—P1.3端口,控制着电路的调时,调分以及秒表功能和闹钟的设定。具体电路如下图5所示。

图5 按键电路图

3.6 复位电路

AT89S51单片机的复位电路,如图5所示中左边电路。在RESET输入端出现高电平时实现复位和初始化。在震荡器运行的情况下,要实现复位操作,必须使RST引脚至少 保持两个机器周期的高电平。在CPU在第二个机器周期内执行内部复位操作,以后每一个机器周期重复一次,直至RST端电平变低复位期间不产生ALE信号。当RST引脚返回低电平以后,CPU从0地址开始执行程序。3.7 蜂鸣电路

蜂鸣器是广泛应用于各种电子产品的一种元器件,它用于提示、报警、音乐等许多应用场合。三极管8550作蜂鸣器的驱动,增加了蜂鸣器的驱动电流。蜂鸣器的正极性的一端接到三极管的集电极,另一端连接到地,三极管的基极由单片机的P1.7管脚控制,底电平时蜂鸣器响,高电平时不响。另外,蜂鸣器的声音大小及音调可以通过调整P1.7管脚的置低时间及输出的波形进行控制。蜂鸣器的连接电路的原理图如图5所示。3.8 时钟电路

AT89S51内部片内有一个由反相放大器构成的振荡电路,XTAL1和XTAL2分别为震荡电路的输入端和输出端。时钟可以由内部方式产生或外部方式产生。在XTAL1和XTAL2引脚上外接定时元件,内部震荡电路就产生自己震荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。外部方式的时钟电路,XTAL1接地,XTAL2接外部振荡器。一般要求输入方波信号的频率低于33Mhz。本文设计的系统采用的是内部方式的时钟电路。如图6所示。

图6 时钟电路原理图

3.9 总体原理图

见附录1 3.10程序框图

主程序如图7所示首先是初始化部分,主要是计时单元清零,中断初始化,启动定时器工作,然后是调用显示子程序,接着是判断有无按键。无按键则回到调用显示子程序处;有按键,则执行按键处理子程序,执行完后回到调用显示子程序处,重复循环。定时器T0中断如图8所示

图7 主程序流程图

图8 中断程序流程图 结束语

三周实习很快就过去了,通过自行设计、焊接和调试一个单片机系统,我熟悉了单片机基本的开发流程和单片机的深入学习。在完成这个设计的同时,我复习了书本上的许多相关内容,受益匪浅。因此我在获得理论知识的同时,实践中也获得了许多书本上没有的东西。提高了调试以及查找并解决问题的能力,我深入了解了焊普通元件与电路元件的技巧、数字时钟的工作原理及其它各电路元件的作用等。这些知识不仅在课堂上有效,对以后的学习工作有很大的指导意义,在日常生活中更是有着现实意义;也对自己的动手能力是个很大的锻炼。实践出真知,纵观古今,所有发明创造无一不是在实践中得到检验的。没有足够的动手能力,就奢谈在未来的科研尤其是实验研究中有所成就。最后,感谢老师对我们这次实习的辛勤指导和帮助。

参考文献

[1] 李光飞,楼然苗,胡佳文编著.单片机课程设计实例指导.北京:北京航空航天大学出版社.2004 [2] 黄仁欣主编.单片机原理及应用技术.北京: 清华大学出版社.2005.[3] 高吉祥主编.电子技术基础实验与课程设计.北京:电子工业出版社.2002 [4] 肖玲妮.印刷电路板设计教程.[M].北京:清华大学出版社,2003.[5] 康华光.电子技术基础.[M].北京;高等教育出版社,2006.[6] 余小平等.电子系统设计.[M].北京:北京航空航天大学出版社,2007.附录1: 11 电路总原理图

附录2: 总程序

ORG 0000H LJMP START ORG 000BH LJMP INIT0 START: MOV 70H,#0 MOV 71H,#0 MOV 72H,#0 MOV 73H,#0 MOV 74H,#0 MOV 75H,#0 MOV 76H,#0 MOV 77H,#0 MOV 78H,#0 MOV 79H,#0 MOV 7AH,#0 MOV 7BH,#0 MOV 7CH,#0 MOV 7DH,#0 MOV 7EH,#0 MOV 72H,#0AH;对连字符进行装值

MOV 75H,#0AH MOV 60H,#0 MOV 61H,#0 MOV 63H,#0 MOV 64H,#0 CLR P1.7 MOV TMOD,#01H;选择定时器/计数器T0的方式1 MOV TL0,#0B0H;对低位赋初值 MOV TH0,#03CH;高位赋初值 SETB EA SETB ET0 SETB TR0 START1: LCALL SCAN LCALL KEYSCAN SJMP START1 DL1MS: MOV R6,#14H;延时1子程序 DL1: MOV R7,#19H DL2: DJNZ R7,DL2 DJNZ R6,DL1 RET DELAY: MOV R6,#10 D1: MOV R7,#30 DJNZ R7,$ DJNZ R6,D1 RET

DL20MS: ACALL SCAN;延时20ms子程序 ACALL SCAN ACALL SCAN RET

;整点报时将秒和分的单元与零比较 SCAN: MOV A,7EH;7F单元的内容为0

CJNE A,79H,NEXT MOV A,7DH

CJNE A,7AH,NEXT SETB P1.7 AJMP NEXT1 NEXT: CLR P1.7 NEXT1:

MOV A,79H

CJNE A,#0,NEXT2 MOV A,78H

CJNE A,#0,NEXT2 SETB P1.7 LJMP NEXT3 NEXT2:CLR P1.7

;数码管总显示程序开始分两部分

;校正时间和数码管正常工作的显示程序 NEXT3: MOV A,78H MOV B,#0AH

DIV AB;时间秒的十位送给A,时间秒的个位送B

MOV 71H,A;时间秒要显示的十位

MOV 70H,B;时间秒要显示的个位

MOV A,79H MOV B,#0AH

DIV AB;时间分的十位送给A,时间分的个位送B

MOV 74H,A;时间分要显示的十位送地址

MOV 73H,B;时间分要显示的个位送地址

MOV A,7AH MOV B,#0AH DIV AB;时间时的十位送给A,时间时的个位送B MOV 77H,A;时间时显示的十位送地址

MOV 76H,B;时间时要显示的个位送地址

MOV R1,#70H LCALL DL1MS JB P1.2,LAST HERE3:JNB P1.2,HERE3 INC 7EH MOV A,7EH

CJNE A,#3CH,LOOP3 MOV 7EH,#00H;调制闹铃的时间显示 LOOP3: MOV DPTR,#TAB MOV R5,#0FEH MOV A,7DH MOV R3,#09H

MOV B,#10 SCAN1: MOV A,R5;数码管正常工作的显 DIV AB 示程序

MOV 64H,A MOV P2,A MOV 63H,B MOV A,@R1 MOV A,7EH MOV DPTR,#TAB

MOV B,#10 MOVC A,@A+DPTR;对字段表取值 DIV AB 显示

MOV 61H,A MOV P0,A MOV 60H,B MOV A,R5 MOV P2,#0F7H LCALL DL1MS MOV A,60H INC R1 MOVC A,@A+DPTR MOV A,R5 MOV P0,A RL A LCALL DELAY MOV R5,A MOV P2,#0EFH DJNZ R3,SCAN1 MOV A,61H MOV P2,#00H MOVC A,@A+DPTR MOV P0,#00H MOV P0,A JB P1.3,QQ LCALL DELAY LCALL DL1MS MOV P2,#0DFH JB P1.3,QQ MOV P0,#40H HERE: JNB P1.3,HERE LCALL DELAY SJMP LOOP1 MOV P2,#0BFH

MOV A,63H QQ: LJMP LAST MOVC A,@A+DPTR LOOP1:JB P1.1,LOOP2 MOV P0,A LCALL DL1MS LCALL DELAY JB P1.1,LOOP2 MOV P2,#07FH HERE1:JNB P1.1,HERE1 MOV A,64H INC 7DH MOVC A,@A+DPTR MOV A,7DH

MOV P0,A CJNE A,#18H,LOOP2 LCALL DELAY MOV 7DH,#00H JB P1.3,LOOP4 LOOP2:JB P1.2,LOOP3 LCALL DL1MS 14 JB P1.3,LOOP4 HERE4:JNB P1.3,HERE4 LJMP LAST LOOP4:LJMP LOOP1 LAST: RET;“0~9”和“-”的字段表 TAB:

DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,40H

;定时/计数器T0中断程序 INIT0: PUSH ACC PUSH PSW CLR ET0 CLR TR0 MOV TL0,#0B0H MOV TH0,#03CH SETB TR0 INC 7BH MOV A,7BH CJNE A,#14H,OUTT0;50ms是否到20次,没有到就继续执行50ms的延时

MOV 7BH,#00 INC 78H MOV A,78H CJNE A,#3CH,OUTT0;一秒的延时是否计到60次,没有就继续执行

MOV 78H,#00 INC 79H MOV A,79H CJNE A,#3CH,OUTT0 MOV 79H,#00 INC 7AH MOV A,7AH CJNE A,#18H,OUTT0;60分钟的延时是否计到24次,没有就继续执行程序 MOV 7AH,#00 OUTT0: SETB ET0;启动定时器T0 POP PSW POP ACC RETI;按键处理程序 KEYSCAN:CLR EA

JNB P1.0,KEYSCAN0;P1.0有按键按下则跳转到子程序

JNB P1.1,KEYSCAN1;P1.1有按键按下则跳转到子程序

JNB P1.2,KEYSCAN2;P1.2有按键按下则跳转到子程序

KEYOUT: SETB EA RET

KEYSCAN0:LCALL DL20MS;20ms的延时消抖

JB P1.0,KEYOUT WAIT0: JNB P1.0,WAIT0;判断按键是否松手,松手就往下执行程序 INC 7CH MOV A,7CH CLR ET0 CLR TR0

CJNE A,#04H,KEYOUT;按下第一次和第二次对时、分选定

MOV 7CH,#00;按下第三次时就启动计时

SETB ET0 SETB TR0 LJMP KEYOUT

KEYSCAN1:LCALL DL20MS;按键加一的程序

JB P1.1,KEYOUT WAIT1: JNB P1.1,WAIT1 MOV A,7CH

CJNE A,#03H,KSCAN11;如果功能键按下则对时加一调整 INC 78H MOV A,78H

CJNE A,#60,KEYOUT MOV 78H,#00 LJMP KEYOUT

KSCAN11: CJNE A,#02H,KSCAN12 INC 79H MOV A,79H

CJNE A,#60,KEYOUT;如果加到60则清零

MOV 79H,#00 LJMP KEYOUT KSCAN12:CJNE A,#01H,KEYOUT INC 7AH;如果功能键是按下第二次则对分进行加一调整

MOV A,7AH CJNE A,#18H,KEYOUT MOV 7AH,#00 LJMP KEYOUT KEYSCAN2:LCALL DL20MS;延时消抖程序 JB P1.2,KEYOUT WAIT2: JNB P1.2,WAIT2;判断是否放开按键

5.单片机控制的循环彩灯控制系统的设计实习报告 篇五

设计一个声控LED彩灯, 可应用于墙面、橱窗、展厅以及各种工艺品等背景装饰光源, 通过AT89C51单片机控制来实现彩灯颜色以及花样的变化, 起到很好的装饰效果。同时可以通过声音来控制彩灯切换到白光的照明模式, 照明模式持续的时间可以按照要求进行调整。

2 方案的设计与选择

2.1 LED的色彩控制设计

根据色彩合成的三基色原理, 任何颜色的光都可以通过改变红、绿、蓝三基色按照不同的比例而合成, 当用红光、蓝光、绿光三色光进行混合时, 可分别得到黄光、青光和品红;将这三色光等比例混合时, 可得到白光;而将此三色光不同比例混合时, 可以获得不同颜色的光。单片机控制LED色彩的原理就是赋予三基色不同的占空比, 以此来实现不同的色彩。配色公式为:R[x%]+G[y%]+B[z%]=C。

例如:R[100%]+G[0%]+B[100%]=品红;R[100%]+G[100%]+B[0%]=黄;R[0%]+G[100%]+B[100%]=青;R[100%]+G[100%]+B[100%]=白

2.2方案的选择

根据功能的要求, 该设计分为3大模块, 以AT89S52单片机为核心的控制模块, 声控电路模块以及LED背景光显示模块。

3 硬件电路的设计

3.1 单片机系统及LED显示电路

LED背景光显示电路是由3颗三合一全彩LED芯片并联组成, 该芯片有4个引脚, 公共端直接连接到5V稳压源, 红光源负极引脚串接150Ω电阻与单片机P1.0引脚相连接;绿光源负极引脚串接100Ω电阻与单片机P1.1引脚相连接;蓝光源负极引脚串接100Ω电阻与单片机P1.2引脚相连接。驱动电路如图1、图2所示。

3.2 声控电路

MK可将声音信号转化为电压信号。R10为50kΩ的可变电阻器, 是用来调节声控的灵敏度的。LM393为一款低功率低失调电压双比较器, 能直接连接T T L和CMOS, 这里作为低频运算放大器使用, R 8为一个10kΩ的上拉电阻保证了输出电平为低电平, LM393的输出端连接着PNP三极管基极, 三极管的集电极接地, 发射极连接着单片机的外中断P3.2引脚, 当MK有声音信号传输时, P3.2引脚会出现低电平。

4 软件程序的设计

该设计是通过AT89S52单片机控制P1.0、P1.1以及P1.2引脚的占空比来实现全彩LED的颜色变化以及亮度的变化。主程序部分主要用来实现全彩LED颜色以及花样的变化, 当P3.2出现低电平时发生外部中断, 中断的方式是低电平有效, 中断的程序是用来实现白光的照明模式, 照明模式持续的时间可以通过中断程序中的延时程序来设定, 一般设定在40s~60s之间。

5 结语

本文设计一个声控彩灯, 控制芯片使用的是AT89S52单片机, 详细的讲述了LED变色原理、声控的原理以及软硬件的设计。声控的灵敏度可以通过调节电路中的变阻器来实现, 一般情况下5米范围内的掌声就能够触发电路运行。声控彩灯主要是以装饰和亮化为主, 照明只是辅助的作用, 所以应当把握照明模式下的对时间控制。

摘要:设计一个声控彩灯, 彩灯使用的是三合一全彩的LED芯片, AT89C51单片机作为控制芯片, 通过声音的控制实现彩灯的装饰效果与照明效果之间的切换, 使得彩灯既具有装饰效果, 又具有照明的作用。

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:iwenmi@163.com

上一篇:关于STUDY学习的英语名言下一篇:团总支组织部十一月份工作总结

付费复制
学术范例网10年专业运营,值得您的信赖

限时特价:7.99元/篇

原价:20元
微信支付
已付款请点这里联系客服
欢迎使用微信支付
扫一扫微信支付
微信支付:
支付成功
已获得文章复制权限
确定
常见问题