遥控小车----arduino,L298n(红),HC-05

所需器件:
(1)arduino板子
遥控小车----arduino,L298n(红),HC-05
(2)L298n电机控制模块
遥控小车----arduino,L298n(红),HC-05
(3)HC-05蓝牙模块
遥控小车----arduino,L298n(红),HC-05
(4)亚克力板小车,两个电机等
遥控小车----arduino,L298n(红),HC-05
(5)电池
(6)安卓手机
遥控小车----arduino,L298n(红),HC-05
遥控小车----arduino,L298n(红),HC-05
器件的检验:
(1)电机:接电池的正负极,反接电机反转
(2)L298n:12v接口接电池正极,gnd接地;IN1,IN2分别接正负极,OUT1,OUT2接一个电机,反接电机反转;IN3,IN4,OUT3,OUT4同理
(3)HC-05:
打开AT模式:
~连线方式:VCC和GND分别接arduino的5V和GND,HC-05的RX和TX分别接arduino的TX和RX
~代码:

  // put your setup code here, to run once:
  Serial.begin(38400);
 
}

void sendcmd()
{
    Serial.println("AT");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  } // Get response: OK
  delay(1000); // wait for printing 

  
  Serial.println("AT+NAME=HC-05");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);

  Serial.println("AT+ADDR?");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);

  Serial.println("AT+PSWD=1234");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);
  
}


void loop() {
    sendcmd();
}

打开串口监视器,设置波特率为38400
注意:上传程序时要断开HC-05和arduino的连线
~上传程序完成后,连接HC-05时,注意要在按键的同时给该模块通电,当指示灯差不多2秒闪烁一次时代表AT模式打开,此时即可在该安卓机上搜索到名为HC-05的蓝牙
器件的连线:
arduino的5V,HC-05的VCC,L298n的12V与电源的正极相接;arduino,L298N,HC-05的GND与电池的负极相接;L298n的IN1,IN2,IN3,IN4与arduino的2,3,4,5相接;L298n的OUT1OUT2连接一个电机,OUT3OUT4连接第二个电机;arduino与HC-05的接线方式与上一步中的相同。
控制程序:

  // put your setup code here, to run once:
  Serial.begin(38400);
 
}

void sendcmd()
{
    Serial.println("AT");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  } // Get response: OK
  delay(1000); // wait for printing 

  
  Serial.println("AT+NAME=HC-05");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);

  Serial.println("AT+ADDR?");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);

  Serial.println("AT+PSWD=1234");
  while(Serial.available())
  {
    char ch;
    ch = Serial.read();
    Serial.print(ch);
  }
  delay(1000);
  
}


void loop() {
    sendcmd();
}

注意烧录程序时要断开蓝牙模块和单片机的连接,否则会上传失败