Arduino 是一款流行的开源电子原型平台,广泛应用于交互式项目和创意作品。其中,PWM
(脉冲宽度调制)是 Arduino 中一个重要的功能,它允许用户控制模拟设备的功率输出,如
LED 的亮度、电机的速度等。本文将详细介绍如何使用 Arduino 实现 PWM,并探索其在不同
项目中的应用。
#### PWM 简介
PWM 是一种利用数字信号来控制模拟量的技术。在 Arduino 中,PWM 是通过改变输出引脚
的高电平时间与总周期时间的比例来实现的,这个比例称为占空比。
#### Arduino 的 PWM 功能
Arduino Uno 拥有 6 个 PWM 兼容的引脚,标记为`~`,可以输出 PWM 信号。例如,引脚 3、
5、6、9、10 和 11。
#### 1. 配置 PWM 引脚
在 Arduino 中,配置 PWM 引脚非常简单。首先,需要包含 PWM 库:
```cpp
#include <Arduino.h>
```
然后,在`setup()`函数中,设置引脚为输出模式:
```cpp
void setup() {
pinMode(9, OUTPUT); // 将数字 9 号引脚设置为输出模式
}
```
#### 2. 编写 PWM 信号
在`loop()`函数中,使用`analogWrite()`函数来生成 PWM 信号:
```cpp
void loop() {
analogWrite(9, 128); // 在 9 号引脚上生成占空比为 50%的 PWM 信号
delay(1000); // 等待 1 秒
}
```
`analogWrite()`函数的第一个参数是引脚号,第二个参数是 PWM 值,范围通常是 0(始终低)
到 255(始终高)。
#### 3. 调整 PWM 频率