7: Direction

Er zit een kompas op de micro:bit. Met onderstaande code kun je bijvoorbeeld het noorden bepalen. Probeer onderstaande code.

from microbit import *

compass.calibrate()

while True:
    needle = ((15 - compass.heading()) // 30) % 12
    display.show(Image.ALL_CLOCKS[needle])

Eerst komt de tekst in beeld: "DRAW A CIRCLE". En daarna wordt er één pixel opgelicht, precies in het midden van het display.

Voor je het kompas kunt gebruiken, moet het gecalibreerd worden. Als je dat niet doet, krijg je onzinnige resultaten. Het calibreren gebeurt met een spelletje waarmee het apparaat kan bepalen waar het zich bevindt ten opzichte van het magnetisch veld van de aarde.

Dat kalibreren doe je door een cirkel te maken van de losse punten die op het display komen. Telkens als er een puntje verschijnt, stuur je dat naar de rand van het display door het display een bepaalde kant op te tillen. Als alle pixels van de rand gevuld zijn (behalve de hoekpunten) is het kompas gekalibreerd.

Als je dat gedaan hebt, verschijnt er heel even een afbeelding en daarna zal de micro:bit het noorden aanwijzen met één van de afbeeldingen uit het array ALL_CLOCKS.