Yoctopuce Yocto-RangeFinder Mode D'emploi page 162

Table des Matières

Publicité

20. Utilisation du Yocto-RangeFinder en Objective-C
// Pour gérer le hot-plug, on vérifie que le module est là
if([rangefinder
isOnline])
{
// Utiliser [rangefinder get_currentValue]
...
}
Voyons maintenant en détail ce que font ces quelques lignes.
yocto_api.h et yocto_rangefinder.h
Ces deux fichiers importés permettent d'avoir accès aux fonctions permettant de gérer les modules
Yoctopuce.
yocto_api.h
gérer les modules contenant un capteur de distance, comme le Yocto-RangeFinder.
[YAPI RegisterHub]
La fonction
[YAPI RegisterHub]
doivent être recherchés. Utilisée avec le paramètre
modules connectés localement à la machine. Si l'initialisation se passe mal, cette fonction renverra
une valeur différente de
problème.
[RangeFinder FindRangeFinder]
La fonction
[RangeFinder FindRangeFinder]
en fonction du numéro de 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-RangeFinder avec le numéros de série YRNGFND1-123456 que vous auriez appelé
"MonModule" et dont vous auriez nommé la fonction rangeFinder "MaFonction", les cinq appels
suivants seront strictement équivalents (pour autant que MaFonction ne soit définie qu'une fois, pour
éviter toute ambiguïté):
YRangeFinder
*rangefinder
YRangeFinder
*rangefinder
YRangeFinder
*rangefinder
YRangeFinder
*rangefinder
YRangeFinder
*rangefinder
[YRangeFinder FindRangeFinder]
pour contrôler le capteur de distance.
isOnline
La méthode
isOnline
de savoir si le module correspondant est présent et en état de marche.
get_currentValue
La
méthode
YRangeFinder.FindRangeFinder
Un exemple réel
Lancez Xcode 4.2 et ouvrez le projet exemple correspondant, fourni dans le répertoire Examples/
Doc-GettingStarted-Yocto-RangeFinder de la librairie Yoctopuce.
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.
#import <Foundation/Foundation.h>
#import "yocto_api.h"
#import "yocto_rangefinder.h"
#import "yocto_lightsensor.h"
#import "yocto_temperature.h"
static void
usage(void)
156
doit toujours être utilisé,
initialise l'API de Yoctopuce en indiquant où les modules
, et retournera via le paramètre
YAPI_SUCCESS
=
[YRangeFinder
FindRangeFinder:@"YRNGFND1-123456.rangeFinder"];
=
[YRangeFinder
FindRangeFinder:@"YRNGFND1-123456.MaFonction"];
=
[YRangeFinder
FindRangeFinder:@"MonModule.rangeFinder"];
=
[YRangeFinder
FindRangeFinder:@"MonModule.MaFonction"];
=
[YRangeFinder
FindRangeFinder:@"MaFonction"];
renvoie un objet que vous pouvez ensuite utiliser à loisir
de l'objet renvoyé par
get_currentValue()
permet d'obtenir la distance en mm mesurée par le capteur.
yocto_rangefinder.h
, elle permet de travailler avec les
@"usb"
, permet de retrouver un capteur de distance
[YRangeFinder FindRangeFinder]
de
l'objet
est nécessaire pour
un explication du
errmsg
permet
renvoyé
www.yoctopuce.com
par

Publicité

Table des Matières
loading

Table des Matières