#include<SoftwareSerial.h>
SoftwareSerial BT(2,3);
char innum;
int motSpeedPin=9;
int rightMotA=5;
int rightMotB=6;
int leftMotA=7;
int leftMotB=8;
int headLedRight=9;
int headLedLeft=10;
int motSpeed=255;
int ledPower=0;
void chanhololicon(char innum);
void setup()
{
Serial.begin(9600);
BT.begin(9600);
}
void loop()
{
if(Serial.available())
{
innum=Serial.read();
Serial.println("OK.");
chanhololicon(innum);
}
}
void chanhololicon(char innum)
{
if(innum=='a')//Go forward
{
digitalWrite(rightMotA,HIGH);
digitalWrite(rightMotB,LOW);
digitalWrite(leftMotA,HIGH);
digitalWrite(leftMotB,LOW);
}
else if(innum=='b')//back
{
digitalWrite(rightMotA,LOW);
digitalWrite(rightMotB,HIGH);
digitalWrite(leftMotA,LOW);
digitalWrite(leftMotB,HIGH);
}
else if(innum=='c')//right
{
digitalWrite(rightMotA,HIGH);
digitalWrite(rightMotB,LOW);
digitalWrite(leftMotA,LOW);
digitalWrite(leftMotB,HIGH);
}
else if(innum=='d')//left
{
digitalWrite(rightMotA,LOW);
digitalWrite(rightMotB,HIGH);
digitalWrite(leftMotA,HIGH);
digitalWrite(leftMotB,HIGH);
}
else if(innum=='e')//stop
{
digitalWrite(rightMotA,LOW);
digitalWrite(rightMotB,LOW);
digitalWrite(leftMotA,LOW);
digitalWrite(leftMotB,LOW);
}
else if(innum=='f'&&ledPower==0)//headled(on)
{
digitalWrite(headLedRight,HIGH);
digitalWrite(headLedLeft,HIGH);
ledPower++;
}
else if(innum=='f'&&ledPower==1)//headled(off)
{
digitalWrite(headLedRight,LOW);
digitalWrite(headLedLeft,LOW);
ledPower--;
}
else if(ledPower>1&&ledPower<0)
{
ledPower=0;
}
}
Comments