9. Utilisation du Yocto-Demo en C++
// On récupère l'objet représentant le module (ici connecté en local sur USB)
yRegisterHub("usb", errmsg);
led = yFindLed("YCTOPOC1-123456.led");
// Pour gérer le hot-plug, on vérifie que le module est là
if(led->isOnline())
{
// Utiliser led->set_power(), ...
}
Voyons maintenant en détail ce que font ces quelques lignes.
yocto_api.h et yocto_led.h
Ces deux fichiers inclus permettent d'avoir accès aux fonctions permettant de gérer les modules
Yoctopuce.
yocto_api.h
modules contenant une led, comme le Yocto-Demo.
yRegisterHub
La fonction
yRegisterHub
recherchés. Utilisée avec le paramètre
localement à la machine. Si l'initialisation se passe mal, cette fonction renverra une valeur différente
de
, et retournera via le paramètre
YAPI_SUCCESS
yFindLed
La fonction
yFindLed
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-Demo avec le numéros de série
YCTOPOC1-123456 que vous auriez appelé "MonModule" et dont vous auriez nommé la fonction
led "MaFonction", les cinq appels suivants seront strictement équivalents (pour autant que
MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
YLed *led = yFindLed("YCTOPOC1-123456.led");
YLed *led = yFindLed("YCTOPOC1-123456.MaFonction");
YLed *led = yFindLed("MonModule.led");
YLed *led = yFindLed("MonModule.MaFonction");
YLed *led = yFindLed("MaFonction");
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler la led.
yFindLed
isOnline
La méthode
isOnline()
correspondant est présent et en état de marche.
set_power
La fonction
set_power()
L'argument est Y_POWER_ON ou Y_POWER_OFF. Vous trouverez dans la référence de l'interface
de programmation d'autres méthodes permettant de contrôler précisément la luminosité et de faire
clignoter automatiquement la led.
Un exemple réel
Lancez votre environnement C++ et ouvrez le projet exemple correspondant, fourni dans le
répertoire Examples/Doc-GettingStarted-Yocto-Demo de la librairie Yoctopuce. Si vous préférez
travailler avec votre éditeur de texte préféré, ouvrez le fichier
dans le répertoire de l'exemple pour le compiler.
make
Vous reconnaîtrez dans cet exemple l'utilisation des fonctions expliquées ci-dessus, cette fois
utilisées avec le décorum nécessaire à en faire un petit programme d'exemple concret.
#include "yocto_api.h"
#include "yocto_led.h"
44
doit toujours être utilisé,
initialise l'API de Yoctopuce en indiquant où les modules doivent être
"usb"
, permet de retrouver une led en fonction du numéro de série de son module
de l'objet renvoyé par
de l'objet renvoyé par
yocto_led.h
, elle permet de travailler avec les modules connectés
un explication du problème.
errmsg
permet de savoir si le module
yFindLed
permet d'allumer et d'éteindre la led.
yFindLed
main.cpp
est nécessaire pour gérer les
, vous taperez simplement
www.yoctopuce.com