Pymata4 permet facilement de gérer les événements.
Ainsi, on peut structurer un programme de la façon suivante (non obligatoire) :
#-------------- importer les modules nécessaires from pymata4 import pymata4 import sys import time #-------------- créer l'objet Pymata4() carte = pymata4.Pymata4() print("--------------- Début --------------") #-------------- Constantes #LedR = 9 # port de la LED rouge (PWM obligatoire) #------------------ fonctions callback #def moncallback(): #---------------- programme principal try : #------------------ initialisation des pattes # carte.set_pin_...(...) time.sleep(1) #------------------ boucle infinie while True: time.sleep(Delai) except KeyboardInterrupt : # si on tape Ctl + C print("--------------- Fin --------------") carte.shutdown() sys.exit(0)
Les modules nécessaires
- pymata4 (à installer)
- sys
- time
- keyboard (à installer) si interaction avec le clavier
Créer l’objet Pymata4()
C’est l’instruction centrale à partir de laquelle toutes les instructions Pymata4 seront liées.
Le programme fera automatiquement la connexion avec la carte Arduino connectée, sans que l’on doive se soucier du port de communication.
En cas d’échec (rare), débrancher et rebrancher la carte et relancer le programme.
Constantes
Mieux vaut rassembler ici toutes les constantes nécessaires :
- pattes des composants
- temps d’attente
- sensibilité d’un capteur
- …
Mieux vaut laisser une seconde d’attente pour que l’initialisation des pattes se fasse avant les éventuelles lectures.
Fonctions callback
Si on utilise les fonctions de lectures avec des callbacks, on pourra définir ici les différentes fonctions.
Ces fonctions seront appelés en cas de changements suffisants de valeurs mesurées. Cette programmation est très logique et facile à mettre en place. Pymata4 fait le reste !
Le programme principal
Celui-ci s’articule autour du couple try/except.
Dans le try on retrouve :
- Les initialisations des pattes (lecture, écriture, capteur particulier)
- la boucle infinie qui ne contiendra rien ou des instructions de lectures régulières (polling)
La partie except sert à interrompre proprement le programme quand on clique sur Ctl+C.