Mittwoch, 6. Juni 2012

Arduino Ampel

Schaltplan Ampel
Steckplatine Ampel



int led_rot = 12;
int led_gelb = 11;
int led_gruen = 10;
int cnt = 0;
int state = 1;

void setup() {
  pinMode(led_rot, OUTPUT);
  pinMode(led_gelb, OUTPUT);
  pinMode(led_gruen, OUTPUT);
}

void loop() {
  cnt++;
  if(cnt == 100) {
    cnt = 0;
    statemaschine();
  }
  
  delay(10);
}

void statemaschine() {
    switch(state) {
      case 1:
      digitalWrite(led_rot, HIGH);
      digitalWrite(led_gelb, LOW);
      digitalWrite(led_gruen, LOW);
      state++;
      break;
     
      case 2:
      digitalWrite(led_rot, HIGH);
      digitalWrite(led_gelb, HIGH);
      digitalWrite(led_gruen, LOW);
      state++;
      break;
     
      case 3:
      digitalWrite(led_rot, LOW);
      digitalWrite(led_gelb, LOW);
      digitalWrite(led_gruen, HIGH);
      state++;
      break;
    
      case 4:
      digitalWrite(led_rot, LOW);
      digitalWrite(led_gelb, HIGH);
      digitalWrite(led_gruen, LOW);
      state = 1;
      delay(100);
      break;
    }
}  




Keine Kommentare:

Kommentar veröffentlichen