Vous êtes sur la page 1sur 3

____________________________________________________________________ THYMIO CODE

BARRE; PSEUDO CODE


___________________________________________________________________________________
_____

FONCTION Moteurs(longueur_feuille, transvar)

longueur_feuille := 90
transvar := 0
RETOURNER transvar
réinitialiser le chronomètre

REPETER
avancer de 1
JUSQU'À CE QUE chronomètre > longueur_feuille

tourner de 180
transvar := 1
RETOURNER transvar
réinitialiser le chronomètre

REPETER
avancer de 1
JUSQU'À CE QUE chronomètre > longueur_feuille

tourner de 180
transvar := 2
RETOURNER transvar

PORCEDURE Convertisseur(liste, binaire, résultat, cptr, cptr2, stock_)


supprimer tous les éléments de la liste (binaire)
supprimer tous les éléments de la liste (résultat)

cptr2 := 0
cptr:= liste
stock_ := cptr%2

ajouter (stock_) à (binaire)

REPETER
cptr := plancher de (cptr/2)
stock_ := cptr%2
ajouter (stock_) à (binaire)
JUSQU'À CE QUE NON cptr > 1

SI longueur de (binaire) < 4 ALORS


POUR i ALLANT DE 0 À 4-longueur de (binaire) FAIRE
ajouter 0 à (binaire)
FIN POUR
FIN SI

REPETER
résultat[cptr2] := binaire[5-cptr2]
JUSQU'À CE QUE cptr2 > 4

LED cercle :
résultat[4]*30,0,résultat[3]*30,0,résultat[2]*30,0,résultat[1]*30,0

FONCTION Scanner(liste_comptage, 1, 2, transvar)


éteindre LED

1 := 0

supprimer tous les éléments de la liste (liste_comptage)

RETOURNER "Convertir"

REPETER
SI longueur de (liste_comptage) == 15 ALORS
attendre jusqu'à ce que transvar == 1

SINON SI capteur sol gauche > 800 ALORS


1 := 1
attendre jusqu'à ce que capteur sol gauche < 800

SINON SI 1 == 1 ALORS
SI transvar == 0 ALORS
jouer note à (440) Hz pendant (0.25) s
ajouter 1 à (liste_comptage)
SINON SI transvar == 1 ALORS
jouer note à (330) Hz pendant (0.25) s
supprimer l'élément longueur de (liste_comptage) de
(liste_comptage)
FIN SI

RETOURNER "Convertir"

1 := 0
FIN SI

JUSQU'À CE QUE transvar == 2

SI transvar == 2 ALORS
SI résultat[1] == 1 ou résultat[2] == 1 ou résultat[3] == 1 ou
résultat[4] == 1 ALORS
LED tout : 32, 0, 0
SINON
LED tout : 0, 32, 0
FIN SI
FIN SI

SI Bouton central est pressé ALORS

1 : = 0
cptr := 0
cptr2 : = 0
longueur_feuille := 0
stock_ := 0
transvar := 0

liste_comptage := []
binaire := []
résultat := []

Moteurs(longueur_feuille, transvar) /* fonctions asynchrome */


signal := Scanner(liste_comptage, 1, 2, transvar)

REPETER
SI signal == "Convertir" ALORS
Convertisseur(longueur de (liste_comptage), binaire, résultat,
cptr, cptr2, stock_)
FIN SI

JUSQU'À CE QUE transvar == 2

FIN SI

Vous aimerez peut-être aussi