如何使单片机led灯半亮

来源:百度知道 编辑:UC知道 时间:2024/06/27 23:56:37
要用c语言写的。谢谢了

对!用PWM。如果你懂单片机,那么看看PWM相关资料就行了。
或者你写一个方波,试试不同的占空比,看看那种情况符合半亮,也行的。

#include<reg51.h>
sbit LED=P1^0; //高电瓶点亮LED

void delay(unsigned char w)
{
while(w--);
}

void main()
{
while(1)
{
LED=1;
delay(5);
LED=0;
delay(5); //LED半亮,增加这条语句括号的值LED会更暗。可以看的出,高电瓶输出形成了一个为%50的占空比
}
}

何必那么麻烦,在LED灯的前面加个限流电阻,让LED工作在低于额定情况下就可以半亮了,PWM的目的也是让它工作在低于额定情况的。所以还不如加个电阻 几分钱而已。

让led灯交替亮灭,控制灯亮灭的延时时间即可!

用pwm波 具体我也不会^^