Contrôle De La Fonction I2Cport - Yoctopuce Yocto-I2C Mode D'emploi

Table des Matières

Publicité

documentation dans la section "Caractéristiques". Pour finir, le n u d "Device" doit contenir un n u d
"Function" avec l'attribut "Type" dont la valeur est "usage:ff00 0001".
Pour le Yocto-I2C voici ce qu'il faut ajouter dans le n u d "Capabilities":
<DeviceCapability Name="humaninterfacedevice">
<!-- Yocto-I2C -->
<Device Id="vidpid:24e0 0093">
<Function Type="usage:ff00 0001" />
</Device>
</DeviceCapability>
Malheureusement, il n'est pas possible d'écrire un règle qui autorise tous les modules Yoctopuce,
par conséquent il faut impérativement ajouter chaque module que l'on désire utiliser.
20.4. Contrôle de la fonction I2cPort
Il suffit de quelques lignes de code pour piloter un Yocto-I2C. Voici le squelette d'un fragment de
code c# qui utilise la fonction I2cPort.
[...]
// On active la détection des modules sur USB
await YAPI.RegisterHub("usb");
[...]
// On récupère l'objet permettant d'intéragir avec le module
YI2cPort
i2cport
= YI2cPort.FindI2cPort("YI2CMK01-123456.i2cPort");
// Pour gérer le hot-plug, on vérifie que le module est là
if (await 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. Le paramètre est l'adresse du virtual hub capable de voir les modules. Si l'on passe
la chaîne de caractère
machine. Si l'initialisation se passe mal, une exception sera générée.
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.
www.yoctopuce.com
initialise l'API de Yoctopuce en indiquant où les modules doivent
, l'API va travailler avec les modules connectés localement à la
"usb"
permet de retrouver un port I2C en fonction du numéro de
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler
20. Utilisation du Yocto-I2C avec Universal Windows Platform
163

Publicité

Table des Matières
loading

Table des Matières