16. Utilisation du Yocto-I2C en JavaScript / EcmaScript
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()
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.
i2cSendAndReceiveArray
La méthode
i2cSendAndReceiveArray()
sur le bus I2C à l'adresse spécifiée, et lit en retour le nombre d'octets spécifié du même
périphérique.
Un exemple concret, en Node.js
Ouvrez une fenêtre de commande (un terminal, un shell...) et allez dans le répertoire
example_nodejs/Doc-GettingStarted-Yocto-I2C de la librairie Yoctopuce pour JavaScript /
EcmaScript 2017. Vous y trouverez un fichier nommé
qui reprend les fonctions expliquées précédemment, mais cette fois utilisées avec le décorum
nécessaire à en faire un petit programme d'exemple concret.
Si le Yocto-I2C n'est pas branché sur la machine où fonctionne le navigateur internet, remplacez
dans l'exemple l'adresse
où vous avez lancé le VirtualHub.
"use
strict";
require('yoctolib-es2017/yocto_api.js');
require('yoctolib-es2017/yocto_i2cport.js');
async function startDemo(args)
{
await YAPI.LogUnhandledPromiseRejections();
await YAPI.DisableExceptions();
// Setup the API to use the VirtualHub on local machine
let
errmsg
= new YErrorMsg();
if(await YAPI.RegisterHub('127.0.0.1', errmsg) != YAPI.SUCCESS) {
console.log('Cannot contact VirtualHub on 127.0.0.1:
return;
128
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
par l'adresse IP de la machine où est branché le Yocto-I2C et
127.0.0.1
permet de savoir si le module
FindI2cPort
YI2cPort.FindI2cPort
configure la tension utilisée sur les lignes de
envoie une commande faite d'un ou plusieurs octets
avec le code d'exemple ci-dessous,
demo.js
'+errmsg.msg);
permet de
vide tous les tampons du
www.yoctopuce.com