Raspberry Pi Pico: Binärer Zähler mit LEDs

Binär bedeutet, dass etwas zwei Zustände annehmen kann. Zwei Zustände lassen sich gut mit Leuchtdioden darstellen. Der eine Zustand ist „leuchtend“, der andere Zustand „nicht leuchtend“. Ein binärer Zähler würde nach dem dualen Zahlensystem zählen und lässt sich deshalb mit einer Reihe von Leuchtdioden sehr leicht realisieren.

Das interessante an einem binären Zähler ist, dass seine Stellenwerte nur 0 oder 1 sein können und sich diese Werte mit Leuchtdioden darstellen lassen. Wenn ein Stellenwert 0 ist, dann leuchtet die Leuchtdiode nicht und wenn ein Stellenwert 1 ist, dann leuchtet die Leuchtdiode.

Wir bauen uns hier einen 3-Bit-Zähler mit drei Leuchtdioden. Die Zählweise und Darstellung der dualen Zahlen sieht wie folgt aus.

Zahl LED1 LED2 LED3
0 AUS AUS AUS
1 AUS AUS EIN
2 AUS EIN AUS
3 AUS EIN EIN
4 EIN AUS AUS
5 EIN AUS EIN
6 EIN EIN AUS
7 EIN EIN EIN

Aufbau und Bauteile

Raspberry Pi Pico: Binärer Zähler mit LEDs

  • R1: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
  • R2: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
  • R3: Widerstand, 470 Ohm (Gelb-Violett-Schwarz-Schwarz)
  • LED1: Leuchtdiode, rot
  • LED2: Leuchtdiode, gelb
  • LED3: Leuchtdiode, grün

Programmcode

Der binäre Zähler beginnt bei 0 und zählt mit 3 Leuchtdioden bis 7. Danach beginnt er wieder von vorne zu zählen.

# Bibliotheken laden
from machine import Pin
from utime import sleep

# GPIOs für den Zähler auswählen
GPIO = [13, 14, 15]
leds = len(GPIO)
led = [0] * leds

# Initialisierung der GPIOs als Ausgang
for i in range(leds):
    led[i] = Pin(GPIO[i], Pin.OUT, value=0)

# Zähler-Ausgabe
def output_counter(x):
    global leds
    b = bin(x)
    b = b.replace("0b", "")
    diff = leds - len(b)
    for i in range (0, diff):
        b = "0" + b
    for i in range (0, leds):
        if b[i] == "1":
            led[i].value(1)
        else:
            led[i].value(0)
    return

# Zählen
count = 0
max_count = 2 ** leds
while True:
    output_counter(count)
    sleep(0.75)
    count = count + 1
    if count == max_count:
        count = 0

Experimente

Das besondere an der Ansteuerung der Leuchtdioden ist, dass die 3 Leuchtdioden als Gruppe (Array) behandelt werden. Der Programmcode ist dabei so flexibel, dass sich der Zähler um weitere Stellenwerte erweitern lässt. Dazu muss man die GPIO-Nummern im Array vorne (nicht hinten) erweitern.

  • Zählen von 0 bis 1 (2 Werte) mit 1 Leuchtdiode
  • Zählen von 0 bis 3 (4 Werte) mit 2 Leuchtdioden
  • Zählen von 0 bis 7 (8 Werte) mit 3 Leuchtdioden
  • Zählen von 0 bis 15 (16 Werte) mit 4 Leuchtdioden
  • Zählen von 0 bis 31 (32 Werte) mit 5 Leuchtdioden
  • ...

Darf es ein bisschen mehr sein?

So ein Zähler ist natürlich langweilig. Es passiert immer das selbe. Der Vorgang lässt sich, wie bei einem Lauflicht, vorhersagen. Ein bisschen Zufall gefällig? Da dann los.

Highlights: Elektronik mit dem Raspberry Pi Pico

Elektronik mit dem Raspberry Pi

Die Stärken des Raspberry Pi liegen klar in der Computer-Architektur mit typischen Computer-Schnittstellen und Möglichkeit zum Ausführen von Open-Source-Software für Linux.

Weitere verwandte Themen:

Teilen:

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.

  • LED: Einschalten, ausschalten, blinken und Helligkeit steuern
  • Taster: Entprellen und Zustände anzeigen
  • LED mit Taster einschalten und ausschalten
  • Ampel- und Lauflicht-Steuerung
  • Elektronischer Würfel
  • Eigene Steuerungen programmieren

Elektronik-Set jetzt bestellen Online-Workshop buchen

Programmieren mit dem Raspberry Pi Pico
Online-Workshop

Hardware-nahes Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)

Zum PicoTalk

 

Elektronik-Set Pico Edition
Elektronik-Set Pico Edition

Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython

Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Pico WLAN Edition
Elektronik-Set Pico WLAN Edition

Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT

Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Sensor Edition
Elektronik-Set Sensor Edition

Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition

Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.

Elektronik-Set jetzt bestellen