Arduino基础入门二之呼吸灯

引言:      

    之前用UNO R3的数字引脚输出高/低电平实现了LED的亮/灭,而呼吸灯则是让LED明亮度有一个缓慢变化过程,不是直接的亮灭。如何实现?关键就是数字引脚输出的不再是单纯的高低电平,而是PWM信号!

硬件连接和之前一样,只不过要注意接的数字引脚需要有“~”标记,表示可以输出PWM信号。

代码:

    参考学习了两段代码,如下

代码1【1】:

//呼吸灯效果
int ledpin = 9;//led连接引脚
void setup() {
  // put your setup code here, to run once:
   pinMode(ledpin,OUTPUT);//设置LED对应引脚为输出模式
}

void loop() {
  // put your main code here, to run repeatedly:
   fadeon(5);//渐亮
   fadeoff(5);//渐灭
}

void fadeon(int increament){
      for(byte value = 0; value<255;value+=increament){
          analogWrite(ledpin,value);//输出PWM信号
          delay(50);//delay里面时间越大,亮起以及保持亮度的时间越漫长
  
        }
  }

void fadeoff(int decreament){
      for(byte value = 255; value>0;value-=decreament){
          analogWrite(ledpin,value);
          delay(50);//外显效果是从亮到灭的时长
        }
  }
  • 12
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Arduino呼吸灯效果通过逐渐改变LED的亮度来实现。可以使用for循环和延时函数来控制亮度的渐变。在给定的程序中,通过调用fadeon()和fadeoff()函数来实现渐亮和渐灭的效果。在这些函数中,使用analogWrite()函数来输出PWM信号控制LED的亮度,同时使用delay()函数来控制亮度变化的速度和流畅度。如果没有延时语句,整个变化过程会非常快,肉眼无法观察到亮度的调节效果。 [2 [3123 #### 引用[.reference_title] - *1* [六、Arduino呼吸灯的实现](https://blog.csdn.net/qq_45807930/article/details/120625334)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *2* [Arduino基础入门呼吸灯](https://blog.csdn.net/u013978070/article/details/119184771)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *3* [呼吸灯](https://blog.csdn.net/G1342522389/article/details/46271635)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值