当前位置:首页 > 壁挂炉 > 文章正文

Arduino电子小制作之呼吸灯的实现

编辑:[db:作者] 时间:2024-08-25 05:30:38

在上一节说到了PWM这个观点,大略来说便是掌握占空比,通过掌握LED灯的占空比,可以调节它的亮度,当然PWM可以掌握的远不止LED,像我们上一节说讲的直流马达、 于是问题来了,怎么连续不断的让LED灯的亮度变革呢?很大略我们只须要不断地掌握占空比,呼吸灯的效果就实现了。

事理图

事理图如下所示,LED灯和一个电阻串联,只用到了Arduino的一个引脚9~,也便是仿照输出引脚。

Arduino电子小制作之呼吸灯的实现

我们只须要掌握9~引脚输出的占空比,就能掌握LED灯的亮度,是不是听起来很神奇,好了,立时把你的想法实现吧!

程序

#define LED 9 //把LED灯连在引脚9

int i = 0;

void setup(){

pinMode(LED,OUTPUT); //设定LED为输出模式

}

Void loop(){

for(i = 0;i<=255; i++); //让LED灯亮度由最暗逐渐到最亮

{

analogWrite(LED,i);//掌握LED灯的亮度

delay(10); //延时10ms

}

for(i = 255;i>=0; i—);//让LED灯亮度由最亮到最暗

{

analogWrite(LED,i);//掌握LED灯的亮度

delay(10); //延时10ms

}

}

在程序中只须要用到两个for循环,第一个for循环让LED灯亮度逐渐增加;第二个for循环让LED灯亮度逐渐降落;analogWrite(LED,i)函数是掌握仿照输出的,i的范围是0~255,i的值越大,LED灯亮度越亮。
根据delay(5)延时的韶光我们可以打算出呼吸灯的周期,如果延时为5ms,那么LED灯呼吸的周期为:5✖️(256+256)=2560ms,大约便是2.5s。

实验征象

分别为delay(5)和delay(10)的实验征象。

视频加载中...

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除,如需转载请保留原文地址:http://www.baanla.com/bgl/141538.html

XML地图 | 自定链接

Copyright 2005-20203 www.baidu.com 版权所有 | 琼ICP备2023011765号-4 | 统计代码

声明:本站所有内容均只可用于学习参考,信息与图片素材来源于互联网,如内容侵权与违规,请与本站联系,将在三个工作日内处理,联系邮箱:123456789@qq.com