// seeeduinoxiao_keyboard_control__car
const int green = 0;
const int red = 1;
const int blue = 2;
const int yellow = 3;
const int in1 = 4;
const int in2 = 5;
const int in3 = 8;
const int in4 = 9 ;
char inkey;
void setup()
{
Serial1.begin(9600);
Serial.println("Serial start");
pinMode(green, OUTPUT);
pinMode(red, OUTPUT);
pinMode(blue, OUTPUT);
pinMode(yellow, OUTPUT);
pinMode(in1, OUTPUT);
pinMode(in2, OUTPUT);
pinMode(in3, OUTPUT);
pinMode(in4, OUTPUT);
digitalWrite(green,HIGH);
delay(500);
digitalWrite(green,LOW);
delay(500);
digitalWrite(blue,HIGH);
delay(500);
digitalWrite(blue,LOW);
delay(500);
digitalWrite(red,HIGH);
delay(500);
digitalWrite(red,LOW);
delay(500);
digitalWrite(yellow,HIGH);
delay(500);
digitalWrite(yellow,LOW);
delay(500);
}
void loop()
{
if (Serial1.available() > 0 )
{
inkey = Serial1.read();
Serial.println(inkey);
switch(inkey)
{
case 'u':
digitalWrite(green,HIGH);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
digitalWrite(yellow,LOW);
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
digitalWrite(in3,HIGH);
digitalWrite(in4,LOW);
Serial.println("Forward");
break;
case 'm':
digitalWrite(green,LOW);
digitalWrite(red,HIGH);
digitalWrite(blue,LOW);
digitalWrite(yellow,LOW);
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
digitalWrite(in3,LOW);
digitalWrite(in4,HIGH);
Serial.println("Backward");
break;
case 'k':
digitalWrite(green,LOW);
digitalWrite(red,LOW);
digitalWrite(blue,HIGH);
digitalWrite(yellow,LOW);
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
digitalWrite(in3,HIGH);
digitalWrite(in4,LOW);
Serial.println("Turn right");
delay(50);
digitalWrite(green,LOW);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
digitalWrite(yellow,LOW);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
digitalWrite(in3,LOW);
digitalWrite(in4,LOW);
break;
case 'h':
digitalWrite(green,LOW);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
digitalWrite(yellow,HIGH);
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
digitalWrite(in3,LOW);
digitalWrite(in4,HIGH);
Serial.println("Turn left");
delay(50);
digitalWrite(green,LOW);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
digitalWrite(yellow,LOW);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
digitalWrite(in3,LOW);
digitalWrite(in4,LOW);
break;
case 'j':
digitalWrite(green,LOW);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
digitalWrite(yellow,LOW);
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
digitalWrite(in3,LOW);
digitalWrite(in4,LOW);
Serial.println("St");
break;
}
}
delay(100);
}
0 件のコメント:
コメントを投稿