project 02 Board

 

 Project 02 componenten

 

 

 

project 02 Circuit

 

 

pullup resitor

 

 

pulldown resistor

 

 

 

Spaceship interface Project 2 blz 33.          terug naar de inleiding

De schets maakt gebruik van digitale pinnen 2, 3, 4 en 5.
Pin 2 is een inputpin die via een pull-down resistor van 10 Kilo ohm "0" als ingangsignaal heeft.
Pin 2 wordt uitgelezen met digitalRead(2);
 
Een ezelsbruggetje:  De stroom door de LED (Light Emitting Diode) loopt van onder naar boven, of van klein naar groot
 
Aanpassingen van de code en hardware
1) middels een pull-up resistor de input van pin 2 op  "1"  zetten
2) een knipperende led toevoegen

 

 

// De toestand van de drukknop als globale variabele "schakeltoestand" declareren 
// "schakeltoestand" een beginwaarde geven (is initiëren) 
// initiëren is niet nodig omdat de pin toch in digitalRead wordt uitgelezen. 
// Je kan "schakeltoestand" niet in setup declararen !! 
 
int schakeltoestand = 0; 
 
void setup() { 
  //pinnen 3, 4 en 5 declareren als outputpinnen 
  pinMode(3, OUTPUT); 
  pinMode(4, OUTPUT); 
  pinMode(5, OUTPUT); 
   
  //pin 2 declareren als inputpin 
  pinMode(2, INPUT);  //dit hoeft niet omdat de pinnen default op output staan !! 
} 
 
void loop() { 
 
  //Als de knop is ingedruk staat er op pin 2  5 volt dan is de input van pin 2 HIGHT 
  //pin 2 zet de 5 volt om naar een digitale 1 
  //digitalRead leest deze waarde uit en stopt deze in de variabele "schakeltoestand" 
  
  schakeltoestand = digitalRead(2); 
   
  //LOW en HIGH zijn systeem constanten waarbij LOW = 0; en HIGH = 1; 
  //Dus ipv LOW en HIGH mag je ook 0 of 1 invoeren 
   
  //als de knop niet is ingedrukt wordt dit deel van het if statement doorlopen 
   
  if (schakeltoestand == LOW) { 
    digitalWrite(3, HIGH); // led op pin 3 staat aan 
    digitalWrite(4, LOW);  // led op pin 4 staat uit 
    digitalWrite(5, LOW);  // led op pin 5 staat uit 
  
 //Als de knop is ingedrukt wordt dit deel van het if statement doorlopen 
 //Led 3 wordt uitgeschakeld en led 4 en 5 gaan afwisselend aan en uit 
  } 
  else  
  { 
    digitalWrite(3, LOW); 
    digitalWrite(4, LOW); 
    digitalWrite(5, HIGH); 
 // wacht 25 miliseconden 
    delay(250); 
    digitalWrite(4, HIGH);  
    digitalWrite(5, LOW);   
 // wacht 25 miliseconden 
    delay(250); 
  } 
}