arduino按钮控制两个舵机
作者:野牛程序员:2023-08-16 17:10:22Arduino阅读 3086
以下是一个示例代码,演示了如何使用Arduino按钮来控制两个舵机的转动。在这个示例中,按下一个按钮会使第一个舵机从起始位置转动到目标位置,同时按下另一个按钮会使第二个舵机从起始位置转动到目标位置。
#include <Servo.h>
Servo servo1; // 创建一个Servo对象,用于控制第一个舵机
Servo servo2; // 创建一个Servo对象,用于控制第二个舵机
int buttonPin1 = 2; // 第一个按钮连接的引脚
int buttonPin2 = 3; // 第二个按钮连接的引脚
int startPos = 0; // 起始位置(0度)
int endPos = 90; // 目标位置(90度)
int step = 1; // 转动步长
void setup() {
servo1.attach(9); // 将第一个Servo对象连接到D9引脚
servo2.attach(10); // 将第二个Servo对象连接到D10引脚
pinMode(buttonPin1, INPUT); // 将第一个按钮引脚设置为输入模式
pinMode(buttonPin2, INPUT); // 将第二个按钮引脚设置为输入模式
}
void loop() {
int buttonState1 = digitalRead(buttonPin1); // 读取第一个按钮状态
int buttonState2 = digitalRead(buttonPin2); // 读取第二个按钮状态
if (buttonState1 == HIGH) {
// 控制第一个舵机转动
for (int pos = startPos; pos <= endPos; pos += step) {
servo1.write(pos); // 设置第一个舵机角度
delay(15); // 等待一小段时间,使舵机平滑转动
}
}
if (buttonState2 == HIGH) {
// 控制第二个舵机转动
for (int pos = startPos; pos <= endPos; pos += step) {
servo2.write(pos); // 设置第二个舵机角度
delay(15); // 等待一小段时间,使舵机平滑转动
}
}
}在这个示例中,当按下第一个按钮时,第一个舵机会从起始位置转动到目标位置;当按下第二个按钮时,第二个舵机会从起始位置转动到目标位置。可以根据需要调整按钮引脚、起始位置、目标位置和步长。这个示例使用阻塞式的方式来控制舵机转动,可以考虑使用非阻塞的方法来提高代码的灵活性和响应速度。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:arduino舵机转动程序
- 下一篇:arduino按键代码
