Test du programme suivant permettant d’afficher la température en degré Celsius de la carte sur la matrice de leds :
from microbit import * while True: tpre=temperature() display.scroll(tpre,delay=300,wait=True)
Modification du programme pour afficher la température en degré Celsius si l’on appuie sur le bouton « A » et en Kelvin si l’on appuie sur le bouton « B » (à réaliser sur Mu) :
from microbit import * unit="celsius" while True: if button_a.is_pressed(): unit="celsius" elif button_b.is_pressed(): unit="kelvin" else: if unit=="celsius": temp = temperature() print(temp," C") sleep(100) else: temp = temperature()+273 print(temp," K") sleep(100)
Pour afficher le résultat sur la matrice de leds, il faut remplacer « print » par « display.scroll ».
Il est également possible d’utiliser la matrice de leds en capteur de lumière.
Pour effectuer des tests, il faut utiliser Mu ; c’est la ligne de commande interactive REPL qui va permettre d’afficher les résultats des mesures.
Voici le programme utilisé pour capteur de lumière :
from microbit import * while True: lum=display.read_light_level() print(lum) sleep(100)
Lorsque la carte est dans l’obscurité, la console affiche 0.
Au contraire lorsqu’on la soumet à une forte lumière comme celle d’un téléphone, elle affiche des nombres beaucoup plus importants, se rapprochant de 255.
Programme affichant l’image « HAPPY » si la lumière ambiante est suffisante et « SAD » dans le cas contraire :
from microbit import * while True: lum=display.read_light_level() if lum>50: display.show(Image.HAPPY) else: display.show(Image.SAD) sleep(10)
La carte microbit est également équipée de l’extension gravity. Il est donc possible de connecter un haut parleur au pin0 en respectant les couleurs. https://microbit-micropython.readthedocs.io/en/latest/tutorials/music.html.
Programme passant de Frère Jacques à Beethoven :
import music tune = ["C4:4", "D4:4", "E4:4", "C4:4", "C4:4", "D4:4", "E4:4", "C4:4", "E4:4", "F4:4", "G4:8", "E4:4", "F4:4", "G4:8"] betov=['r4:2', 'g', 'g', 'g', 'eb:8', 'r:2', 'f', 'f', 'f', 'd:8'] music.play(tune,wait=True) music.play(betov,wait=True)
Il est également possible de modifier l’audio que l’on souhaite écouter, par exemple :
from microbit import * import music music.play(music.NYAN)
Programme allumeur de réverbère :
(A utiliser avec un del connectée au pin2)
import microbit outputPin = microbit.pin2 while True: outputPin.write_digital(1) microbit.sleep(500) outputPin.write_digital(0) sleep(500)
« pin2 » est une sortie digitale pouvant prendre les valeurs 0 ou 1. On peut ajouter un potentiomètre sur pin1 qui sera déclaré en entrée analogique.
Programme permettant d’afficher les valeurs mesurées après conversion :
import microbit import time analogueIn =microbit.pin2 while True: level= analogueIn.read_analog() print(level)
Les valeurs affichées doivent varier entre 0 et 1024.
Programme allumeur de réverbère (brancher un capteur de lumière sur pin1 et une led sur pin2) :
import microbit import time analogueIn =microbit.pin2 outputPin = microbit.pin1 while True: level= analogueIn.read_analog() if level<40: outputPin.write_digital(1) microbit.sleep(25) else: outputPin.write_digital(0) sleep(25)
On peut remplacer le capteur de lumière par un capteur sonore. La led s’allume puis s’éteint au bout de 5s lorsque l’on claque des doigts.
import microbit import time analogueIn =microbit.pin2 outputPin = microbit.pin1 while True: level= analogueIn.read_analog() print(level) if level>20: outputPin.write_digital(1) sleep(5000) else: outputPin.write_digital(0) sleep(25)
La lampe s’allume et s’étend lorsque l’on claque des doigts (ou que l’on produit un son supérieur à 100) ; print(level) permet d’afficher le niveau sonore dans la console :
import microbit import time analogueIn =microbit.pin2 outputPin = microbit.pin1 etat=0 while True: level= analogueIn.read_analog() print(level) if level>100: if etat==0: outputPin.write_digital(1) microbit.sleep(25) etat=1 else: outputPin.write_digital(0) microbit.sleep(25) etat=0
Aucune réponse