彩灯电路的设计与制作
作者:XX
[摘要]
随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。 LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰已经成为一种时尚。了解单片机设计知识在实际中的应用。综合运用“单片机”课程和先修课程的理论及生产实际知识去分析和解决电路设计问题,进行单片机电路设计的训练。学习单片机设计电路的一般方法,了解和掌握单片机电路的设计过程和进行方式,培养正确的设计思想和分析问题、解决问题的能力,特别是总体电路设计能力。通过计算和绘图,学会运用标准、规范和查阅有关技术资料等,培养单片机电路设计的基本技能。
该程序示例了单片机键盘控制p1口流水灯花样的方法;具体表现为:p3.2 3.2 3.4 3.5四个小本文提出了一种基于AT89S51单片机的彩灯控制方案,实现对LED彩灯的控制。 [关键词]
LED彩灯 AT-89C51单片机 彩灯控制器。
第1章 绪论
新型LED彩灯系统分为两部分,即89C51主控模块和受控LED板模块。彩灯控制器可直接与220V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为受控LED模块提供+12V伏工作电源,另一方面为主控模块单片机系统提供+5V伏工作电源。 整个系统工作由软件程序控制运行,同时根据不同的需要,用户可以在LED彩灯工作时通过主控模块上的按钮来设定亮灯时间和灯光闪动频率。
上电后系统经过初始化,LED彩灯可按照设定好的若干亮灯花样模式程序MODEi顺序往下走,从MODE0模式开始工作,自MODE0到MODE1„„到MODE n为一个亮灯周期,然后再回到MODE0循环继续工作。可以把整个n种亮灯模式时间看作一个大周期T,其中的每一种亮灯花式MODEi时间为小周期Ti,对于每一个模式编写一个独立工作子程序MODEi,其中设定了LED三色灯(红、绿、蓝)的点亮和熄灭时刻,该模式工作时间Ti以及该模式LED闪烁频率Fi。5位七段码显示器的前两位(L1、L2)显示当前工作模式的序号MODEi;后三位(L1、L2、L3)七段码显示三色LED的工作状态,若该颜色灯点亮则对应七段码显示位为“1”,反之熄灭时则显示位为“灭”即不显示,对系统工作状态起到了一个很好的实时监控作用。
因此在LED彩灯上电工作后,用户可以很方便地通过主控模块上的显示器随时知道LED彩灯当前工作模式MODEi、工作时间Ti、频率Fi等实时参数。若实际应用需要根据不同
1
场合和时间来改变彩灯闪亮效果,用户可以通过主控模块上的按钮来设定LED 不同的闪烁频率Fi和亮灯时Ti,以便符合实际需要。此外如果用户对某一种模式感兴趣需要仔细观看该亮灯花样,也可以通过键盘选定任意第MODEi模式使系统循环重复工作在该花样模式下。
第2章 方案论证
方案一: 方案二:
时钟电路 电源电路 复位电路 A T 8 9 C 5 1 时钟电路 电源电路 复位电路 A T 8 9 C 5 1 线流电阻驱动LED 数码 管 显示
方案一,由于LED数码管显示有八个脚,有共阴极,共阳极区分特麻烦,还要用数字式万用表测才明显,太麻烦啦。所以我选择方案二,发光LED二极管显示即方面,又简单,下面有关于发光LED二极管介绍。
第3章 硬件原理图
3.1晶振(12MHz)定时1秒,对于12MHz的晶振而言,其时钟周期T=1/f=1/12us,而89C51
的一个机器周期包括12个时钟周期,所以一个机器周期为1us,对于T0而言, 之工作于16-bit,最大计时为65536*1=65536us,需要多次定时才能实现一秒定时。
2
线 流电阻驱动LED 二极 管 显示
3.2元器件清单 元器件名称 单片机 晶体振荡器 元器件 AT89C51 CRYSTAL 数量 1 1 8 2 1 1 8 LED显示器(发光二极管) LED1-LED8 瓷片电容 电解电容 电阻 电阻 20PF 10uf 1K 200R 3.3
3
第4章 软件设计原理
4.1 MCS51
引脚说明
1234567891011121314151617181920P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD P3.0TXD P3.1INT0 P3.2INT1 P3.3T0 P3.4T1 P3.5WR P3.6RD P3.7XTAL2XTAL1VSSVCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VPPALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.04039383736353433323130292827262524232221MCS单片机都采用40引脚的双列直插封装方式。图2-9为引脚排列图, 40条引脚说明如下:
1、主电源引脚Vss和Vcc ① Vss接地
② Vcc正常操作时为+5伏电源 2、外接晶振引脚XTAL1和XTAL2
① XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。
② XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。
3、控制或与其它电源复用引脚RST/VPD,ALE/PROG,PSEN和EA/Vpp
① RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位
在Vcc掉电期间,此引脚可接电源 图2-9 8051引脚排列图,上备用电源,由VPD
4
8031 8051 8751
向内部提供备用电源,以保持内部RAM中的数据。
② ALE/PROG 正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存
1到外部锁存器,ALE 引脚以不变的频率(振荡器频率的)周期性地发出正脉冲信号。因
6此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。 对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(PROG功能)
③ PSEN 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,PSEN在每个机器周期内两次有效。PSEN同样可以驱动八LSTTL输入。
④ EA/Vpp 、 EA/Vpp为内部程序存储器和外部程序存储器选择端。当EA/Vpp为高电平时,访问内部程序存储器,当EA/Vpp 为低电平时,则访问外部程序存储器。
对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。 4、输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。 ① P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。
② P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。。
③ P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。 ④ P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载 4.2 发光二极管的限流
在几年前的单片机设计电路中,LED发光二极管是不能由单片机的I/O输出引脚直接进行驱动的,而要使用诸如7405等集电极开路门进行驱动,原因就是单片机的引脚不能够承受LED导通时的电流输入。
随着新技术的应用和单片机集成技术的不断发展,现在大部分的单片机端口都集成了集电极开路的输出电路,具备一定外部驱动能力。但是这时外接的LED发光二极管电路也必须使用电阻进行限流,否则会损坏单片机的输出引脚,一般单片机驱动引脚能够承受的电流输~15mA左右。
此外,如果没有限流电阻,LED发光二极管在工作时也会迅速发热,为了防止LED发光二极管过热损害,也必须采用限流串联电阻对LED发光二极管的功耗进行限制,如表6-1所示为典型的LED发光二极管功率限制指标。
5
表6-1 典型的LED发光二极管功率限制指标
参 数 最大功率限制 正向电流峰值 最大恒定电流 单 位 mW mA mA 红色LED 55 160 25 绿色LED 75 100 25 黄色LED 60 80 20 橙色LED 75 100 25 LED发光二极管的发光功率可以由其两端的电压和通过LED的电流进行计算得到,公式如下:
Pd = Vd×Id
LED发光二极管的典型的电压与电流关系如图6-6所示,可以根据需要的LED发光亮度选择合适的电阻R进行限流,但为了保护单片机的驱动输出引脚,通过LED发光二极管的电流一般应限制在10mA左右。
4.3 半导体发光二极管工作原理、特性 、应用
4.3.1 LED发光原理
发光二极管是由Ⅲ-Ⅳ族化合物,如GaAs(砷化镓)、 GaP(磷化镓)、GaAsP(磷砷化镓)等半导体制成的,其核心是PN结。因此它具有一般P-N结的I-N特性,即正向导通,反向截止、击穿特性。此外,在一定条件下,它还具有发光特性。在正向电压下,电子由N区注入P区,空穴由P区注入N区。进入对方区域的少数载流子(少子)一部分与多数载流子(多子)复合而发光,如图所示。
6
假设发光是在P区中发生的,那么注入的电子与价带空穴直接复合而发光,或者先被 发光中心捕获后,再与空穴复合发光。除了这种发光复合外,还有些电子被非发光中心(这 个中心介于导带、介带中间附近)捕获,而后再与空穴复合,每次释放的能量不大,不能形成可见光。发光的复合量相对于非发光复合量的比例越大,光量子效率越高。由于复合是在少子扩散区内发光的,所以光仅在靠近PN结面数μm以内产生。理论和实践证明,光的峰值波长λ与发光区域的半导体材料禁带宽度Eg有关,即λ≈1240/Eg(mm)式中Eg的单位为电子伏特(eV)。若能产生可见光(波长在380nm紫光~780nm红光),半导体材料的Eg应在3.26~1.63eV之间。比红光波长长的光为红外光。现在已有红外、红、黄、绿及蓝光发光二极管,但其中蓝光二极管成本、价格很高,使用不普遍。 4.3.2 LED的特性 1.极限参数的意义
(1)允许功耗Pm:允许加于LED两端正向直流电压与流过它的电流之积的最大值。超过此值,LED发热、损坏。
(2)最大正向直流电流IFm:允许加的最大的正向直流电流。超过此值可损坏二极管。 (3)最大反向电压VRm:所允许加的最大反向电压。超过此值,发光二极管可能被击穿损坏。
(4)工作环境topm:发光二极管可正常工作的环境温度范围。低于或高于此温度范围,发光二极管将不能正常工作,效率大大降低。
4.3.3 LED的应用
7
4.4中断指令。
在CPU和外设交换信息时,存在着快速CPU和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。
CPU和外设并行工作,当外设数据准备好( 或有某种突发事件发生)时向CPU提出请求,CPU暂停正在执行的程序转而为该外设服务(或处 理紧急事件),处理完毕再回到原断点继续执行原程序。
中断优先级:当有多个中断源同时 向CPU申请中断时,CPU优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的 ,这种预先安排的响应次序。
中断的嵌套:在中断系统中,高优先级的 中断请求能中断正在进行的较低级的中断源处理,
(1)中断技术是实时控制中的常用技术,51系列单片机有三个内部中断,二个外部中断。所谓 外部中断就是在外部引脚上有产生中断所需要的信号。
每个中断源有固定的中断服务程序的入口地址(称矢量地址或向量地址)。当CPU响应中断以 后单片机内部硬件保证它能自动的跳转到该地址。因此,此地址是应该熟记的,在汇编程序 中,中断服务程序应存放在正确的向量地址内。
(或存放一条转移指令);而在C语言中是靠Interrupt n的关键字n自动设置的。 (2)单片机的中断是靠内部的寄存器管理的,这就是中断允许寄存器IE,中断优先权寄存器IP ,必须在CPU开中断即开全局中断开关EA,开各中断源的中断开关,CPU才能响应该中断源的 中断请求,其中缺一不可。
(3)从程序表面看来,主程序和中断服务程序好象是没有关连的,只有掌握中断响应的过程, 才能理解中断的发生和返回,看得懂中断程序,并能编写高质量中断程序。
8
表4.4 常用中断
符号 名 称 INT0 外部中断0 中 断 引 起 原 因 中断服务程序入口 P3.2引脚的低电平或下降沿信0003H 号 INT1 外部中断1 T0 T1 T2 定时器0中断 定时器1中断 定时器2中断 P3.3引脚的低电平或下降沿信0013H 号 定时计数器0计数回零溢出 定时计数器1计数回零溢出 000BH 001BH 定时计数器2中断(TF2或T2EX002BH 信号) TI/RI 串行口中断 串行通信完成一帧数据发送或0023H 接收引起中断
第5章 源程序
#include unsigned char led; unsigned int i,j; void delay() { for(j=0;j<10000;j++); } void main() { led=0x01; 9 while(1) { for(i=0;i<8;i++) { p0=~led; delay(); led<<=1; } for(i=0;i<8;i++) { if(led==0) led=0x80; p0=~led; led>>=1; delay(); if(led==0) led=0x01; } } } 第6章 安装与调试 在调试过程中主要对程序的修改, 当时发现电阻太大,换了小的电阻还是快。当时考虑用按键复位。特别在电脑上编程序出现问题,在调试过程中主要对程序的修改,特别是延时子程序开始延时较长,刚开始选择时间间隔为1秒在测试时发现发光二极管亮的速度太快,之后在拿着集成块在电脑上从考程序LED就一起循环闪烁,但闪烁太快。如果延时较长则LED闪烁慢,通过修改程序将延时调到适中,调到0.5秒时,经过一番折腾发光二极管终于成功的循环亮了,真高兴。谢谢老师帮助。 心得体会 当我抽签拿到题目好高兴,本题目装图简单,用单片机编程序好难。第一次用单片机做课程设计,第一次用电子档案写课程设计,对于我太难,经过老师分析,有了头绪,发现不是太难,经过这次课程设计为毕业论文做了很好的铺垫。 1.前期的方案设计阶段 其实很重要,因为它直接关系到你接下来做的东西有没有价值。这个阶段的信息来源主要是网络,但是现实中的调查也是不可少的。本次“彩灯电路的设计与安装”其实其现实意义就不够好,因为在我们用电脑编程序时就发现,编程序太难了。 2.实施制作阶段 这个阶段出现的错误最多,也最麻烦。在本次制作过程中,出现了很多错误,可耗费 10 了太多时间。究其原因,主要是知识能力不充分,开始的时候就没有把效果图和线路设计图做好。想好现实方式后也出现了很多问题。还有团队协作问题。。 由前期的调查可以做出好的预想效果,可怎么做好前期的线路设计图呢?很重要的就是信息搜集,各种片子的结构原理图,功能,引脚定义等等,其实到现在我在这方面做的仍然不够,惭愧。还是得好好学习基本的单片机知识,还有英语,因为大多数的芯片说明都是英语的,下学期要好好学习专业英语。 好像扯远了。做好前期的线路设计图之后就要实施了,我觉得最好是分工协作,可以先在面包板上试验测试效果。这个过程也许会碰到让人很郁闷的事情,老是没有预期效果!这时不要生气,冷静的分析一下,是不是那个电阻用的不合适了?或是那个接地点没放好?当时发现电阻太大,换了小的电阻还是快。当时考虑用按键复位。特别在电脑上编程序出现问题,刚开始选择时间间隔为1秒在测试时发现发光二极管亮的速度太快,之后在拿着集成块在电脑上从考程序,把时间间隔改为0.5s,经过一番折腾发光二极管终于成功的循环亮了,真高兴。谢谢老师帮助。 这个过程中合作真的很重要,我总觉得,做的过程中她负责某个模块然后在合成起来,这种方式比较合适。当然做的过程中相互交流和互相提出意见是电脑很重要的,毕竟将来它只能是一个整体。当然,在制作过程中会有很多分歧,这也是一个比较重要的问题,我觉得她具体的负责的模块,我可以提意见,但是不能强迫,因为最终如果出问题,是具体负责人担起责任,而不是提意见的人!当然,最好是避免这种大的分歧,实在不行就拿出支持自己观点的证据或是请教老师。 实施制作过程中认真的态度也很重要。自己的电子设计产品完成后可能会工作不稳定,这个原因就是你制作它时的态度!其实,现实中的很多产品或许原料一样、生产设备一样,但耐用性却有很大差别,区别就在于制造它时的技术和态度。所以,在这期间,还是专心一点,把mp3、手机暂时放一放。相信很多事情都是这个样子吧。 3.调试阶段 最后的制作完成后还需要一些调试工作,测试它的性能,更换掉个别损坏的器件,同时也可以做一些工作指标的测试,以方便设计论文的写作。。 好了,就说这些吧!其实我一直很想说的是感谢老师同学。这是我们一起努力的结果!我们都做的很好!不管怎么样,我们经历过了,也收获了,值得了! 4.总结 这次的课程设计是一次难得的锻炼机会,让我能够充分利用所学过的理论知识还有自己的想象的能力,另外还让我学习查找资料的方法,以及自己处理分析电路,设计电路的能力。我相信是对我的一个很好的提高。平时在学习理论知识的时候,根本就没有想到我 11 所学的这些东西有什么用它们可以做成什么,只是一味利用它们来解决课后的习题,没有想其他的用途。这次的课程设计让我懂得了它们在实际中的用途,还有我们身边的很多电路,例如频率计、交通灯、数字钟„„这些都是我们自己可以实现的,突然感觉自己学的东西很有用,我相信这样就可以激发我以后的学习兴趣,这样有利用今后更好地学习。 通过这次课程设计,我还更加深了理论知识的学习。这次的设计电路我用到了单片机还有自动上电复位,通过自己分析和设计更好地运用了它们,而且还学会了它们更多的功能,发现它们的功能远比功能表里面说的多很多,可以利用不同的接法设计出各种各样不同的电路出来。 【参考文献】 [1] 蔡美琴,张为民,沈新群等.MCS51系列单片机系统及其应用[M].北京:高等教育出版社,1992. [2] 何立民.单片机应用技术选篇(5)[M].北京:北京航空航天大学出版社,1997. [3]杨光友.单片机微型计算机原理及接口技术[M].北京:中国水利水电出版社,2002. [4]肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版社,2002.8 [5] 张毅刚 编 MCS—51单片机应用技术 哈尔滨工业大学出版社 [6] 何立民 编 MCS—51单片机应用系统设计 北京航空航天大学出版社 [7] 张鑫 编 单片机原理及应用 电子工业出版社 [8] 曹琳琳 编 单片机原理几接口技术 国防科技大学出版社 12 因篇幅问题不能全部显示,请点此查看更多更全内容