基于STC10F08实验平台的灯具调光器设计.docx

上传人:b****1 文档编号:1629531 上传时间:2023-05-01 格式:DOCX 页数:12 大小:214.29KB
下载 相关 举报
基于STC10F08实验平台的灯具调光器设计.docx_第1页
第1页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第2页
第2页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第3页
第3页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第4页
第4页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第5页
第5页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第6页
第6页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第7页
第7页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第8页
第8页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第9页
第9页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第10页
第10页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第11页
第11页 / 共12页
基于STC10F08实验平台的灯具调光器设计.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于STC10F08实验平台的灯具调光器设计.docx

《基于STC10F08实验平台的灯具调光器设计.docx》由会员分享,可在线阅读,更多相关《基于STC10F08实验平台的灯具调光器设计.docx(12页珍藏版)》请在冰点文库上搜索。

基于STC10F08实验平台的灯具调光器设计.docx

基于STC10F08实验平台的灯具调光器设计

目录

前言2

一、项目概述和原理3

1.1单片机基础知识3

1.2PWM简介4

1.3PWM控制LED亮暗原理4

二、程序设计思路5

三、总体方案设计7

3.1主控电路:

7

3.2LED驱动8

3.3手动控制9

四、系统软件设计10

4.1系统软件设计10

4.2控制程序代码10

五、总结13

前言

二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。

不过,这种电脑通常是指个人计算机,简称PC机。

还有一类大多数人不怎么熟悉的计算机,这就是把智能赋予各种机械的单片机(亦称微控制器)。

顾名思义,这种计算机的最小系统只用了一片集成电路即可进行简单运算和控制。

它的出现是近代计算机技术发展史上的一个里程碑,因为它体积小,通常都藏在被控机械的“肚子”里,起着有如人脑的作用。

单片机具有体积小、功能强、应用面广等优点,目前正以前所未见的速度取代着传统电子线路构成的经典系统,蚕食着传统数字电路与模拟电路固有的领地。

它的这些优点为学习、应用和开发提供了便利条件。

同时,学习使用单片机了解计算机原理与结构的最佳选择。

现在,这种单片机的使用领域已十分广泛。

彩电、冰箱、空调、录像机、VCD、遥控器、游戏机、电饭煲等无处不见单片机的影子,单片机早已深深地融入我们每个人的生活之中。

不但如此,他还能大大地提高这些产品的智能性、易用性及节能性等主要性能指标,在给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。

 

1、项目概述和原理

1.1单片机基础知识

单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

概括的讲,一块芯片就成了一台计算机。

按用途大体上可分为两类,一种是通用型单片机,另一种是专用型单片机。

MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条。

MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MSC-51单片机作为代表进行理论基础学习。

MCS-51系列单片机主要包括8031、8051和8751等通用产品。

1.2PWM简介

脉冲宽度调制(PWM),是英文“PulseWidthModulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。

脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。

PWM控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。

随着电子技术的发展,出现了多种PWM技术,其中包括:

相电压控制PWM、脉宽PWM法、随机PWM、SPWM法、线电压控制PWM等。

1.3PWM控制LED亮暗原理

对于控制LED灯由亮到暗或由暗到亮,采用的是脉宽PWM法。

它是把每一脉冲宽度均相等的脉冲列作PWM波形,通过改变脉冲列的周期可以调频,改变脉冲的宽度或占空比可以调压,采用适当控制方法即可使电压与频率协调变化。

可以通过调整PWM的周期、PWM的占空比而达到控制充电电流的目的。

这次设计利用51单片机产生占空比可变的矩形波,当产生此矩形波的I/O通过滤波电路再与LED灯相连接后,由于输出矩形波占空比不断变化,那么一个周期内有一部分时间LED导通,一部分时间截止,从整体来看有一个平均电压,因为PWM信号频率周期很高,我们无法通过肉眼来观察到每一个周期LED灯亮灭的变化过程,所以通过平均电压的方式来决定LED灯的亮的程度。

随着波形占空比的不断变化,LED灯也会有着由暗到亮或由亮到暗的不断变化。

以下是基本原理电路图:

 

2、程序设计思路

采用单片机定时器产生PWM波,然后控制LED灯的亮度。

首先对定0赋初值,使之中断(定时)5ms,再让其中断10次(次数可设定,只是输出波占空比变化快慢不同而已),再定义两个变量cc=0,ee=10H(不同的值会有不同的周期,即PWM波的周期,周期不能太大,否则会闪烁)。

cc++,ee--,当cc=10H,ee=0时再cc--,ee++。

在主程序中令P2.0口当cc从0到10H的时间为高电平,而ee从10H到0的时间为低电平,由于定时器的中断,cc不断增加,ee不断减少,则高电平时间越来越长,低电平时间越来越短(总周期不变)。

为了反映出定时器中断对脉冲变化的影响,在P1.0口接一按键,按住时P1.0低电平,中断次数25次,125ms脉冲变化一次,可看到波形占空比变化较慢,按键松开时P1.0高电平,中断10次,则波形占空比变化较快。

以下是实验仿真电路图:

两个三极管有驱动作用,电感和电容起滤波作用,保证LED不至于太过闪烁而看不清亮度变化。

3、总体方案设计

基于C51单片机和PWM调光的LED台灯以STC10F08XE作为主控芯片,设置为手动控制,分为两档,输出不同的PWM占空比对LED的电流进行控制,从而实现了对光度的手动调节。

原理框图如下:

LED

单片机

手动控制

3.1主控电路:

主控电路采用STC10F08XE作为主MCU。

STC10F08XE是一款八位,片内有ROM/EPROM的单片机,其硬件结构具有功能部件种类全,功能强等特点。

这种芯片构成的最小系统简单、实用﹑可靠。

用STC10F08XE单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如下图所示。

本设计所选用的晶振为12MHZ,晶振电容为30PF。

3.2LED驱动

LED的亮度受电流控制,通过控制电流调节LED灯的亮度。

利用公式

可知,利用调整PWM不同的占空比

就可以控制电流的大小。

电流通断的变化用NMOS管K2717实现,三极管9014提供驱动K2717的电流,PWM由P2.0输出,低电平有效。

如下图所示:

3.3手动控制

手动控制分为两档,对应与KEY1与KEY2两个按键(KEY3、KEY4无实际功能)。

如下图所示:

4、系统软件设计

4.1系统软件设计

该系统控制程序主要包含系统初始化程序、实时时钟芯片处理程序、键盘检测与处理程序、闹钟中断以及定时器产生PWM程序构成。

4.2控制程序代码

/*******************************************************************/

//利用定时器控制产生占空比可变的PWM波

//按K1,PWM值增加,则占空比减小,LED灯渐暗。

//按K2,PWM值减小,则占空比增加,LED灯渐亮。

//当PWM值增加到最大值或减小到最小值时,蜂鸣器将报警。

/*********************************************************/

#include

#include

sbitK1=P3^2;//增加键

sbitK2=P3^3;//减少键

sbitBEEP=P2^3;//蜂鸣器

unsignedcharPWM=0x7f;//赋初值

voidBeep();

voiddelayms(unsignedcharms);

voiddelay(unsignedchart);

/*********************************************************/

voidmain()

{

P1=0xff;

TMOD=0x21;

TH0=0xfc;//1ms延时常数12M

TL0=0x18;//频率调节

TH1=PWM;//脉宽调节

TL1=0;

EA=1;

ET0=1;

ET1=1;

TR0=1;

while

(1)

{

do{

if(PWM!

=0xff)

{PWM++;delayms(10);}

elseBeep();

}

while(K1==0);

do{

if(PWM!

=0x02)

{PWM--;delayms(10);}

elseBeep();

}

while(K2==0);

}

}

/*********************************************************/

//定时器0中断服务程序.

/*********************************************************/

voidtimer0()interrupt1

{

TR1=0;

TH0=0xfc;

TL0=0x66;

TH1=PWM;

TR1=1;

P1=0x00;//启动输出

}

/*********************************************************/

//定时器1中断服务程序

/*********************************************************/

voidtimer1()interrupt3

{

TR1=0;

P1=0xff;//结束输出

}

/*********************************************************/

//蜂鸣器子程序

/*********************************************************/

voidBeep()

{

unsignedchari;

for(i=0;i<100;i++)

{

delay(100);

BEEP=!

BEEP;//Beep取反

}

BEEP=1;//关闭蜂鸣器

delayms(100);

}

/*********************************************************/

//延时子程序

/*********************************************************/

voiddelay(unsignedchart)

{

while(t--);

}

/*********************************************************/

//延时子程序

/*********************************************************/

voiddelayms(unsignedcharms)

{

unsignedchari;

while(ms--)

{

for(i=0;i<120;i++);

}

}

/*********************************************************/

五、总结

基于C51单片机和PWM调光的LED灯以STC10F08XE作为主控芯片,通过输出不同的PWM占空比实现了对光度的手动调节。

该LED灯具调光电路有效地调节了8个LED灯的明暗,并且在最明与最暗时均有蜂鸣器报警。

同时,在本次课程设计中,主要有以下体会:

1、对LED的驱动有进一步的了解,明白了如何对LED进行规定电流驱动,并通过输出不同的占空比来调节LED灯的亮度;

2、在设计之前的准备过程中与设计实验的过程中收获了经验,锻炼了能力,开阔了视野;

3、完成实验设计后,我提高了动手能力,提高了学习新知的意识,在配置实验器材时拓展了思路,增长了见识。

.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2