电子产品世界 » 论坛首页 » 嵌入式开发 » 单片机 » Arduino nano学习0x03——PWM输出控制LED渐变


共4条 1/1 1 跳转至

Arduino nano学习0x03——PWM输出控制LED渐变

高工
2017-06-16 23:45:01    评分
一、背景

通过PWM进行脉宽调制,控制LED渐亮或渐灭,实现呼吸灯的效果。开发板有6个PWM口,分别是3,5,6,9,10,和11引脚

二、硬件连接

D9接LED+,LED-接一个5K限流电阻接GND


三、程序

int led = 9;               // 指定硬件引脚
int brightness = 0;    // 灯的亮度变量
int fadeAmount = 5;    //亮度渐变最小值

// 初始化
void setup() {
  //定义LED是个输出引脚
  pinMode(led, OUTPUT);
}


void loop() {
  // 设定LED脚亮度
  analogWrite(led, brightness);

  //下一次循环,改变亮度值
  brightness = brightness + fadeAmount;

  //在渐变末尾,翻转渐变方向
  if (brightness <= 0 || brightness >= 255) {
    fadeAmount = -fadeAmount;
  }
  //等待延时30ms,在进行下次亮度变化
  delay(30);
}

四、函数说明

语法
analogWrite(pin, value)

参数
pin:写入的端口
value:占空比:在0-255之间。




关键词: Arduino    

专家
2017-06-17 09:03:59    评分
2楼
谢谢楼主分享源码。

专家
2017-06-18 16:59:09    评分
3楼

这个东西好高级啊~~

基本不需要读数据手册就可以输出PWM波了


专家
2017-06-19 09:09:14    评分
4楼
来个效果图

共4条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]