2023年7月2日日曜日

Airsoftgun Receiver No.9


 







// AirgunReceiver9

int pt1=2,pt2=3,pt3=4,pt4=5,pt5=6,pt6=7,pt7=8,pt8=9;

int red=10,green=11,yellow=12,white=13,rise=A2,down=A3;

int isObstaclePin = A4; 

int isObstacle= HIGH;

int MyPoints = 0 ;


void setup() 

{  

  pinMode(pt1,OUTPUT); pinMode(pt2,OUTPUT);pinMode(pt3,OUTPUT);pinMode(pt4,OUTPUT);

  pinMode(pt5,OUTPUT); pinMode(pt6,OUTPUT); pinMode(pt7,OUTPUT); pinMode(pt8,OUTPUT);

  pinMode(red,OUTPUT);pinMode(green,OUTPUT);pinMode(yellow,OUTPUT);pinMode(white,OUTPUT);

  pinMode(rise,OUTPUT);pinMode(down,OUTPUT);

  pinMode(isObstaclePin,INPUT);

  

  digitalWrite(red,HIGH);delay(200);digitalWrite(red,LOW);delay(200);

  digitalWrite(green,HIGH);delay(200);digitalWrite(green,LOW);delay(200);

  digitalWrite(yellow,HIGH);delay(200);digitalWrite(yellow,LOW);delay(200);

  digitalWrite(white,HIGH);delay(200);digitalWrite(white,LOW);delay(200);

  

  digitalWrite(pt1,HIGH);delay(200);digitalWrite(pt1,LOW);delay(200);

  digitalWrite(pt2,HIGH);delay(200);digitalWrite(pt2,LOW);delay(200);

  digitalWrite(pt3,HIGH);delay(200);digitalWrite(pt3,LOW);delay(200);

  digitalWrite(pt4,HIGH);delay(200);digitalWrite(pt4,LOW);delay(200);

  digitalWrite(pt5,HIGH);delay(200);digitalWrite(pt5,LOW);delay(200);

  digitalWrite(pt6,HIGH);delay(200);digitalWrite(pt6,LOW);delay(200);

  digitalWrite(pt7,HIGH);delay(200);digitalWrite(pt7,LOW);delay(200);

  digitalWrite(pt8,HIGH);delay(200);digitalWrite(pt8,LOW);delay(200);  


  Serial.begin(9600);

}


void loop() 

{

  digitalWrite(white,HIGH);

  isObstacle =digitalRead(isObstaclePin);

  

  Serial.print("isObstacle=   ");

  Serial.println(isObstacle);

   

  if(isObstacle == LOW) 

  {

    MyPoints = MyPoints + 2;

    digitalWrite(red,HIGH);digitalWrite(green,HIGH);digitalWrite(yellow,HIGH);delay(200);

    digitalWrite(red,LOW);digitalWrite(green,LOW);digitalWrite(yellow,LOW);delay(200);

    

    digitalWrite(white,LOW);

  

    digitalWrite(rise,HIGH);

    digitalWrite(down,LOW);

    delay(1000);

    digitalWrite(rise,LOW);

    digitalWrite(down,LOW);

    delay(500);

    digitalWrite(rise,LOW);

    digitalWrite(down,HIGH);

    delay(1000);

    digitalWrite(rise,LOW);

    digitalWrite(down,LOW);

  }

  

  switch(MyPoints)

    {

      case 0:

        digitalWrite(pt1,LOW);digitalWrite(pt2,LOW);digitalWrite(pt3,LOW);digitalWrite(pt4,LOW);

        digitalWrite(pt5,LOW);digitalWrite(pt6,LOW);digitalWrite(pt7,LOW);digitalWrite(pt8,LOW);

        digitalWrite(white,HIGH);

        break;

      

      case 2:

        digitalWrite(pt1,HIGH);digitalWrite(pt2,HIGH);digitalWrite(pt3,LOW);digitalWrite(pt4,LOW);

        digitalWrite(pt5,LOW);digitalWrite(pt6,LOW);digitalWrite(pt7,LOW);digitalWrite(pt8,LOW);

        digitalWrite(white,HIGH);

        break;


      case 4:

        digitalWrite(pt1,HIGH);digitalWrite(pt2,HIGH);digitalWrite(pt3,HIGH);digitalWrite(pt4,HIGH);

        digitalWrite(pt5,LOW);digitalWrite(pt6,LOW);digitalWrite(pt7,LOW);digitalWrite(pt8,LOW);

        digitalWrite(white,HIGH);

        break;


      case 6:

        digitalWrite(pt1,HIGH);digitalWrite(pt2,HIGH);digitalWrite(pt3,HIGH);digitalWrite(pt4,HIGH);

        digitalWrite(pt5,HIGH);digitalWrite(pt6,HIGH);digitalWrite(pt7,LOW);digitalWrite(pt8,LOW);

        digitalWrite(white,HIGH);

        break;


      case 8:

        digitalWrite(pt1,HIGH);digitalWrite(pt2,HIGH);digitalWrite(pt3,HIGH);digitalWrite(pt4,HIGH);

        digitalWrite(pt5,HIGH);digitalWrite(pt6,HIGH);digitalWrite(pt7,HIGH);digitalWrite(pt8,HIGH);


        digitalWrite(red,HIGH);delay(200);digitalWrite(red,LOW);delay(200);

        digitalWrite(green,HIGH);delay(200);digitalWrite(green,LOW);delay(200);

        digitalWrite(yellow,HIGH);delay(200);digitalWrite(yellow,LOW);delay(200);


        MyPoints = 0;


        digitalWrite(pt1,LOW);digitalWrite(pt2,LOW);digitalWrite(pt3,LOW);digitalWrite(pt4,LOW);

        digitalWrite(pt5,LOW);digitalWrite(pt6,LOW);digitalWrite(pt7,LOW);digitalWrite(pt8,LOW);


        digitalWrite(white,HIGH);

      

        break;

    }

  }  

 

0 件のコメント:

コメントを投稿