2022年11月1日火曜日

espwroom32_ keyboard control car


 

//espwroom32_keyboard_control__car

const int green =  4;  

const int red =    16;

const int blue =   17;

const int yellow = 18; 

const int in1 =    19; 

const int in2 =    21; 

const int in3 =    22; 

const int in4 =    23                                                      ; 


char inkey;


void setup()

{

  Serial.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 (Serial.available() > 0 )

  {

    inkey = Serial.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("r is pressed");

      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(500);

      

      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 '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(500);

      

      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 '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("s is pressed");

      break;

    }  

  }

  delay(100);

}

0 件のコメント:

コメントを投稿