002 Arduino projekt 2

Sidorna 32 - 41.

Koppla enligt figur 1 och 2 på sidan 34.

Mål

Ett program styr dioderna.

Knapp uppsläppt - grön diod lyser, röda dioder släckta

Knapp nere - grön diod släckt, röda dioder lyser växelvis i 250 ms.

Program

Stor och liten bokstav är olika tecken och tolkas olika.

Kopiera inte koden utan skriv av den. Du lär dig mer om du skriver av.

Kod på GitHub

  // för att spara om knappen är intryckt eller inte
  // 0 - uppe
  // 1 - nere
  int switchState = 0;

  // kod som körs en gång vid start
  void setup()
  {
      // digitalt stift 3 är output för grön LED
      pinMode(3, OUTPUT); 
      // digitalt stift 4 är output för röd LED
      pinMode(4, OUTPUT); 
      // digitalt stift 5 är output för röd LED
      pinMode(5, OUTPUT); 
      pinMode(2, INPUT);
  }

  // kod som körs om och om igen
  void loop()
  {
      switchState = digitalRead(2);

      // LOW har värdet 0
      // HIGH har värdet 1
      if (switchState == LOW)
      {
          // knapp uppe
          digitalWrite(3, HIGH); // grön LED lyser
          digitalWrite(4, LOW); // röd LED släckt
          digitalWrite(5, LOW); // röd LED släckt
      }
      else
      {
          // knapp nere
          digitalWrite(3, LOW); // grön LED släckt
          digitalWrite(4, LOW); // röd LED släckt
          digitalWrite(5, HIGH); // röd LED tänd

          // pausa programkörningen här i 250 ms 
          delay(250);  

          digitalWrite(3, LOW); // grön LED släckt
          digitalWrite(4, HIGH); // röd LED tänd
          digitalWrite(5, LOW); // röd LED släckt

          // pausa programkörningen här i 250 ms 
          delay(250);          
      }
  }

Testa

Testa att det fungerar som tänkt. Ändra gärna på koden och se om du kan förutsäga vad som händer. Kanske kan du få de röda dioderna att blinka på ett annat sätt, eller kanske få den gröna dioden att blinka.