### 代码示例:
```cpp
#include <Servo.h>
Servo myServo; // 创建一个舵机对象
void setup() {
myServo.attach(9); // 将舵机连接到数字引脚9
}
void loop() {
myServo.write(0); // 将舵机转到0度位置
delay(1000); // 等待1秒
myServo.write(90); // 将舵机转到90度位置
delay(1000); // 等待1秒
myServo.write(180); // 将舵机转到180度位置
delay(1000); // 等待1秒
}
```
### 代码说明:
1. **`#include <Servo.h>`**: 引入Arduino的`Servo`库。
2. **`Servo myServo;`**: 创建一个`Servo`对象,命名为`myServo`。
3. **`myServo.attach(9);`**: 将舵机连接到Arduino的数字引脚9。
4. **`myServo.write(angle);`**: 控制舵机转到指定的角度(0到180度)。
5. **`delay(1000);`**: 延时1秒,等待舵机转动到指定位置。
### 注意事项:
- 舵机的角度范围通常是0到180度,但具体范围取决于舵机的型号。
- 如果舵机需要更大的电流,建议使用外部电源供电,而不是直接从Arduino的5V引脚供电。
### 扩展:
你可以通过添加传感器(如电位器或超声波传感器)来控制舵机的角度,实现更复杂的功能。例如,使用电位器来控制舵机角度:
```cpp
#include <Servo.h>
Servo myServo; // 创建一个舵机对象
int potPin = A0; // 电位器连接到模拟引脚A0
void setup() {
myServo.attach(9); // 将舵机连接到数字引脚9
}
void loop() {
int potValue = analogRead(potPin); // 读取电位器的值(0到1023)
int angle = map(potValue, 0, 1023, 0, 180); // 将电位器值映射到0到180度
myServo.write(angle); // 控制舵机转到对应的角度
delay(15); // 稍微延时,稳定舵机位置
}
```
这个扩展代码会根据电位器的旋转角度来控制舵机的转动角度。