PWM控制LED亮度 单片机课程设计.docx

上传人:b****3 文档编号:4038038 上传时间:2022-11-27 格式:DOCX 页数:14 大小:453.37KB
下载 相关 举报
PWM控制LED亮度 单片机课程设计.docx_第1页
第1页 / 共14页
PWM控制LED亮度 单片机课程设计.docx_第2页
第2页 / 共14页
PWM控制LED亮度 单片机课程设计.docx_第3页
第3页 / 共14页
PWM控制LED亮度 单片机课程设计.docx_第4页
第4页 / 共14页
PWM控制LED亮度 单片机课程设计.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

PWM控制LED亮度 单片机课程设计.docx

《PWM控制LED亮度 单片机课程设计.docx》由会员分享,可在线阅读,更多相关《PWM控制LED亮度 单片机课程设计.docx(14页珍藏版)》请在冰豆网上搜索。

PWM控制LED亮度 单片机课程设计.docx

PWM控制LED亮度单片机课程设计

摘要

目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。

更不用说自动控制领域的机器人、智能仪表、医疗器械了。

因此,单片机的学习、开发与应用尤为重要。

而51单片机是各类单片机中最为典型和最具代表性的一种。

本实验是基于MCS-51系列单片机所设计的,以单片机芯片AT89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,实现PWM控制LED的亮度。

关键词:

AT89C51、PWM、LED

目录

1项目概述和要求1

1.1单片机基础知识1

1.2单片机的发展趋势2

1.3项目设计任务与设计思路3

2系统设计5

2.1系统电路原理图5

2.2元件清单5

2.2.1AT89C51芯片5

2.2.2LED7

2.2.3其它元件8

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等通用产品。

1.2单片机的发展趋势

单片机现在可以说是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,互成互补,为单片机的应用提供了广阔的天地。

纵观单片机的发展过程,可以预示单片机的发展趋势,大致有:

一、微型单片化

现在常规的单片机普遍都是将中央处理器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功能就越强大。

甚至单片机厂商还可以根据用户的要求量身定做,制造出具有自己特色的单片机芯片。

此外,现在的产品普遍要求体积小、重量轻,这就要求单片机除了功能强和功耗低外,还要求其体积要小。

现在的许多单片机都具有多种封装形式,其中SMD(表面封装)越来越受欢迎,使得由单片机构成的系统正朝微型化方向发展。

二、低功耗CMOS化

MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗要求越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。

像80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。

CMOS虽然功耗低,但由于其物理特征决定其工作速度不够高,而CHMOS则具备了高速和低功耗的特点,这些特征,更适合于要求低功耗像电池供电的应用场合。

所以这种工艺将是今后一段时期单片机发展的主要途径。

三、主流与多品种共存

现在虽然单片机的品种繁多,各具特色,但仍以89C51为核心的单片机占主流,兼容其结构和指令系统的有PHILIPS公司的产品,ATMEL公司的产品和中国台湾的Winbond系列单片机。

所以89C51占据了半壁江山。

而Microchip公司的PIC精简指令集合(RISC)也有着强劲的发展势头,中国台湾的HOLTEX公司近年的单片机产量与日俱增,与其底价质优的优势,占据一定的市场份额。

此外还有MOTOROLA公司的产品,日本几大公司的专用单片机。

在一定的时期内,这种情形将得以延续,将不存在某个单片机一统天下的垄断局面,走的是依存互补、相辅相成、共同发展的道路。

九十年代以后,单片机在结构上采用双CPU或内部流水线,CPU位数有8位、16位、32位,时钟频率高达20MHZ,片内带有PWM输出、监视定时器WDT、可编程计数器阵列PCA、DMA传输、调制解调器等。

芯片向高度集成化、低功耗方向的发展,使得单片机在大量数据的实时处理、高级通信系统、数字信号处理、复杂工业过程控制、高级机器人以及局域网等方面得到大量应用。

这类单片机有NEC公司的MPD7800,MITSUBISHI公司的M337700,REVKWELL公司的R6500。

1.3项目设计任务与设计思路

设计任务:

模拟PWM输出控制LED的10个亮度级别

设计思路:

LED一般是恒流操作的,如何改变LED的亮度呢?

答案就是PWM控制。

在一定的频率的方波中,调整高电平和低电平的占空比,即可实现。

比如我们用低电平点亮一个LED灯,我们假设把一个频率周期分为10个时间等份,如果方波中的高低电平占空比是9:

1,这是就是一个比较暗的亮度,如果方波中高低电平占空比是10:

0,这时,全部是高电平,灯是灭的。

如果占空比是5:

5,就是一个中间亮度,如果高低比是1:

9,是一个比较亮的亮度,如果高低是0:

10,这时全部是低电平,就是最亮的。

实际上应用中,电视屏幕墙中的几十百万LED象素都是这样控制的,而且每一个象素都有红绿蓝3个LED,每个LED可以变化的亮度是几百到几万或者更多的级别,以实现真彩色的显示。

还有在您的手机中,背光灯的亮度如果是可以变化的,也应该是这种工作方式。

目前的城市彩灯也有很多都使用了LED,需要控制亮度是也是PWM控制。

在程序中,我们将定时器2溢出定为1/1200秒。

每10次脉冲输出一个120HZ频率。

这每10次脉冲再用来控制高低电平的10个比值。

这样,在每个1/120秒的方波周期中,我们都可以改变方波的输出占空比,从而控制LED灯的10个级别的亮度。

为什么输出方波的频率要120HZ这么高?

因为如果频率太低,人眼就会看到闪烁感觉。

一般起码要在60HZ以上才感觉好点,120HZ就基本上看不到闪烁,只能看到亮度的变化了。

 

 

2系统设计

2.1系统电路原理图

图2-1利用PWM信号控制LED亮度的驱动电路

2.2元件清单

2.2.1AT89C51芯片

AT89C51芯片图如下图2-2-1所示。

图2-2-1AT89C51芯片图

图2-2-2AT8952实物图

①简介:

AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能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.2LED

◆LED灯显示的原理

原理:

LED是英文lightemittingdiode(发光二极管)的缩写,它的基本结构是一块电致发光的半导体材料,置于一个有引线的架子上,然后四周用环氧树脂密封,起到保护内部芯线的作用,所以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程序

#defineucharunsignedchar//定义一下方便使用

#defineuintunsignedint

#defineulongunsignedlong

#include//包括一个52标准内核的头文件

sbitP10=P1^0;//要控制的LED灯

sbitP11=P1^1;

sbitP12=P1^2;

sbitP13=P1^3;

sbitP14=P1^4;

sbitP15=P1^5;

sbitP16=P1^6;

sbitP17=P1^7;

ucharscale;//用于保存占空比的输出0的时间份额,总共10份

charcodedx516[3]_at_0x003b;//这是为了仿真设置的

//模拟PWM输出控制灯的10个亮度级别

voidmain(void)//主程序

{

uintn;

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()interrupt5

{

staticuchartt;//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是英国LabcenterElectro-nics公司开发的一款电路仿真软件,软件由两部分组成:

一部分是智能原理图输入系统ISIS(IntelligentSchematicInputSystem)和虚拟系统模型VSM(VirtualModelSystem);另一部分是高级布线及编辑软件ARES(Adv-Ancd RoutingandEditingSoftware)也就是PCB.

图4-1ISIS启动界面

图4-2  单片机属性的设定

 

硬件调试分为静态调试和动态调试,对于硬件调试而言,只要认真焊接,硬件一般不会出现什么问题的。

静态调试一般采用的工具是万用表,它是在用户系统未工作时的一种硬件检测。

动态调试是在用户系统工作的情况下发现和排查错误的一种硬件检测。

调试步骤是:

首先把电路分为若干模块,调试过程中与该模块无关的元件可以不加考虑,这样可把故障限定在一定的范围内;故障清除后,把各个模块合在一起进行联调,即可完成整个硬件调试工作。

4.2软件调试

KeilμVision2开发环境介绍:

Keil软件是目前最流行开发MCS-51系列单片机的软件。

Keil提供包括C编译器,宏汇编,连接器,库管理和一个功能强大的仿真调试器等在内的完整开发方案。

通过一个集成开发环境μVision2将这些部分组合在一起。

软件调试是通过对程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。

4.3软硬件调试

软硬件联调是指把调试无误的软件程序烧制进单片机芯片内部,通上电源后,检查硬件工作是否有预期的效果,如果没有则需要检测软件是否在实现功能上有欠缺。

若有错误,通过改写软件来调试,直至达到预期效果,则设计圆满成功。

本课程设计调试结果如下图4-3所示。

图4-3调试结果图

5总结

经过将近一个星期的课程设计,PWM控制LED的亮度设计基本完成,系统功能基本实现,测试运行也基本正常。

该系统基本上完成了模拟PWM控制LED的亮度。

当然这个系统还存在许多有待完善的地方:

功能相对较少,有待于添加,比方说时钟与闹钟功能;界面设计得不够精致完美;

这次课程设计的时间虽然不算很长,但使我对很多东西有了更深刻的认识。

总结如下:

1.单片机基础知识要熟练掌握。

2.查阅资料和阅读相关文献的重要性,充分利用网络这个大的资料库。

.3..向同学请教的重要性以及团队协作的重要性。

4.勤动手的重要性,自己动手,丰衣足食!

在一次次调试代码的过程中,我才明白“代码不是写出来的,是调试出来的”的道理。

5.对待任何事情都要有耐心和恒心,遇到问题要冷静地思考,积极找出症结所在,逐个解决。

通过本次课程设计,我更深刻的认识到了教学实践在大学课程中的重要性,同时也发觉到了自己在学习方面存在的许多不足之处,在以后的学习中我会努力改进这些不足,不断提高自己的动手实践能力。

 

参考文献

[1]康华光,陈大钦.电子技术基础—模拟部分(第五版)[M].北京:

高等教育出版社,2005

[2]李朝青.单片机原理及接口技术(第3版)[M].北京航空航天大学出版社,2005

[3]兰吉昌.51单片机应用设计百例.[M].北京:

化学工业出版社,2009

[4]

[5]

[6]丁元杰单片微机原理与应用(第3版)机械工业出版社,2009

[7]

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1