您当前的位置:首页 > 教程 > Arduino教程 > 【Arduino教程】第九课:使用Arduino的PWM控制实现LED呼吸灯 网站首页 Arduino教程
【Arduino教程】第九课:使用Arduino的PWM控制实现LED呼吸灯
发布时间:2017-09-20 13:26:12编辑:阅读()
-
每当夜晚走在寂静的大街上,就可以看到路边的树上、大厦上总是挂着一串串的霓虹灯,灯光总是缓慢的由暗变明,然后又缓慢的从明变暗,那个时候总是会想这是怎么实现的呢?你是不是也曾经和我有一样的想法呢?前边的Arduino教程中我们分别用轻触开关按钮、电位器通过PWM方式调节LED的亮度,今天就教大家如何使用软件的方式做一个呼吸灯。
1、什么是呼吸灯
呼吸灯是指灯光在微电脑的控制之下完成由亮到暗的逐渐变化,感觉好像是人在呼吸
2、材料
Arduino板一块
面包板一块
面包板连接线若干
LED一个
330欧电阻一个
3、电路图
按照上图,把LED经过电阻接到Arduino的11脚上就可以了,为什么要接在11脚上我之前有给大家说过,不知道各位小伙伴是否还记得,如果不记得就去翻翻之前的教程。
其实LED的调光很简单,各位小伙伴在学校里有没有认真学习,书本上曾经说过,人眼有视觉暂留时间,就是一样东西从你眼前拿走后,你其实并没有马上觉察,0.05秒之后你才看到东西不见了。所以我们可以在先点亮LED,然后再熄灭,然后再点亮,只要这个熄灭时间小于0.05秒,你是看不出LED曾经熄灭过。所以我们就可以使用PWM不停的点亮和熄灭LED,只是你觉察不到而已。然后我们可以用程序控制点亮和熄灭的间隔时间和持续,就可以控制LED的亮度了,如果控制的好那么就会产生呼吸的效果啦。
4、代码
前边已经说过原理了,这里就直接上代码吧
void setup ()
{
pinMode(11,OUTPUT);
}
void loop()
{
for (int a=0; a<=255;a++) /*循环语句,控制PWM亮度的增加*/
{
analogWrite(11,a);
delay(8); /*当前亮度级别维持的时间,单位毫秒*/
}
for (int a=255; a>=0;a--) /*循环语句,控制PWM亮度减小*/
{
analogWrite(11,a);
delay(8); /*当前亮度的维持的时间,单位毫秒*/
}
delay(800); /*完成一个循环后等待的时间,单位毫秒*/
}5、新出现的函数
今天的Arduino中没有出现新的函数,如果有不认识的函数可以翻看之前的教程,查找函数解释。
关键字词:Arduino教程,呼吸灯,PWM控制