SoftwareSerial portOne(A1, A2);
String readString;
char DATA;
int DLS=50;
int MA=4;
int MB=5;
int MC=6;
int MD=7;
int ME=10;
int MF=11;
int MG=8;
int MH=9;
void setup()
{
Serial.begin(115200);
portOne.begin(9600);
Serial.println("RUN");
pinMode(MA, OUTPUT);
pinMode(MB, OUTPUT);
pinMode(MC, OUTPUT);
pinMode(MD, OUTPUT);
pinMode(ME, OUTPUT);
pinMode(MF, OUTPUT);
pinMode(MG, OUTPUT);
pinMode(MH, OUTPUT);
}
void loop()
{
if(portOne.available())
{
DATA = portOne.read();
Serial.print("DATA= ");
Serial.print(DATA);
Serial.println("");
delay(10);
///////////////////////////////
if(DATA=='U')////เดินหน้า
{
GG();//เดินหน้า
}
/////////////////////////////////
if(DATA=='D')///ถอยหลัง
{
BK();//ถอย
}
/////////////////////////////
if(DATA=='L')////ซ้าย
{
LL();//หมุนซ้าย
}
////////////////////////////////
if(DATA=='R')//ขวา
{
RR();//หมุนขวา
}
/////////////////////////////////
if(DATA=='M')///ยิง
{
YG();
}
if(DATA=='N')///กลับ
{
SK();
}
/////////////////////////////////
if(DATA=='Z')///หยุด
{
ST();
}
if(DATA=='A')
{
}
}
}////////////loop
void GG()//เดินหน้า
{
digitalWrite(MA, LOW);
digitalWrite(MB, HIGH);//
digitalWrite(MC, LOW);
digitalWrite(MD, HIGH);
delay(DLS);
}
//////////////////////////
void ST()//หยุด
{
digitalWrite(MA, LOW);
digitalWrite(MB, LOW);//
digitalWrite(MC, LOW);
digitalWrite(MD, LOW);
digitalWrite(ME, LOW);
digitalWrite(MF, LOW);//
digitalWrite(MG, LOW);
digitalWrite(MH, LOW);//
}
////////////////////////////////----------------------------------------------------ถอยหลัง
void BK()//ถอย
{
digitalWrite(MA, HIGH);
digitalWrite(MB, LOW);//
digitalWrite(MC, HIGH);
digitalWrite(MD, LOW);//
delay(DLS);
}
////////////////////////////////----------------------------------------------------หมุนขวา
void RR()//หมุนขวา
{
digitalWrite(MA, HIGH);
digitalWrite(MB, LOW);//
digitalWrite(MC, LOW);
digitalWrite(MD, HIGH);
delay(DLS);
}
////////////////////////////////----------------------------------------------------หมุนซ้าย
void LL()//หมุนซ้าย
{
digitalWrite(MA, LOW);
digitalWrite(MB, HIGH);//
digitalWrite(MC, HIGH);
digitalWrite(MD, LOW);
delay(DLS);
}
void SK()//
{
digitalWrite(MG, LOW);
digitalWrite(MH, HIGH);//
delay(DLS);
}
void YG()//
{
digitalWrite(MG, HIGH);
digitalWrite(MH, LOW);//
delay(DLS);
}