用于 2 辆 DC 汽车的 arduino IDE 代码,带有 L298 和超声波和蓝牙控制与安卓

arduino IDE code for 2 DC car with L298 and ultrasonic and bluetooth control with android

本文关键字:超声波 L298 控制 带有 DC 汽车 代码 IDE arduino 用于      更新时间:2023-10-16

我想让我的车与机器人一起移动,如果距离 20 厘米旋转。这是我编写的代码:

#include "SoftwareSerial.h" 
#include  "Ultrasonic.h"
 int distance = 0;
 int UltrasonicData;
 Ultrasonic ultrasonic (12,13);
const int IN1=3;
const int IN2=5;
const int IN3=6;
const int IN4=9;
 boolean Rotate=true;
 int BluetoothData;
 SoftwareSerial HC05(1,0); // RX, TX
 int  SPEED_Control=200;
 void setup() {
pinMode( IN1 ,OUTPUT);// Right Motor 1st wire
pinMode( IN2 ,OUTPUT);// Right Motor 2nd wire
pinMode( IN3 ,OUTPUT);// left Motor 1st wire
pinMode( IN4 ,OUTPUT);// left Motor 2nd wire
 HC05.begin(9600);
}
 void FORWARD(int Speed){

  analogWrite(IN1,0);
  analogWrite(IN2,Speed);
   analogWrite(IN3,Speed);
  analogWrite(IN4,0);
}
void BACKWARD(int Speed){
 //When we want to let Motor To Rotate Counter clock wise
 // just void this part on the loop section .
 analogWrite(IN1,Speed);
 analogWrite(IN2,0);
  analogWrite(IN3,0);
  analogWrite(IN4,Speed);
}
 void LEFT(int Speed){
 analogWrite(IN1,0);
  analogWrite(IN2,Speed);
 analogWrite(IN3,0);
 analogWrite(IN4,Speed);
}
 void RIGHT(int Speed){
 analogWrite(IN1,Speed);
 analogWrite(IN2,0);
 analogWrite(IN3,Speed);
  analogWrite(IN4,0);
}
void Stop(){
 analogWrite(IN1,0);
 analogWrite(IN2,0);
 analogWrite(IN3,0);
 analogWrite(IN4,0);
}
 void loop() {
if(ultrasonic.available()){
UltrasonicData=ultrasonic.read();
Serial.println(ultrasonic);}
distance=ultrasonic.Ranging(CM);
       Rotate=!Rotate ;// Random direction
      if(UltrasonicData<=20 &&Rotate==true ){
        RIGHT(120);
     }
      if(UltrasonicData<=20 &&Rotate==false){
         LEFT(120);
     }
  if (HC05.available()){
 BluetoothData=HC05.read();
Serial.println(BluetoothData);
 if(BluetoothData=='F'){   // if number 1 pressed .... 
  FORWARD(SPEED_Control);
  }
  if(BluetoothData=='B'){   // if number 1 pressed .... 
  BACKWARD(SPEED_Control);
  }
  if(BluetoothData=='L'){   // if number 1 pressed .... 
   RIGHT(SPEED_Control);
  }
   if(BluetoothData=='R'){   // if number 1 pressed ....
   LEFT(SPEED_Control);
   }
    if(BluetoothData=='S'){   // if number 1 pressed ....
   Stop();
   }
   if(BluetoothData=='0'){  SPEED_Control=0 ;}//Speed 
   if(BluetoothData=='1'){  SPEED_Control=50; }//Speed 
   if(BluetoothData=='2'){  SPEED_Control=100; }//Speed 
   if(BluetoothData=='3'){  SPEED_Control=120; }//Speed 
   if(BluetoothData=='4'){  SPEED_Control=140; }//Speed 
   if(BluetoothData=='5'){  SPEED_Control=160; }//Speed 
   if(BluetoothData=='6'){  SPEED_Control=180; }//Speed 
   if(BluetoothData=='7'){  SPEED_Control=200; }//Speed 
   if(BluetoothData=='8'){  SPEED_Control=220; }//Speed 
   if(BluetoothData=='9'){  SPEED_Control=240; }//Speed 
   if(BluetoothData=='q'){  SPEED_Control=255; }//Speed   
  }
 }

问题:我收到以下错误

C:\程序文件 (x86)\Arduino\hardware\arduino\avr\cores\arduino/Print.h:81:12: 注意: 候选人期望 0 个参数,提供 1 个参数

您从未初始化串行显示器。

Serial.begin(9600)

或者您想要的任何波特率。