Arduino接收到光电开关收信号后控制减速电机的代码
时间: 2024-05-11 17:18:51 浏览: 17
以下是一个简单的示例代码,用于控制 Arduino 上的光电开关和减速电机:
```c++
// 定义光电开关的引脚
const int photoResistorPin = A0;
// 定义减速电机的引脚
const int motorPin1 = 2;
const int motorPin2 = 3;
const int motorEnablePin = 9;
void setup() {
// 初始化串口通信
Serial.begin(9600);
// 设置光电开关引脚为输入模式
pinMode(photoResistorPin, INPUT);
// 设置减速电机引脚为输出模式
pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
pinMode(motorEnablePin, OUTPUT);
// 使能减速电机
digitalWrite(motorEnablePin, HIGH);
}
void loop() {
// 读取光电开关的状态
int photoResistorValue = analogRead(photoResistorPin);
// 如果光电开关被触发
if (photoResistorValue > 500) {
// 控制减速电机正转
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
// 输出调试信息
Serial.println("光电开关被触发!");
} else {
// 控制减速电机停止转动
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
}
}
```
在这个示例代码中,我们使用 `analogRead()` 函数读取光电开关的状态。如果光电开关被触发,则控制减速电机正转;否则,停止减速电机的转动。注意,我们还需要使用 `digitalWrite()` 函数来控制减速电机的引脚状态。同时,我们还使用了串口通信输出调试信息,以便在调试时观察程序运行情况。