Wird der Taster gedrückt, zeigen die LEDs die gewürfelte Zahl an. Ein längerer Druck auf den Taster bewirkt einen "Würfeleffekt".
So sieht es aus:
Benötigte Bauteile:
- 7 gelbe LEDs
- 7 Widerstände 220 Ω
- Leitungsdrähte
Beachte die ➨Vorwiderstände verschiedener LEDs
Baue die Schaltung auf.
(Fahre mit der Maus über das Bild, um die Bezeichnungen der Bauteile zu sehen)
Definiere die Variablen.
boolean TASTER;
// Würfelaugen 1 bis 6
int Minimum = 1;
int Maximum = 7;
Der setup-Teil. Beachte die Kommentare.
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 = B00000100;
// Zufallsgenerator starten
randomSeed(analogRead(A0));
}
Der loop-Teil. Beachte die Kommentare.
void loop()
{
// Test ob alle LEDs leuchten
// PORTD = B11111000;
// PORTB = B00000011;
/*
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;
}
}
}
Die Funktion AlleAus() schaltet alle LEDs wieder aus.
void AlleAus()
{
PORTD = 0;
PORTB = 0;
}
Verwandte Anleitungen:
- Blinkende LED
- Blinkende LED mit einem Potentiometer
- Blinkende LEDs mit Multithreading
- Farbe und Helligkeit eines LED-Streifens mit Potentiometern manipulieren
- Farbenspiele mit einem LED-Streifen
- Interrupt - Lauflicht mit Drehgeber
- Interrupt: Farbenspiel mit einem NeoPixel-Ring
- Lauflicht
- Lauflicht mit blinkenden LEDs
- Wechselblinker mit einem Relais
- LEDs mit einem Joystick-Shield schalten
- LEDs mit dem UDP-Protokoll im LAN schalten
- LEDs ohne Pulsweitenmodulation dimmen
- LEDs schalten mit PORT/DDR
- LEDs mit dem Schieberegister 74HC595 steuern
- LEDs mit einem Taster steuern
- Wechselblinker
Letzte Aktualisierung: