Python Online | Home   |
DU LERNST HIER... |
wie man die beiden micro:bit-Buttons verwendet, um interaktive Programme zu entwickeln. |
WIE FUNKTIONIEREN DIE BUTTONS |
|
MUSTERBEISPIELE |
Programm: from microbit import * from mbrobot import * def blink(led): led.write_digital(1) delay(500) led.write_digital(0) delay(500) repeat: if button_a.is_pressed(): blink(ledRight) if button_b.is_pressed(): blink(ledLeft) delay(200) Um das Programm besser zu strukturieren, definierst du eine Funktion blink(led), die eine LED einmal ein- und ausschaltet. Der Parameter led kann ledRight oder ledLeft sein, je nachdem, ob der linke oder rechte Button gedrückt wird. Die Befehle für die Buttons sind im Modul microbit, das du zusätzlich importieren musst. Beispiel 2: Auf das Klicken eines Buttons reagieren
Programm: from microbit import * from music import * repeat: if button_a.was_pressed(): play(JUMP_UP) if button_b.was_pressed(): play(JUMP_DOWN) Beispiel 3: Ein Programm mit Button abbrechen
Programm: from microbit import * from mbrobot import * setSpeed(20) forward() while not button_a.was_pressed(): d = getDistance() if d < 10: backward() delay(1000) forward() delay(200) stop() Beispiel 4: Den Roboter mit Buttons steuern
Programm: from microbit import * from mbrobot import * setSpeed(30) forward() repeat: v = irLeft.read_digital() if v == 0: backward() delay(500) stop() if button_a.was_pressed(): left() delay(900) forward() elif button_b.was_pressed(): right() delay(900) forward() delay(100) |
MERKE DIR... |
Mit Buttons kannst du interaktive Programme entwickeln. Die Funktion is_pressed() gibt True zurück, wenn der Button gedrückt ist. Die Funktion was_pressed() gibt True zurück, wenn seit dem Start des Programms oder seit dem letzten Aufruf irgendwann mal geklickt wurde. |
ZUM SELBST LÖSEN |
|
ZUSATZSTOFF: ROBOTER FERNSTEUERN |
Mit radio.on() erstellen zuerst beide Geräte eine Bluetooth-Verbindung. Mit radio.send(msg) sendet der micro:bit eine Message (als String) an den Roboter, der diese Meldung mit dem Befehl radio.receive() holt. Der Roboter wird mit den Buttons des micro:bits wie folgt gesteuert:
Es ist vorteilhaft, bei solchen Aufgaben eine Variable state einzuführen, wo der momentane Zustand gespeichert wird. Insbesondere wird eine Message nur dann gesendet, wenn der Zustand geändert hat. |
Führe zuerst das Programm für den Roboter (Mq6e.py) aus. Nachdem du es heruntergeladen hast, kannst du den Roboter vom USB-Anschluss wegnehmen, das micro:bit anschliessen und das Programm Mq6d.py in den Editor nehmen. Der micro:bit benötigt für die Programmausführung eine Stromversorgung. Du kannst ihn nach dem Programmdownload mit Computer verbunden lassen oder eine PowerBank anschliessen. |
ZUM SELBST LÖSEN |
|
![]() |
![]() |
<![]() |
Melodien, die Modul music definiert sind (nur Realmodus):
ADADADUM - Eröffnung von Beethoven’s 5. Sinfonie in C Moll
ENTERTAINER - Scott Joplin’s Ragtime Klassiker
PRELUDE -J.S.Bach’s 48 Preludien und Fugen
ODE - “Ode an Joy” Thema aus Beethoven’s 9. Sinfonie in D Moll
NYAN - das Nyan Cat Thema
RINGTONE - ein Klingelton
FUNK - ein Geräusch für Geheimagente
n
BLUES - ein Boogie-Woogie Blues
BIRTHDAY - “Happy Birthday to You...”
WEDDING - der Chorus des Bräutigams aus Wagner’s Oper “Lohengrin”
FUNERAL - der “Trauerzug”, Chopin’s Klaviersonate
PUNCHLINE - a lustiger Tonclip, nachdem ein Witz gemacht wurde
PYTHON - aus “Monty Python’s Flying Circus”
BADDY - Filmclip aus "The Baddy"
CHASE - Filmclick aus einer Jagdszene
BA_DING - ein Signalton, der darauf hinweist, dass etwas geschehen ist
WAWAWAWAA - ein trauriger Posaunenklang
JUMP_UP - für Spiele, um auf eine Aufwärtsbewegung hinzuweisen
JUMP_DOWN - für Spiele, um auf eine Abwärtsbewegung hinzuweisen
POWER_UP - ein Fanfarenklang
POWER_DOWN - ein trauriger Fanfarenklang, wenn etwas verloren gegangen ist
a : .- , b : -... , c : -.-. , d : -.. , e : . , f : ..-. , g : --. , h : .... , i : .. , j : .--- , k : -.- , l : .-.. , m : -- , n : -. , o : --- , p : .--. , q : --.- , r : .-. , s : ... , t : - , u : ..- , v : ...- , w : .-- , x : -..- , y : -.-- , z : --..