a rduino循迹小车代码
时间: 2023-07-09 09:30:33 浏览: 95
以下是一个简单的Arduino循迹小车代码示例:
```c++
#define IN1 5
#define IN2 6
#define IN3 9
#define IN4 10
#define S1 A0
#define S2 A1
#define S3 A2
#define S4 A3
void setup() {
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
pinMode(S1,INPUT);
pinMode(S2,INPUT);
pinMode(S3,INPUT);
pinMode(S4,INPUT);
}
void loop() {
int left = analogRead(S1);
int middle = analogRead(S2);
int right = analogRead(S3);
if(middle < 600){
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
}
else if(left < 600){
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
}
else if(right < 600){
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
}
else{
digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
}
}
```
该代码使用了4个红外传感器(S1 - S4)进行循迹,通过读取传感器的值来确定小车应该向左、向右或向前走。如果当前位置是在黑线上,则直行,如果在黑线左侧,则向右转,如果在黑线右侧,则向左转。通过控制电机的转动方向,可以使小车朝着正确的方向行驶。
阅读全文