โค๊ด
/////////////////ใช้อ่านได้
#include <SoftwareSerial.h>
// software serial #1: TX = digital pin 10, RX = digital pin 11
SoftwareSerial portOne(A2, A1);
String readString;
String Ex_String_Read;
String DATA;
char unChar;
int ServoA=0;
const int inA1 =4;
const int inA2 =5;
const int inB1 =6;
const int inB2 =7;
const int inC1 =8;
const int inC2 =9;
void setup()
{
Serial.begin(115200);
portOne.begin(9600);
Serial.println("RUN");
pinMode(inA1 , OUTPUT);
pinMode(inA2 , OUTPUT);
pinMode(inB1 , OUTPUT);
pinMode(inB2 , OUTPUT);
pinMode(inC1 , OUTPUT);
pinMode(inC2 , OUTPUT);
}
void loop()
{
if(portOne.available())
{
unChar = portOne.read();
Serial.print("DATA= ");
Serial.print(unChar);
Serial.println("");
delay(10);
///////////////////////////////
if(unChar=='U')
{
Robot_GO();
}
/////////////////////////////////
if(unChar=='D')
{
Robot_BACK();
}
/////////////////////////////
if(unChar=='L')
{
Robot_LEFT();
}
////////////////////////////////
if(unChar=='R')
{
Robot_RIGH();
}
/////////////////////////////////
if(unChar=='M')
{
Robot_M();
}
if(unChar=='N')
{
Robot_N();
}
/////////////////////////////////
if(unChar=='Z')
{
Robot_STOP();
}
if(unChar=='A')
{
Robot_A();
}
}
}
void Robot_GO()
{
digitalWrite(inA1 , HIGH);
digitalWrite(inA2 , LOW);
digitalWrite(inB1 , HIGH);
digitalWrite(inB2 , LOW);
delay(10);
}
void Robot_BACK()
{
digitalWrite(inA1 , LOW);
digitalWrite(inA2 , HIGH);
digitalWrite(inB1 , LOW);
digitalWrite(inB2 , HIGH);
delay(10);
}
void Robot_LEFT()
{
digitalWrite(inA1 , LOW);
digitalWrite(inA2 , HIGH);
digitalWrite(inB1 , HIGH);
digitalWrite(inB2 , LOW);
delay(10);
}
void Robot_RIGH()
{
digitalWrite(inA1 , HIGH);
digitalWrite(inA2 , LOW);
digitalWrite(inB1 , LOW);
digitalWrite(inB2 , HIGH);
delay(10);
}
void Robot_STOP()
{
digitalWrite(inA1 , LOW);
digitalWrite(inA2 , LOW);
digitalWrite(inB1 , LOW);
digitalWrite(inB2 , LOW);
digitalWrite(inC1 , LOW);
digitalWrite(inC2 , LOW);
delay(10);
}
void Robot_N()
{
digitalWrite(inC1 , LOW);
digitalWrite(inC2 , HIGH);
delay(10);
}
void Robot_M()
{
digitalWrite(inC1 , HIGH);
digitalWrite(inC2 , LOW);
delay(10);
}
/////////////////////////////////
void Robot_A()
{
//delay(300);
while(Serial.available())
{
char c = Serial.read();
readString+=c;
}
if(readString.length()>0)
{
Serial.print("ServoA= ");
Serial.print(readString.toInt() );
Serial.println("");
ServoA=(readString.toInt() );
readString="";
}
}
แอพ