//-------------------------------------------------------------------------
// Titel : Ampelkreuzung
//-------------------------------------------------------------------------
// Funktion : wechselseitige Ampelsteuerung für Hauptverkehrskreuzungen
// Schaltung : Ampel 1 und 3 an Port D, Ampel 2 und 4 an Port C
//-------------------------------------------------------------------------
// Prozessor : ATmega8
// Takt : 3686400 Hz
// Sprache : C
// Datum : 1.2.2010
// Version : 1.0
// Autor : 
// Programmer: 
// Port : 
//-------------------------------------------------------------------------
// created by myAVR-CodeWizard
//-------------------------------------------------------------------------
//
#define F_CPU 	3686400
#include <avr\io.h>
//
void phase1();
void phase2();
void phase3();
//------------------------------------------------------------------------
// Initialisierungen
//------------------------------------------------------------------------
void init()
{
	// Ports initialisieren
	DDRD   = 0b11111100;		//Port D auf Ausgang
	DDRC   = 0b00111111;		//Port C auf Ausgang
}

/////////////////////////////////////////////////////////////////////////////
// Main-Funktion
/////////////////////////////////////////////////////////////////////////////
main()
{
	init(); 	// Initialisierungen
	while (true)  	// Mainloop-Begin
	{
		PORTD = 0b00001100;
		PORTC = 0b00000011;		// rot
		waitMs(1000);
		PORTC = 0b00001111;		// gelb rot
		waitMs(1000);
		PORTC = 0b00110000;		// grün
		waitMs(5000);
		PORTC = 0b00001100;		// gelb
		waitMs(1000);
		PORTC = 0b00000011;		// rot
		waitMs(2000);
		PORTD = 0b00111100;		// gelb rot
		waitMs(1000);
		PORTD = 0b11000000;		// grün
		waitMs(5000);
		PORTD = 0b00110000;		// gelb
		waitMs(1000);
		PORTD = 0b00001100;		// rot
		waitMs(2000);
	}
	// Mainloop-Ende
}

