void setup()
{
// Pins 7 bis 3 als OUTPUT definieren
DDRD = B11111000;
// Pins 8 bis 9 als OUTPUT definieren
DDRB = B00000011;
// Pin 13 PULLUP-Widerstand einschalten
PORTB = B00100000;
// Zufallsgenerator starten
randomSeed(analogRead(A0));
// Test ob alle LEDs leuchten
PORTD = B11111000;
PORTB = B00000011;
}
void loop()
{
boolean TASTER;
int Minimum = 1;
int Maximum = 7;
/*
Port B lesen
Bit 13 wird ausgeblendet (PINB & B00100000),
damit der Wert gelesen werden kann
*/
TASTER = PINB & B00100000;
// Taster gedrückt, Pin 13 hat den Wert 0 (false)
if (!TASTER)
{
delay(200);
int Zahl = random(Minimum, Maximum);
switch (Zahl)
{
case 1:
AlleAus();
PORTD = B01000000;
break;
case 2:
AlleAus();
PORTD = B10100000;
break;
case 3:
AlleAus();
PORTD = B11100000;
break;
case 4:
AlleAus();
PORTD = B10101000;
PORTB = B00000010;
break;
case 5:
AlleAus();
PORTD = B11101000;
PORTB = B00000010;
break;
case 6:
AlleAus();
PORTD = B10111000;
PORTB = B00000011;
break;
default:
break;
}
}
}
void AlleAus()
{
PORTD = 0;
PORTB = 0;
}
Letzte Aktualisierung: