循迹小车Arduino 程序.docVIP

  • 95
  • 0
  • 约2.47千字
  • 约 2页
  • 2020-10-08 发布于浙江
  • 举报
//循迹小车Arduino 程序: // R是右(right),L是左(left) 小车对着自己看时 分的左右 int MotorRight1=14; //A0 IN1 int MotorRight2=15; //A1 IN2 int MotorLeft1=16; //A2 IN3 int MotorLeft2=17; //A3 IN4 int MotorRPWM=5; //PWM 5 int MotorLPWM=3; //PWM 3 const int SensorLeft = 2; //左感測器輸入腳 const int SensorRight = 6; //右感測器輸入腳 int SL; //左感測器狀態 int SR; //右感測器狀態 void setup() { Serial.begin(9600); pinMode(MotorRight1, OUTPUT); // 腳位 14 (PWM) pinMode(MotorRight2, OUTPUT); // 腳位 15 (PWM) pinMode(MotorLeft1, OUTPUT); // 腳位 16 (PWM) pinMode(MotorLeft2, OUTPUT); // 腳位 17 (PWM) pinMode(MotorLPWM, OUTPUT); // 腳位 3 (PWM) pinMode(MotorRPWM, OUTPUT); // 腳位 5 (PWM) pinMode(SensorLeft, INPUT); //定義左感測器 pinMode(SensorRight, INPUT); //定義右感測器 } void loop() { SL = digitalRead(SensorLeft); SR = digitalRead(SensorRight); if (SL == LOWSR==LOW)// 前進 { digitalWrite(MotorRight1,LOW);//IN1 右电机 高电平反转 digitalWrite(MotorRight2,HIGH);//IN2 右电机 高电平正转 analogWrite(MotorRPWM,130); //0---100--250 digitalWrite(MotorLeft1,LOW);//IN3 左电机 高电平正转 digitalWrite(MotorLeft2,HIGH);//IN4 左电机 高电平反转 analogWrite(MotorLPWM,130); } else // R是右(right),L是左(left) 小车对着自己看时 分的左右 { if (SL == HIGH SR == LOW)// 左白右黑, 快速左轉 { delay(1); digitalWrite(MotorRight1,HIGH);//IN1 右电机 高电平反转 digitalWrite(MotorRight2,LOW);//IN2 右电机 高电平正转 analogWrite(MotorRPWM,130); digitalWrite(MotorLeft1,LOW);//IN3 左电机 高电平正转 digitalWrite(MotorLeft2,HIGH);//IN4 左电机 高电平反转 analogWrite(MotorLPWM,130); } else if (SR == HIGH SL == LOW) // 右白左黑, 快速右轉 { delay(1); digitalWrite(MotorRight1,LOW);//IN1 右电机 高电平反转 digitalWrite(MotorRight2,HIGH);//IN2 右电机 高电平正转 analogWrite(MotorRPWM,130);

文档评论(0)

1亿VIP精品文档

相关文档