Programme pour afficher la température en celsius :
from microbit import * while True: tpre=temperature() display.scroll(tpre,delay=300,wait=True)
Ajout d’une fonction pour afficher la température en kelvin si on appuie sur le bouton b :
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)
Dans l’éditeur en ligne, il faut remplacer « print » par « display.scroll » en raison de l’absence de console.
La carte peut également être utilisée en tant que capteur de lumière :
from microbit import * while True: lum=display.read_light_level() print(lum) sleep(100)
Ce programme permet d’afficher l’image « SAD » si la lumière ambiante captée n’est pas suffisante et l’image « HAPPY » si la quantité de lumière captée est suffisante :
from microbit import * while True: lum=display.read_light_level() if lum>50: display.show(Image.HAPPY) else: display.show(Image.SAD) sleep(10)
On peut rajouter des éléments tels que hauts parleurs :
Et composer nos propres mélodies :
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)
Ou avec des musiques pré-enregistrées :
import music music.play(music.NYAN)
On peut ajouter une DEL :
import microbit outputPin = microbit.pin2 while True: outputPin.write_digital(1) microbit.sleep(500) outputPin.write_digital(0) sleep(500)
On peut ajouter un potentiomètre qui sera déclaré en entrée analogique :
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
La DEL s’allume et s’éteint lorsque l’on claque des doigts :
import microbit import time analogueIn =microbit.pin1 outputPin = microbit.pin2 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