Page 1 sur 1

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

Posté : 31 déc. 2014 17:33
par Guttata
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

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

Posté : 31 déc. 2014 19:40
par Merwnn
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 :)

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

Posté : 01 janv. 2015 4:27
par Guttata
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.