16. Utilisation du Yocto-Demo avec Android
16.5. Contrôle de la fonction Led
Il suffit de quelques lignes de code pour piloter un Yocto-Demo. Voici le squelette d'un fragment de
code Java qui utilise la fonction Led.
[...]
// On récupère l'objet représentant le module (ici connecté en local sur USB)
YAPI.EnableUSBHost(this);
YAPI.RegisterHub("usb");
led = YLed.FindLed("YCTOPOC1-123456.led");
//Pour gérer le hot-plug, on vérifie que le module est là
if (led.isOnline())
{
//Use led.set_power()
...
}
[...]
Voyons maintenant en détail ce que font ces quelques lignes.
YAPI.EnableUSBHost
La fonction
YAPI.EnableUSBHost
fonction prend en argument un objet de la classe
classe). Si vous comptez uniquement vous connecter à d'autres machines par IP vous cette fonction
est factultative.
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 chaine de caractère
machine. Si l'initialisation se passe mal, une exception sera générée.
YLed.FindLed
La fonction
YLed.FindLed
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-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é):
led =
YLed.FindLed("YCTOPOC1-123456.led")
led =
YLed.FindLed("YCTOPOC1-123456.MaFonction")
led =
YLed.FindLed("MonModule.led")
led =
YLed.FindLed("MonModule.MaFonction")
led =
YLed.FindLed("MaFonction")
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler la led.
YLed.FindLed
isOnline
La méthode
YLed.isOnline()
correspondant est présent et en état de marche.
set_power
La fonction
set_power()
led. L'argument est YLed.POWER_ON ou YLed.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.
92
initialise l'API avec le Context de l'application courante. Cette
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 une led en fonction du numéro de série de son
de l'objet renvoyé par
de l'objet renvoyé par
android.content.Context
permet de savoir si le module
FindLed
permet d'allumer et d'éteindre la
YLed.FindLed
(ou d'une sous-
www.yoctopuce.com