13. Utilisation du Yocto-Inclinometer avec Android
13.5. Contrôle de la fonction Tilt
Il suffit de quelques lignes de code pour piloter un Yocto-Inclinometer. Voici le squelette d'un
fragment de code Java qui utilise la fonction Tilt.
[...]
// On active la détection des modules sur USB
YAPI.EnableUSBHost(this);
YAPI.RegisterHub("usb");
[...]
// On récupère l'objet permettant de communiquer avec le module
tilt
= YTilt.FindTilt("YCLINOM1-123456.tilt1");
// Pour gérer le hot-plug, on vérifie que le module est là
if (tilt.isOnline())
{
// Utilisez tilt.get_currentValue()
[...]
}
[...]
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.
YTilt.FindTilt
La fonction
YTilt.FindTilt
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-Inclinometer avec le
numéros de série YCLINOM1-123456 que vous auriez appelé "MonModule" et dont vous auriez
nommé la fonction tilt1 "MaFonction", les cinq appels suivants seront strictement équivalents (pour
autant que MaFonction ne soit définie qu'une fois, pour éviter toute ambiguïté):
tilt
= YTilt.FindTilt("YCLINOM1-123456.tilt1")
tilt
= YTilt.FindTilt("YCLINOM1-123456.MaFonction")
tilt
= YTilt.FindTilt("MonModule.tilt1")
tilt
= YTilt.FindTilt("MonModule.MaFonction")
tilt
= YTilt.FindTilt("MaFonction")
YTilt.FindTilt
l'inclinomètre.
isOnline
La méthode
isOnline()
correspondant est présent et en état de marche.
get_currentValue
La méthode
get_currentValue()
d'obtenir l'inclinaison actuelle mesurée par le capteur. La valeur de retour est un nombre flottant.
88
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 un inclinomètre en fonction du numéro de série
renvoie un objet que vous pouvez ensuite utiliser à loisir pour contrôler
de l'objet renvoyé par
des l'objets renvoyés par
android.content.Context
permet de savoir si le module
YTilt.FindTilt
YTilt.FindTilt
(ou d'une sous-
permet
www.yoctopuce.com