2022年11月4日金曜日

seeeduinoxiao_ keyboard control car


 





// 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 件のコメント:

コメントを投稿