Yoctopuce Yocto-I2C Mode D'emploi page 64

Table des Matières

Publicité

9. Utilisation du Yocto-I2C en Python
Il suffit de quelques lignes de code pour piloter un Yocto-I2C. Voici le squelette d'un fragment de
code Python qui utilise la fonction I2cPort.
[...]
# On active la détection des modules sur USB
errmsg=YRefParam()
YAPI.RegisterHub("usb",errmsg)
[...]
# On récupère l'objet permettant d'intéragir avec le module
i2cport
= YI2cPort.FindI2cPort("YI2CMK01-123456.i2cPort")
# Pour gérer le hot-plug, on vérifie que le module est là
if
i2cport.isOnline():
# use i2cport.i2cSendAndReceiveBin()
[...]
[...]
Voyons maintenant en détail ce que font ces quelques lignes.
YAPI.RegisterHub
La fonction
YAPI.RegisterHub
être recherchés. Utilisée avec le paramètre
connectés localement à la machine. Si l'initialisation se passe mal, cette fonction renverra une valeur
différente de
YAPI.SUCCESS
YI2cPort.FindI2cPort
La fonction
YI2cPort.FindI2cPort
série de son module hôte et de son nom de fonction. Mais vous pouvez tout aussi bien utiliser des
noms logiques que vous auriez préalablement configurés. Imaginons un module Yocto-I2C avec le
numéros de série YI2CMK01-123456 que vous auriez appelé "MonModule" et dont vous auriez
nommé la fonction i2cPort "MaFonction", les cinq appels suivants seront strictement équivalents
(pour autant que MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
i2cport
= YI2cPort.FindI2cPort("YI2CMK01-123456.i2cPort")
i2cport
= YI2cPort.FindI2cPort("YI2CMK01-123456.MaFonction")
i2cport
= YI2cPort.FindI2cPort("MonModule.i2cPort")
i2cport
= YI2cPort.FindI2cPort("MonModule.MaFonction")
i2cport
= YI2cPort.FindI2cPort("MaFonction")
YI2cPort.FindI2cPort
le port I2C.
isOnline
La méthode
isOnline()
module correspondant est présent et en état de marche.
set_i2cMode
La méthode
set_i2cMode()
configurer la vitesse de communication sur le bus I2C.
set_i2cVoltageLevel
La méthode
set_i2cVoltageLevel()
communication du bus I2C (la ligne SDA et la ligne SCL).
reset
La méthode
reset()
port série.
56
initialise l'API de Yoctopuce en indiquant où les modules doivent
, et retournera via l'objet
permet de retrouver un port I2C en fonction du numéro de
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler
de l'objet renvoyé par
de l'objet returné par
de l'objet returné par
YI2cPort.FindI2cPort
, elle permet de travailler avec les modules
"usb"
une explication du problème.
errmsg
YI2cPort.FindI2cPort
YI2cPort.FindI2cPort
configure la tension utilisée sur les lignes de
permet de savoir si le
permet de
vide tous les tampons du
www.yoctopuce.com

Publicité

Table des Matières
loading

Table des Matières