Yoctopuce Yocto-Meteo Mode D'emploi page 107

Table des Matières

Publicité

Modifications des réglages du module
Lorsque que vous souhaitez modifier les réglages d'un module, il suffit d'appeler la fonction
correspondante, cependant cette modification n'a lieu que dans la mémoire vive du
set_xxx()
module: si le module redémarre, les modifications seront perdues. Pour qu'elle soient mémorisées
de manière persistante, il est nécessaire de demander au module de sauvegarder sa configuration
courante dans sa mémoire non volatile. Pour cela il faut utiliser la méthode
Inversement il est possible de forcer le module à oublier ses réglages courants en utilisant la
méthode
revertFromFlash()
d'un module.
program
savesettings;
{$APPTYPE CONSOLE}
uses
SysUtils,
yocto_api;
const
serial = 'METEOMK1-123456';
var
module
: TYModule;
errmsg
: string;
newname : string;
begin
// Setup the API to use local USB devices
if
yRegisterHub('usb', errmsg)<>YAPI_SUCCESS
begin
Write('RegisterHub error:
exit;
end;
module := yFindModule(serial);
if (not(module.isOnline)) then
begin
writeln('Module not connected (check identification and USB
exit;
end;
Writeln('Current logical name :
Write('Enter new name :
Readln(newname);
if (not(yCheckLogicalName(newname))) then
begin
Writeln('invalid logical
exit;
end;
module.set_logicalName(newname);
module.saveToFlash();
yFreeAPI();
Writeln('logical name is now :
end.
Attention, le nombre de cycles d'écriture de la mémoire non volatile du module est limité. Passé cette
limite plus rien ne garantit que la sauvegarde des réglages se passera correctement. Cette limite,
liée à la technologie employée par le micro-processeur du module se situe aux alentour de 100000
cycles. Pour résumer vous ne pouvez employer la fonction
cours de la vie du module. Veillez donc à ne pas appeler cette fonction depuis l'intérieur d'une
boucle.
Énumération des modules
Obtenir la liste des modules connectés se fait à l'aide de la fonction
le premier module trouvé, il suffit ensuite d'appeler la fonction
trouver les modules suivants, et ce tant que la réponse n'est pas un
exemple listant les module connectés
program
inventory;
{$APPTYPE CONSOLE}
uses
www.yoctopuce.com
. Ce petit exemple ci-dessous vous permet changer le nom logique
// use serial number or logical name
'+errmsg);
'+module.get_logicalName());
');
name');
'+module.get_logicalName());
14. Utilisation du Yocto-Meteo en Delphi
then
cable)');
saveToFlash()
yFirstModule()
nextModule()
saveToFlash()
que 100000 fois au
qui renvoie
de cet objet pour
. Ci-dessous un petit
nil
.
101

Publicité

Table des Matières
loading

Table des Matières