PWM控制LED亮度_单片机课程设计..
- 格式:doc
- 大小:544.00 KB
- 文档页数:16
基于PWM技术的LED家庭智能照明系统设计郎昊,苏容,王祥舟(电子科技大学,光电信息学院)摘要:随着社会的发展人们对生活质量的要求越来越高,照明在能耗中所占的比例日益增加,因而照明节能也日显重要。
现在国内外普及使用的节能开关基本有声控型、触摸型、感光型等。
这几种开关各有自己的弊端,如声控型不适合环境嘈杂场所、感光型开关在无人期间不能自动关闭。
本设计通过STC89C52单片机结合LED照明技术、红外传感技术、光传感技术、数字信号转换、PWM脉宽调制等技术来实现对照明设备的智能控制。
单片机通过PWM信号控制照明设备的打开或者关闭、通过光照检测电路对照明设备周边亮度进行检测,根据环境亮度输出PWM信号,红外传感检测是否有人以控制照明设备打开或关闭。
关键词:单片机;传感器;照明控制;节能;PWMBased on PWM technology LED household intelligentlighting system designSuRong, Wang Xiangzhou,Lang Hao(School of Optoelectronic Information,UESTC)Abstract:With the development of society ,people are require a higher quality of life , the proportion of light in energy consumption, thus increasing illumination energy conservation also more and more importantly. Now universal use energy-saving switch at home and abroad have sonic basic type, touch type, photographic type and so on. This several switch have their own disadvantages, such as sonic type is not suitable for environmental noisy places, photographic switch in one period can't shut automatically. This design combined by STC89C52 LED lighting technology, infrared sensing technology, light sensor technology, Optical sensing technology, Digital signal conversion and Pulse width modulation(PWM)technology to realize the intelligent control of lighting equipment. Microcomputer controls lighting equipment open or closed, by the PWM signal ,through the light detection circuit for lighting equipment testing. Microcomputer output PWM signal by The brightness of the environment,Infrared sensor open the lighting system when people walk into the room.Keywords: microcontroller;sensor;lighting control;energy-saving前言随着国民经济的快速发展和社会进步,家庭照明在全社会愈加被关注和重视,人们已经不仅仅满足于普通的照明需求,对光照的舒适度,智能度,光的色彩都有新的要求。
基于单片机LED调光电路设计一、概述LED灯是目前比较流行的一种绿色环保的照明产品,它具有节能、环保、寿命长等优点。
LED灯的亮度是由电流来控制的,因此设计一套有效的LED调光电路对于LED灯的应用具有重要意义。
本文将介绍一种基于单片机的LED调光电路设计方案,通过单片机来实现LED灯的调光功能。
二、电路原理LED调光的原理是通过改变LED灯的工作电流来控制LED的亮度。
在这里,我们通过PWM(脉冲宽度调制)来实现LED的调光功能。
PWM通过调整信号的占空比来改变LED的工作电流,从而控制LED的亮度。
单片机通过输出PWM脉冲信号来控制LED的亮度。
三、电路设计1、基本电路图设计基于单片机的LED调光电路,需要用到如下基本元器件:LED、电阻、单片机等。
其基本电路图如下所示:(图1)2、电路设计关键点(1)单片机选择:在设计单片机(LED)调光电路时需要选择一款支持PWM输出的单片机,例如STC89C52。
(2) PWM输出引脚连接:将单片机的PWM输出引脚通过限流电阻R1连接到LED的正极,从而实现PWM信号控制LED的电流。
四、电路实现根据上述电路设计关键点,我们来实现一个基于STC89C52单片机的LED调光电路。
具体实现步骤如下:1、连接电路:按照电路图连接LED、限流电阻R1、STC89C52单片机等器件;2、编写程序:编写单片机程序,初始化PWM输出引脚,设置PWM频率和占空比,实现LED的调光控制;3、下载程序:将编写好的程序下载到单片机中;4、测试验证:通过改变程序中的PWM占空比来验证LED的亮度调光效果。
五、总结通过上述电路设计和实现操作,我们成功设计出了一套基于STC89C52单片机的LED调光电路。
通过PWM技术,可以有效地控制LED的亮度,实现LED的调光控制。
这种电路设计方案不仅简单易行,而且成本低廉,非常适合LED灯的应用。
六、拓展应用除了基本的单片机(LED)调光电路设计之外,还可以基于此设计方案进行一些拓展应用,比如实现LED的灯光效果控制、远程遥控调光等功能。
基于PWM控制的LED灯光系统设计【摘要】本设计介绍了一种以STC单片机为核心的LED灯光控制系统,主要采用PWM技术,及UART通讯技术。
PWM是一种非常成熟的技术,目前已经广泛应用于调速,调光系统,而UART通讯是单片机最为常用的一种通讯方式。
详细介绍单片机控制电路,通讯布线,PWM电路,及PWM控制设计,给出了系统软件设计方案。
【关键词】PWM;STC单片机;UART通讯一、引言目前许多的灯光控制系统只是简单的实现控制灯的亮暗顺序及亮暗的时间,这类简单的控制方式广泛地应用在灯光广告中,电路板一般采用控制核心电路加上口线扩展电路及输出驱动电路组成,但是这类电路在组成大矩阵的LED显示时,存在布线复杂等问题,在出现故障时维护比较复杂,需要先查布线线路上是否存在故障,然后再查电路驱动板是否存在问题,一旦出现问题需更换布线线路或驱动电路板,维护费用较高。
本设计提出基于PWM控制的LED灯光系统设计,系统采用单片机STC12C2052为核心的PWM 控制电路系统,采用UART通讯方式,布线简单,使用数据间隔检测方式接收UART数据包,适应不同波特率下的应用,采用数据间隔接收数据可以可靠地接收到一个完整的数据包,不管数据包是否有数据头,解决了协议不同的麻烦,定义的数据比较短,数据接受更为可靠。
二、电路原理及特点(一)电路系统框图本设计的灯光系统框图如下图2-1:直流 12V 集中供电LED1 LED2 LED3 LED4图2-1 PWM控制LED系统的系统框图本设计的灯光系统主要由1个主控制和9个从控制板(1个主控制板最多可控制256个从控制板)及开关电源组成。
供电方式采用由开关直流电源+12V集中供电。
主控制板实现对各个从控制板的PWM输出值控制、控制灯的亮暗次序及时间控制,主控制板与从控制板的连线方式采用通用的UART通讯方式。
从控制板主要实现并执行主控制发送过来的PWM值,由自身所带的PWM输出管脚输出控制值来驱动LED,进行灯的亮度控制及亮暗控制。
基于51单片机的PWM调光灯设计综述一、原理及基本概念1.1PWM技术原理PWM是一种通过改变信号的脉冲占空比来控制电路的一种调制技术。
通过改变占空比,可以控制电路输出的平均电压或电流,从而实现对设备的控制。
1.2PWM调光灯设计的基本思路PWM调光灯的设计思路是利用51单片机的定时器模块产生一组特定频率的方波信号,并通过改变方波的脉冲占空比来控制灯光的亮度。
通过不断改变PWM信号的占空比,可以实现对灯光亮度的精确控制。
二、设计步骤2.1硬件设计硬件设计包括51单片机的选型和外围电路的设计。
2.1.151单片机的选型根据具体的需求和要求选择适合的51单片机型号,注意其定时器模块的数量和性能,以及IO口的数量和功能等。
2.1.2外围电路设计外围电路设计主要包括电源电路、信号调节电路和负载电路。
其中,电源电路用于为单片机和负载供电;信号调节电路用于接收51单片机产生的PWM信号,并通过电路设计将其转换成合适的电流或电压信号;负载电路则是连接在输出端,用于产生灯光。
2.2软件设计软件设计主要包括编写51单片机的程序代码,实现PWM信号的产生和控制。
2.2.1PWM信号产生的程序代码编写根据具体的单片机型号和开发环境,编写产生PWM信号的程序代码。
可以利用单片机的定时器模块产生特定频率的方波信号,并通过改变占空比来实现PWM调光效果。
2.2.2PWM信号控制的程序代码编写编写程序代码来控制PWM信号的占空比。
可以通过按键、旋钮等输入设备来改变PWM信号的占空比,从而实现对灯光亮度的控制。
三、实现过程3.1硬件安装按照设计步骤中的要求,完成51单片机和外围电路的安装。
3.2软件编程3.3功能验证使用示波器等测试设备验证PWM信号的产生和控制效果,同时观察负载电路中灯光亮度的变化。
根据需求,对程序进行优化和调整,确保最终实现预期的PWM调光效果。
四、总结基于51单片机的PWM调光灯设计是一种简单且成本较低的调光方法,通过合理的硬件设计和软件编程,可以实现对灯光亮度的精确控制。
EDA技术基础PWM调整LED亮度选做试验电子信息科学与技术物电学院2011-06-24PWM调整LED亮度设计一.实验任务学习PWM原理,用Verilog硬件描述语言设计PWM逻辑电路,实现PWM信号占空比可调,通过按键调整PWM信号的占空比,将此PWM信号输出驱动发光二极管,观察不同占空比时发光二极管的亮度如何变化。
在实验箱上实现按键调整发光二极管亮度,数码管显示PWM信号的占空比。
具体要求:将输入数字信号转化为输出模拟信号,利用脉宽调制来实现二极管的亮度调节。
按下s1(不松手),二极管逐渐变暗,暗到一定程度,突然变亮,再循环,按下s2(不松手),二极管逐渐变亮,亮到一定程度,突然变暗,再循环。
二.方案论证实验原理图为三、实验思路调节时钟脉冲的占空比,输出脉冲频率一定,输出脉冲的占空比越大相当于输出的有效电平越大,可将数字量转化为模拟量。
基于这种思路可先将输入的一定计数周期T(相当于一个常量)的标准时钟脉冲变为一个高低电平占空比不一致的非标准脉冲(包含一个高电平、一个低电平),可用另外一个计数器Q来控制高低电平的占空比,随着Q的增大高电平的占空比随时间逐渐增大(或减小),而低电平随时间逐渐减小(或增大)。
但这个脉冲周期T是一定的。
随着T个数的增加便能得到一个高电平的占空比随时间逐渐增大(或减小),而低电平随时间逐渐减小(或增大)的非标准的时钟脉冲。
由于时钟脉冲的高低电平的占空比随时间有规律、有方向的变化,这样可实现二极管的亮度缓慢变化。
四、实验步骤及代码99计数器的计数模块代码为module counter(clk,clr,Q);input clk,clr;output [7:0]Q;reg [7:0]Q;always @(posedge clk or negedge clr)begin if(!clr) begin Q=0;endelse beginif(Q[3:0]==9) begin if(Q[7:4]<9)begin Q[7:4]=Q[7:4]+1; Q[3:0]=0;end else begin Q[7:0]=0;endendelse begin Q[3:0]=Q[3:0]+1;endendendendmodule而通过按键可调的计数器模块的代码为:module c9(clk,clr,kup,kdw,Q,clk); input clr,clk;input kup,kdw;output [7:0]Q;reg [7:0]Q;wire clka,clkb,clkc,clkd,newclk; assign clka = clk;LCELL AA(clka,clkb);LCELL BB(clkb,clkc);LCELL CC(clkc,clkd);LCELL DD(clkd,newclk);always @(posedge newclk or negedge clr)beginif(!clr) begin Q[3:0]=4'H0;Q[7:4]=4'H5;endelse beginif(kup)beginif(Q[3:0]==4'H9)if(Q[7:4]==9) begin Q[7:4]=4'H0;Q[3:0]=4'H0;end else begin Q[7:4]=Q[7:4]+4'H1;Q[3:0]=4'H0;endelse Q[3:0]=Q[3:0]+4'H1;endelse begin Q[3:0]=Q[3:0];Q[7:4]=Q[7:4];endif(kdw)beginif(Q[3:0]==4'H0)if(Q[7:4]==4'H0) begin Q[7:4]=4'H9;Q[3:0]=4'H9;end else begin Q[7:4]=Q[7:4]-1;Q[3:0]=4'H9;endelse Q[3:0]=Q[3:0]-4'H1;endelse begin Q[3:0]=Q[3:0];Q[7:4]=Q[7:4];endendendendmodule同时要用实验箱上的50MHZ晶体震荡器作为计数器1的输入时钟代码为module fenpin2(clk,clr,clko);input clk,clr;output clko;reg [25:0]c;reg clko;always @(posedge clk or negedge clr)beginif(!clr) begin c=26'H0;clko=1'H0;endelse if(c==26'D50_000_000)begin c=26'H0;clko=1'H1;end else begin c=c+26'D100;clko=1'H0;endendendmodule由于数码关于二极管的频率不一样,因此对他们时钟信号的分频的大小也应不同,因此对二极管的输入时钟也应进行分频,其代码为:module div_clk(clk,clr,ck0);input clk,clr;output ck0;reg [19:0]c;always @(posedge clk or negedge clr)beginif(!clr)c=20'H0;else c=c+20'H1;endassign ck0=c[5];endmodule为了使数码管上能显示出占空比,我们还应加一个比较模块,其代码:module compare(a,b,led);input [7:0]a;input [7:0]b;output led;reg led;always @(a or b)beginif(a<b)led=1;else led=0;endendmodule数码管显示模块module deled(num,a,b,c,d,e,f,g);input [3:0]num;output a,b,c,d,e,f,g;reg a,b,c,d,e,f,g;always @(num)begincase(num)4'H0 :{a,b,c,d,e,f,g} = 7'b1111110; 4'H1 :{a,b,c,d,e,f,g} = 7'b0110000;4'H2 :{a,b,c,d,e,f,g} = 7'b1101101;4'H3 :{a,b,c,d,e,f,g} = 7'b1111001;4'H4 :{a,b,c,d,e,f,g} = 7'b0110011;4'H5 :{a,b,c,d,e,f,g} = 7'b1011011;4'H6 :{a,b,c,d,e,f,g} = 7'b1011111;4'H7 :{a,b,c,d,e,f,g} = 7'b1110000;4'H8 :{a,b,c,d,e,f,g} = 7'b1111111;4'H9 :{a,b,c,d,e,f,g} = 7'b1111011;default:{a,b,c,d,e,f,g}=7'b0000000;endcaseendendmodule相应的数码管引脚、二极管引脚及按键的引脚排列图为:五、实验分析及实验总结1、由于时钟脉冲的高低电平的占空比随时间有规律、有方向的变化,这样可实现二极管的亮度缓慢变化。
摘要LED台灯作为LED绿色照明光源产品,作为国家绿色照明推广使用的产品。
在实际的应用中,发现LED灯在周边亮度大时依然以同一功率发光,存在电能浪费;在周边亮度小时LED灯不能提供足够和恰当的光度。
本文介绍了以STC89C51为控制核心,通过光敏电阻感应光度,并利用PWM调光技术对LED进行光度的自动调节。
同时设置手动控制。
该LED台灯电路简单,很大程度上节省电能,延长LED灯寿命,适宜阅读.关键词LED台灯光度 PID PWM调光自动调节原创性声明本设计所用到的程序代码和电路均是来自本团队,如没有经过允许,不得复制和转载。
目录前言 (4)总体方案设计 (5)硬件设计 (5)软件设计 (9)总结 (12)附录1:作品照片 (13)附录2:程序 (15)前言LED照明又称固态照明,作为继白炽灯、荧光灯后的第三代照明技术,具有节能、环保、安全可靠的特点,固态光源是被业界看好的未来十年替换传统照明器具极具潜力的新型光源,代表照明技术的未来。
发展新固态照明,不仅是照明领域的革命,而且符合当前政府提出的“建设资源节约型和环境友好型社会”的要求。
LED台灯就是以LED(Light Emitting Diode)即发光二极管为光源的台灯,LED是一种固态的半导体器件,它可以直接把电转化为光.LED台灯是典型的绿色照明光源产品,作为国家绿色照明推广使用的产品,具有广阔的应用前景。
在实际的应用中,发现LED灯在周边亮度大时依然以同一功率发光,存在电能浪费。
另外一方面,因为LED的发热量和电流存在正相关的关系,发热影响了LED的寿命,所以在不必要的亮度下也减少了LED的寿命.然而,当LED在周边亮度小时,LED灯不能提供足够和恰当的光度,这样又影响了阅读,造成视觉疲劳。
PWM方法的基本思想就是利用单片机具有的PWM端口,在不改变PWM方波周期的前提下,通过软件的方法调整单片机的PWM控制寄存器来调整PWM的占空比,从而控制充电电流.本方法所要求的单片机必须具有ADC端口和PWM端口这两个必须条件,另外ADC的位数尽量高,单片机的工作速度尽量快。
单片机原理及应用课程设计报告设计题目:学院:专业:班级:学号:学生姓名:指导教师:年月日目录设计题目 (1)1 设计要求及主要技术指标: (1)1.1 设计要求 (1)1.2 主要技术指标 (2)2 设计过程 (2)2.1 题目分析 (4)2.2 整体构思 (4)2.3 具体实现 ................... 错误!未定义书签。
3 元件说明及相关计算 (5)3.1 元件说明 (5)3.2 相关计算 (6)4 调试过程 (6)4.1 调试过程 (6)4.2 遇到问题及解决措施 (7)5 心得体会 (7)参考文献 (8)附录一:电路原理图 (9)附录二:程序清单 (9)设计题目:PWM直流电机调速系统本文设计的PWM直流电机调速系统,主要由51单片机、电源、H桥驱动电路、LED 液晶显示器、霍尔测速电路以及独立按键组成的电子产品。
电源采用78系列芯片实现+5V、+15V对电机的调速采用PWM波方式,PWM是脉冲宽度调制,通过51单片机改变占空比实现。
通过独立按键实现对电机的启停、调速、转向的人工控制,LED实现对测量数据(速度)的显示。
电机转速利用霍尔传感器检测输出方波,通过51单片机对1秒内的方波脉冲个数进行计数,计算出电机的速度,实现了直流电机的反馈控制。
关键词:直流电机调速;定时中断;电动机;PWM波形;LED显示器;51单片机1 设计要求及主要技术指标:基于MCS-51系列单片机AT89C52,设计一个单片机控制的直流电动机PWM调速控制装置。
1.1 设计要求(1)在系统中扩展直流电动机控制驱动电路L298,驱动直流测速电动机。
(2)使用定时器产生可控的PWM波,通过按键改变PWM占空比,控制直流电动机的转速。
(3)设计一个4个按键的键盘。
K1:“启动/停止”。
K2:“正转/反转”。
K3:“加速”。
K4:“减速”。
(4)手动控制。
在键盘上设置两个按键----直流电动机加速和直流电动机减速键。
51单片机脉冲宽度调制(PWM)控制LED灯亮度作者:来源:本站原创点击数:576 更新时间:2009年06月28日/*介绍一个51系列单片机采用脉冲宽度调制(PWM)方式控制LED灯亮度的一个程序,大家都知道,51单片机本身是没有pwm接口的,这个程序是通过软件模拟pwm.在一定的频率的方波中,调整高电平和低电平的占空比,即可实现LED灯亮度控制。
程序出自:单片机网http://www. ,如有问题可在论坛提出,程序中使用定时器0产生2.5ms周期脉冲,使用占空比控制变量scale控制占空比,在低电平期间使LED灯亮,在高电平期间使LED灯灭,改变scale 就改变了高电平与低电平的时间,因此也就控制了LED灯的亮度。
*/#include "AT89X51.H" //模拟PWM输出控制灯的10个亮度级unsigned int scale; //占空比控制变量void main(void) // 主程序{ unsigned int n; //延时循环变量TMOD=0x02; //定时器0,工作模式2(0000,0010),8位定时模式TH0=0x06; //写入预置初值6到定时器0,使250微秒溢出一次(12MHz)TL0=0x06; //写入预置值TR0=1; //启动定时器ET0=1; //允许定时器0中断EA=1; //允许总中断while(1) //无限循环,实际应用中,这里是做主要工作{ for(n=0;n<50000;n++); //每过一段时间,就自动加一个档次的亮度scale++; //占空比控制变量scale加1if(scale==10) scale=0; //如果scale=10,使scale为0} }timer0() interrupt 1 //定时器0中断服务程序{ static unsigned int tt ; //tt用来保存当前时间在一秒中的比例位置tt++; //每250微秒增加1if(tt==10) //2.5毫秒的时钟周期{ tt=0; //使tt=0,开始新的PWM周期P2_0=0; //使LED灯亮}if(scale==tt) //按照当前占空比切换输出为高电平P2_0=1; //使LED灯灭}/*程序中从tt=0开始到scale为低电平,从scale开始到tt=10为高电平,由于scale是变量,所以改变scale就可以改变占空比。
摘要目前市场上的LED台灯,作为LED的绿色护眼光源产品而进行开发和研究,还是作为我国的照明推广家用型产品。
随着时代的变迁,社会的发展,节能和环保这一主题已经是当今社会必要发展的目标了、健康与人们的日常生活变得密不可分,科技的进步,也使家电更加智能化和人性化。
台灯作为家电中基础的,也是必不可少的,所以,提出PWM调光灯设计。
本设计主要是将STC89C51RC单片机作为控制核心,这是将多种功能集于一体的智能LED台灯。
该台灯具有手动、自动两种调节亮度的方式;主要的产品功能有呼吸模式、红外遥控操作等等。
硬件的设计部分为单片机控制模块、按键控制模块、照明显示模块、光敏感应模块、LED灯指示报警模块、远程遥控模块等组成。
单片机主要控制芯片型号选用STC89C51RC,LED指示报警模块选择三种颜色不同的LED指示灯来显示三种不同的工作模式,通过按键控制模块进行调整和控制工作模式和LED亮度程度,照明模块选用草帽型12白光LED,光敏感应模块采用可以对光敏信号的采集芯片ADC0832,并利用PWM调光技术对LED进行光度的自动调节。
可以通过红外遥控远距离无线遥控,通过单片机C语言编程进行软件设计,将所需的设计要求全部可以进行功能的控制。
关键词LED台灯光度PWM调光自动调节AbstractLED lamp as LED green lighting products, as the country to promote the use of green lighting products. With the development of the times,energy saving and environmental protection, health and the peopledaily life are inseparable, the progress of science and technology,also makes home appliances more intelligent and humanized. The lamp as home appliances based, so is also essential,, put forward PWM dimming the lights design.The design is based on STC89C51RC SCM as control core and multi functions in one of the intelligent LED lamp. The table lamp realizes the brightness with manual, automatic two types of regulation;respiratory mode function, but also has the function of infrared remote control. The design of the hardware part consists of MCU controlmodule, keyboard module, lighting module, photosensitive module,LED module, remote control module instruction. The MCU main control chip STC89C51RC, LED indicating module with three kinds ofdifferent colors of small LED to indicate different working modes,brightness through the key module to adjust the working mode and the LED lighting module, using 12 straw hat type white LED,photosensitive module uses ADC0832 chip implementation of a signal acquisition, automatic regulation and luminosity of LED using PWM dimming technology. Through the infrared remote control, wireless remote control, software design of the MCU C language programming,integrated control functions are realized by.Key wordLED lamp dimming automatically adjust luminosity of PWM目录第1章绪论 (5)1.1 课题研究背景 (5)1.2 系统方案的提出 (5)1.2.1 LED优势 (5)1.2.2 方案简述 (6)第2章系统方案的选择 (7)2.1 控制芯片的选择方案 (7)2.1.1 STC89C51RC (7)2.1.2 A VR单片机 (7)2.1.3 FPGA (8)2.1.4 主控制芯片的确定 (8)2.2 照明模块的选择 (8)2.2.1 三极管驱动 (8)2.2.2 PWM芯片控制 (9)2.2.3 照明方案的确定 (10)第3章硬件设计 (10)3.1 单片机STC89C51芯片简介 (10)3.2 LED驱动电路 (14)3.3 按键控制电路 (17)3.4 LED指示电路 (18)3.5自动控制电路 (18)3.5.1 光敏电路 (18)3.5.2 ADC0832模数转换 (19)第4章软件设计 (20)4.1 Keil C51 (20)4.2 Protel99SE (21)4.3 程序流程图 (22)第5章调试 (24)5.1 硬件调试 (24)5.2 软件调试 (24)第6章总结 (25)参考文献 (26)附录一:protel99se 原理图 (27)附录二:源程序 (28)前言LED照明又称固态照明,作为继白炽灯、荧光灯后的第三代照明技术,具有节能、环保、安全可靠的特点,固态显示光源是照明领域里面比较看好的发展产业,在未来十年中将传统的照明工具替换,是代表照明技术的未来。
摘要目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用尤为重要。
而51单片机是各类单片机中最为典型和最具代表性的一种。
本实验是基于MCS-51系列单片机所设计的,以单片机芯片AT89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,实现PWM控制LED的亮度。
关键词:AT89C51、PWM、LED目录1 项目概述和要求 (1)1.1 单片机基础知识 (1)1.3 项目设计任务与设计思路 (2)2 系统设计 (3)2.2元件清单 (3)2.2.1AT89C51芯片 (3)2.2.2LED (4)2.2.3其它元件 (6)3软件设计 (9)3.1 程序 (9)4 系统的仿真与调试 (11)4.1 硬件调试 (11)4.2 软件调试 (12)4.3 软硬件调试 (12)5总结 (14)参考文献 (15)1 项目概述和要求1.1 单片机基础知识单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲,一块芯片就成了一台计算机。
单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机了解计算机原理与结构的最佳选择。
现在,这种单片机的使用领域已十分广泛。
彩电、冰箱、空调、录像机、VCD、遥控器、游戏机、电饭煲等无处不见单片机的影子,单片机早已深深地融入我们每个人的生活之中。
单片机能大大地提高这些产品的智能性,易用性及节能性等主要性能指标,给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。
单片机按用途大体上可分为两类,一种是通用型单片机,另一种是专用型单片机MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS- 48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。
MCS-51系列单片机主要包括8031、8051和8751等通用产品。
增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。
甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。
此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。
现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。
1.3 项目设计任务与设计思路设计任务:基于电位器控制LED亮度设计思路:LED一般是恒流操作的,如何改变LED的亮度呢?答案就是PWM控制。
在一定的频率的方波中,调整高电平和低电平的占空比,即可实现。
比如我们用低电平点亮一个LED灯,假设我们把一个频率周期分为10个时间等份,如果方波中的高低电平占空比是9:1,这是就是一个比较暗的亮度,如果方波中高低电平占空比是0:10,这时,全部是高电平,灯是灭的。
如果占空比是5:5,就是一个中间亮度,如果高低比是9:1,是一个比较亮的亮度,如果高低是10:0,这时全部是低电平,就是最亮的。
实际上应用中,电视屏幕墙中的几十百万LED象素都是这样控制的,而且每一个象素都有红绿蓝3个LED,每个LED可以变化的亮度是几百到几万或者更多的级别,以实现真彩色的显示。
还有在您的手机中,背光灯的亮度如果是可以变化的,也应该是这种工作方式。
目前的城市彩灯也有很多都使用了LED,需要控制亮度是也是PWM控制。
2 系统设计2.1系统电路原理图图2-1利用PWM信号控制LED亮度的驱动电路2.2元件清单2.2.1 AT89C51芯片AT89C51芯片图如下图2-2-1所示。
图2-2-1AT89C51芯片图①简介:AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
②主要特性:与MCS-51 兼容;4K字节可编程闪烁存储器;寿命:1000写/擦循环;数据保留时间:10年;全静态工作:0Hz-24MHz;三级程序存储器锁定;128×8位内部RAM;32可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路。
2.2.2 LED◆LED灯显示的原理原理:LED是英文light emitting diode(发光二极管)的缩写,它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以LED的抗震性能好。
LED结构图如下图所示发光二极管的核心部分是由p型半导体和n型半导体组成的晶片,在p型半导体和n型半导体之间有一个过渡层,称为p-n结。
在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。
PN结加反向电压,少数载流子难以注入,故不发光。
这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。
当它处于正向工作状态时(即两端加上正向电压),电流从LED阳极流向阴极时,半导体晶体就发出从紫外到红外不同颜色的光线,光的强弱与电流有关。
图2-2-1LED实物图图2-2-2LED 电路图2.2.3其它元件其它元件图如下图2-6所示。
图2-2-3其它元件图3软件设计3.1 程序#define uchar unsigned char //定义一下方便使用#define uint unsigned int#define ulong unsigned long#include <reg52.h> //包括一个52 标准内核的头文件sbit P10 = P1^0; //要控制的LED灯sbit P11 = P1^1;sbit P12 = P1^2;sbit P13 = P1^3;sbit P14 = P1^4;sbit P15 = P1^5;sbit P16 = P1^6;sbit P17 = P1^7;uchar scale; //用于保存占空比的输出0 的时间份额,总共10 份char code dx516[3] _at_ 0x003b; //这是为了仿真设置的//模拟PWM 输出控制灯的10 个亮度级别void main(void) // 主程序{uint n;RCAP2H =0xF3; //赋T2 的预置值,溢出1 次是1/1200 秒钟RCAP2L =0x98;TR2=1; //启动定时器ET2=1; //打开定时器2 中断EA=1; //打开总中断while(1) //程序循环{ ; //主程序在这里就不断自循环,实际应用中,这里是做主要工作for(n=0;n<50000;n++); //每过一会儿就自动加一个档次的亮度scale++;if(scale==10)scale=0;}}//1/1200秒定时器2 中断timer2() interrupt 5{static uchar tt; //tt 用来保存当前时间在一秒中的比例位置TF2=0;tt++;if(tt==10) //每1/120 秒整开始输出低电平{tt=0;if(scale!=0) //这里加这一句是为了消除灭灯状态产生的鬼影P1=0x00;}if(scale==tt) //按照当前占空比切换输出高电平P1=0xff;}4 系统的仿真与调试4.1 硬件调试单片机软件仿真系统Proteus介绍:Proteus是英国Labcenter Electro-nics公司开发的一款电路仿真软件,软件由两部分组成:一部分是智能原理图输入系统ISIS(Intelligent Schematic Input System)和虚拟系统模型VSM(Virtual Model System);另一部分是高级布线及编辑软件ARES(Adv-Ancd Routing and Editing Software)也就是PCB.图4-1 ISIS启动界面图4-2 单片机属性的设定硬件调试分为静态调试和动态调试,对于硬件调试而言,只要认真焊接,硬件一般不会出现什么问题的。
静态调试一般采用的工具是万用表,它是在用户系统未工作时的一种硬件检测。
动态调试是在用户系统工作的情况下发现和排查错误的一种硬件检测。
调试步骤是:首先把电路分为若干模块,调试过程中与该模块无关的元件可以不加考虑,这样可把故障限定在一定的范围内;故障清除后,把各个模块合在一起进行联调,即可完成整个硬件调试工作。
4.2 软件调试Keil μVision2开发环境介绍:Keil软件是目前最流行开发MCS-51系列单片机的软件。
Keil提供包括C编译器,宏汇编,连接器,库管理和一个功能强大的仿真调试器等在内的完整开发方案。
通过一个集成开发环境μVision2将这些部分组合在一起。
软件调试是通过对程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。
4.3 软硬件调试软硬件联调是指把调试无误的软件程序烧制进单片机芯片内部,通上电源后,检查硬件工作是否有预期的效果,如果没有则需要检测软件是否在实现功能上有欠缺。
若有错误,通过改写软件来调试,直至达到预期效果,则设计圆满成功。