from microbit import uart, sleep from microbit import * ############################################################################### # 5-labyrinthe-microbit.py # @title: Programme pour la carte micro:bit de gestion de la centrale inertielle # @project: Blender-EduTech - Tutoriel 5 : Labyrinthe à bille - Interfacer avec une carte micro:bit # @lang: fr # @authors: Philippe Roy # @copyright: Copyright (C) 2023 Philippe Roy # @license: GNU GPL # # Commandes declenchees par UPBGE pour le scene du labyrinthe # ############################################################################### ############################################################################### # Initialisation ############################################################################### attente_image = Image("00000:00000:00900:00000:00000") display.show(attente_image) # Témoin de fonctionnement uart.init(baudrate= 115200) # Initialisation du port série # ############################################################################### # Boucle principale # ############################################################################### while True: accel_x=accelerometer.get_x() accel_y=accelerometer.get_y() uart.write(str(accel_x)+","+str(accel_y)+"\n") # Affichage de la l'inclinaison if accel_x < -30: # Ouest if accel_y <-30: display.show(Image.ARROW_NW) elif accel_y >30: display.show(Image.ARROW_SW) else: display.show(Image.ARROW_W) elif accel_x > 30: # Est if accel_y <-30: display.show(Image.ARROW_NE) elif accel_y >30: display.show(Image.ARROW_SE) else: display.show(Image.ARROW_E) else: # Nord ou Sud if accel_y < -30 : display.show(Image.ARROW_N) elif accel_y > 30 : display.show(Image.ARROW_S) else: # Au centre display.show(attente_image) sleep(100)