- 前言
- 程序设计
- 设计思路
- 代码示例
前言
本节是基于51单片机下 利用调整PWM输出脉宽进而控制 led灯的输出频率,使得 led 灯出现所谓“呼吸灯”的状况,具体详情如下。
程序设计 设计思路
先给 led 指定一个亮灭周期,然后在这周期内设置它的占空比,随着占空比的增大,led 灯越来越亮,所以先设置占空比由0增到最大,然后再设置由最大减到0,这样即可产生呼吸灯的效果。
代码示例#include
sbit LED=P2^0;
void Delay(unsigned int t)
{
while(t--);
}
void main()
{
unsigned char Time,i;
while(1)
{
for(Time=0;Time<50;Time++) //改变亮灭时间,由暗到亮
{
for(i=0;i<20;i++) //计次延时
{
LED=0; //LED亮
Delay(Time); //延时Time
LED=1; //LED灭
Delay(100-Time); //延时100-Time
}
}
for(Time=50;Time>0;Time--) //改变亮灭时间,由亮到暗
{
for(i=0;i<20;i++) //计次延时
{
LED=0; //LED亮
Delay(Time); //延时Time
LED=1; //LED灭
Delay(100-Time); //延时100-Time
}
}
}
}
,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)