[RPI] Implémentation GPIO.cleanup() et GPIO.setwarnings(False)

Si vous souhaitez savoir quel programmateur ou thermostat choisir, rendre autonome votre terrarium via Arduino, ou expliquer comment vous pilotez à distance votre arrosage à l'aide d'un Raspberry Pi, cette rubrique est faite pour vous.

[RPI] Implémentation GPIO.cleanup() et GPIO.setwarnings(False)

Messagepar Guttata » 31 Déc 2014 17:33

Bonjour,

J'ai une petite question pratique d'implémentation :

J'ai fais un petit montage avec une LED pour valider l'interface entre mon site Web (sur mon synology) et les scripts manipulation GPIO (sur Raspberry).
Pour l'instant je fais un GPIO.cleanup() dans un bloc "finally" pour être clean et éviter le warning RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.
A terme, il me faudra supprimer ce "cleanup" pour conserver le statut de mon GPIO après l'éxécution du script.

Comment faites vous pour être clean ? Vous mettez juste l’instruction GPIO.setwarnings(False) ?

Merci

 
Messages: 1061
Enregistré le: 23 Jan 2005 19:46
Localisation: 78

[RPI] Implémentation GPIO.cleanup() et GPIO.setwarnings(Fals

Messagepar Merwnn » 31 Déc 2014 19:40

Guttata a écrit:Bonjour,

J'ai une petite question pratique d'implémentation :

J'ai fais un petit montage avec une LED pour valider l'interface entre mon site Web (sur mon synology) et les scripts manipulation GPIO (sur Raspberry).
Pour l'instant je fais un GPIO.cleanup() dans un bloc "finally" pour être clean et éviter le warning RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.
A terme, il me faudra supprimer ce "cleanup" pour conserver le statut de mon GPIO après l'éxécution du script.

Comment faites vous pour être clean ? Vous mettez juste l’instruction GPIO.setwarnings(False) ?

Merci

Je me suis pas encore occupé de coder du côté RPI donc je vois pas ce que tu veux faire avec ta focntion "cleanUp".

Mais d'un point de vue programmation je te dirais:
- Peux-tu tester s'il est déjà en cours d'utilisation, et de ce fait éviter d'utiliser ce channel déjà utilisé.
- Ce n'est qu'un Warning, donc au pire aucune inquiétude à avoir si tu connais le problème et tu ne sais pas comment le contourner.
- Désactiver les warnings durant l'appel de ta fonction "cleanUp" et puis les réactiver ensuite.

Voilà, bon courage :)

Avatar de l’utilisateur
 
Messages: 316
Enregistré le: 13 Sep 2012 15:51
Localisation: Montpellier - 34

[RPI] Implémentation GPIO.cleanup() et GPIO.setwarnings(Fals

Messagepar Guttata » 01 Jan 2015 4:27

La fonction cleanup te permet justement d'être propre en "resetant" les gpios utilisés durant le script.

Tu peux tester si un gpio est actif mais le warning reste la quoiqu'il arrive. Il faut que je regarde si j'ai bien la dernière version de la bibliothèque.

 
Messages: 1061
Enregistré le: 23 Jan 2005 19:46
Localisation: 78


Retourner vers Automatisation & régulation de vos installations

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités

cron