kramann.info
© Guido Kramann

Login: Passwort:










4.2 Beispiel: Fußgängerampel

  • Eine Fußgängerampel schaltet auf Knopfdruck für eine Weile von ROT auf GRÜN.
  • Diese Funktion soll mit Hilfe eines ATmega8-Mikrocontrollers realisiert werden.
Fertig aufgebaute Ampelschaltung

Bild 4.2-1: Fertig aufgebaute Ampelschaltung

Schaltplan der Ampelschaltung

Bild 4.2-2: Schaltplan der Ampelschaltung

LED Anschlüsse

Bild 4.2-3: LED Anschlüsse

#include <avr/io.h>

int main(void)
{
    unsigned char akku;
    int i,k;

	//PORT B als Eingang, um Testschalter zu realisieren:
	DDRB = 0x00;

	//PORT C als Ausgang:
	DDRC = 0xff;



    while(1)
    {
        akku  = PINB; 
		
	if( (akku & 0b00000001) > 0 )
	{
  	    PORTC = 0b00000001; //gruen

	    for(i=0;i<1000;i++)  //Pause
	    {
	       for(k=0;k<100;k++)
	       {
	       }
	    }
	}
	else
	{
  	        PORTC = 0b00000010; //rot

	}
    }
}
 

Code 4.2-1: Ampelprogramm

Programm-Dokumentation

Bild 4.2-4: Programm Dokumentation

Variationsideen

Im Workshop wird das Ampelbeispiel erläutert und als Steckbrett-Schaltung zur Verfügung gestellt. Um es wirklich zu verstehen, bietet es sich an, Varianten zu programmieren und zu bauen und diese zu testen:

  • Zeitverzögerung vor Grün-Schaltung
  • Fußgängerampel mit Pieper für Blinde
  • Gelbphase
  • Blinkende Ampel
  • Lauflicht

Fußgängerampel als AVR-Studio-Projekt