标题: 遥控小车arduino程序{网转} [打印本页]

作者: 木头超人你    时间: 2018-8-1 11:40
标题: 遥控小车arduino程序{网转}
const int In1 = 14;//L298N模块信号输入
const int In2 = 15;
const int In3 = 16;
const int In4 = 17;
const String GO = "G";//蓝牙遥控器发送信息代码定义
//const String BACK = "B";
//const String RIGHT = "R";
//const String LEFT = "L";
const String STOP = "S";
void setup()
{
    pinMode(In1, OUTPUT);
    pinMode(In2, OUTPUT);
    pinMode(In3, OUTPUT);
    pinMode(In4, OUTPUT);
    Serial.begin(9600);//初始化串口通信,设置波特率为9600
}
void goForward() {//小车前进
    digitalWrite(In1, HIGH);
    digitalWrite(In2, LOW);
    digitalWrite(In3, HIGH);
    digitalWrite(In4, LOW);
}
//void goBack() {//小车后退
//    digitalWrite(L298nIn1, LOW);
//   digitalWrite(L298nIn2, HIGH);
//    digitalWrite(L298nIn3, HIGH);
//    digitalWrite(L298nIn4, LOW);
//}
void goStop() {//小车停止
    digitalWrite(In1, LOW);
    digitalWrite(In2, LOW);
    digitalWrite(In3, LOW);
    digitalWrite(In4, LOW);
}
//void turnRight() {//小车右转
  //  digitalWrite(L298nIn1, LOW);
  //  digitalWrite(L298nIn2, HIGH);
  //  digitalWrite(L298nIn3, LOW);
//   digitalWrite(L298nIn4, HIGH);
//}
//void turnLeft() {//小车左转
//   digitalWrite(L298nIn1, HIGH);
//   digitalWrite(L298nIn2, LOW);
//   digitalWrite(L298nIn3, HIGH);
//   digitalWrite(L298nIn4, LOW);
//}
String readTtl() {             //读取发送的 G、L、S、R、B等等
    String comdata = "";           //定义空的字符串
    while (Serial.available())    //缓冲池内的数据
   {
      comdata += char(Serial.read());      //读取缓冲池内数据,每次读一个,加到字符串里面
       delay(2);                 //延迟两秒
   }
   return comdata;
}
void loop()//主循环函数
{
  String s = readTtl();
   if (s == GO ) goForward();//如果按GO键,小车前进,直到按STOP键停止
  // if (s == LEFT ) turnLeft();
   if (s == STOP ) goStop();
  // if (s == RIGHT ) turnRight();
  // if (s == BACK) goBack();
}






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1