wie Farben aus einer roten, einer grünen und einer blauen Komponente zusammengesetzt werden und du die Farb-LEDs mit der gewünschten Farbe leuchten lässt.
RGB-LED
Um Farbbilder mit dem Computer zu speichern und zu verarbeiten, müssen die Farben als Zahlen definiert werden.
Es gibt dazu mehrere Möglichkeiten. Die bekannteste ist das RGB-Farbmodell, wo die Intensitäten der drei Farbkomponenten Rot, Grün und Blau als Zahlen zwischen 0 und 255 angegeben werden.
Mit der Farb-LED des Calliope kannst du mit den Farben im RGB-Modell experimentieren.
Der Befehl set_colors(r, g, b)
wo r, g, und b Zahlen zwischen 0 und 255 sind, legt die rote, grüne und blaue Farbkomponente fest.
Der Calliope_mini 3 verfügt über drei RGB-LEDs. Diese werden als Neopixel angesprochen:
Beispiel 1: Farb-LED in verschiedenen Farben leuchten lassen
Die Farb-LED leuchtet der Reihe nach in den Farben rot, grün, blau, gelb, magenta und cyan jeweils während 1000 Millisekunden und schaltet dann ab.
Wenn für die Farbkomponente die maximal mögliche Zahl 255 gewählt wird, leuchten die LEDs sehr hell. Angenehmer ist es, wenn du für r, g, b kleinere Zahlen wählst:
Beispiel 2: Farb-LED in zufällig gewählten Farben leuchten lassen
Hier soll die Farb-LED in zufällig gewählten Farben jeweils 500 ms lang leuchten. Die Farbkomponenten r, g, b bestimmst du in der Funktion randomColor() mit drei Zufallszahlen im Bereich 0 ... ... 100.
Durch Drücken des Buttons A beendest du das Farbspiel.
Programm:
from calliope_mini import *
from random import randint
def randomColor():
r = randint(0, 100)
g = randint(0, 100)
b = randint(0, 100)
led.set_colors(r, g, b)
whilenot button_a.was_pressed():
randomColor()
sleep(500)
led.set_color(0, 0, 0)
Beispiel 3: Farb-LED für eine Spannungsanzeige verwenden
Der Calliope kann auch für physikalische Experimente verwendet werden, beispielsweise um Spannungen eines Sensors im Bereich 0...3.3V zu messen.
Berührst du gleichzeitig den Anschluss + (3.3V) und den Pin 1, so ergibt sich ein Stromkreis und die Spannung am Pin 1 steigt an.
Der Befehlpin1.read_analog() gibt die Spannung als Zahl zwischen 0 und 1023 zurück.
In deinem Programm leuchtet die LED ohne Stromkreis blau, beim Berühren des Pin 1 grün und beim Berühren des Pin 2 rot.
Die Farbe einer Farb-LED legst du durch die rote, grüne und blaue Farbkomponente (eine Zahl zwischen 0 und 255) fest. Da die LED sehr hell leuchtet, ist es besser Zahlen zwischen 0 un 100 zu verwenden.
Calliope Mini 3 verfügt über drei RGB-LEDs. Du importierst das Modul neopixel und wählst die Farben nach der Vorlage im Beispiel 1.
ZUM SELBST LÖSEN
1.
Schreibe ein Programm, mit dem die Farb-LED nacheinander in Regenbogenfarben leuchtet. Wiederhole diese Farbfolge 3 mal. Verwende die nebenstehende Zuordnung der Farben.
2.
Wenn du den Button A drückst, soll die Farb-LED in der Farbe magenta, beim Drücken des Buttons B mit der Farbe cyan leuchten. Damit die LED nicht zu hell leuchtet, wählst du für die Farbkomponenten höchsten einen Wert von 100.
3.
Wenn du mit den Fingerspitzen Pin + und Pin 1 berührst, blinkt die Farb-LED rot, wenn du Pin + und Pin 2 berührst, so blinkt sie blau, bei der Berührung des Pin + und Pin 3 blinkt sie grün.
4.
In einer endlosen while-Schleife soll die Farb-LED mit weisser Farbe das Signal SOS senden, wobei sie bei S dreimal kurz (200 ms) und bei O dreimal lange (600 ms) leuchten soll. Nach jedem SOS Signal folgt eine Pause.