51单片机实现LED二极管亮度阶梯变化

本文介绍了如何使用51单片机通过PWM技术实现LED二极管的亮度阶梯变化,周期设置为2.5ms,占空比有10级调节,以达到10个亮度等级。开发过程中参考了郭天祥的单片机电路,并且为了提高LED的最大亮度,选择了270欧姆的串联电阻,确保流经LED的电流不超过20mA。
摘要由CSDN通过智能技术生成

说明:

    1、采用PWM调光实现该功能,周期为2.5ms,占空比有10个等级的变化,LED亮度也同样呈现10个等级

    2、开发板电路图参照郭天祥单片机电路

    3、流经LED的电流应不大于20mA,与LED串联的电阻采用270欧姆,而非1K,这样可使增加LED最大亮度

代码:

#include<reg52.h> 
char code table[]={
 0x06,0x5b,0x4f,
 0x66,0x6d,0x7d,0x07,
 0x7f,0x6f,0x77
};
unsigned int scale=1;   //控制占空比
sbit led1=P1^0;
sbit key1=P3^4;
sbit dula=P2^6;
sbit wela=P2^7;
unsigned int num=0;
void change();
void delay(int);
void main(void)       // 主程序
{
 TMOD=0x02;  //定时器0,工作模式2(0000,0010),8位定时模式
 TH0=0x06;   //写入预置初值6到定时
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值