import { YAPI, YErrorMsg,
import {
YTemperature
let temp1: YTemperature;
let temp2: YTemperature;
async function startDemo(): Promise<void>
{
await YAPI.LogUnhandledPromiseRejections();
// Setup the API to use the VirtualHub on local machine
let errmsg:
YErrorMsg
if(await YAPI.RegisterHub('127.0.0.1', errmsg) != YAPI.SUCCESS) {
console.log('Cannot contact VirtualHub on 127.0.0.1:
return;
}
// Select specified device, or use first available one
let serial:
string
if(serial[8] != '-') {
// by default use any connected module suitable for the demo
let
anysensor
if(anysensor) {
let module:
serial
} else {
console.log('No matching sensor connected, check cable
await YAPI.FreeAPI();
return;
}
}
console.log('Using device
temp1
= YTemperature.FindTemperature(serial+".temperature1");
temp2
= YTemperature.FindTemperature(serial+".temperature2");
refresh();
}
async function refresh(): Promise<void>
{
if (await temp1.isOnline()) {
console.log('Temperature 1 :
+ (await temp1.get_unit()));
console.log('Temperature 2 :
+ (await temp2.get_unit()));
} else {
console.log('Module not
}
setTimeout(refresh, 500);
}
startDemo();
Comme décrit au début de ce chapitre, vous devez avoir installé le complateur TypeScript sur votre
machine pour essayer ces exemples, et installé les dépendances de la librairie TypeScript. Si vous
l'avez fait, vous pouvez maintenant taper la commande suivantes dans le répertoire de l'exemple lui-
même, pour finaliser la résolution de ses dépendances:
npm install
Vous êtes maintenant prêt pour lancer le code d'exemple dans Node.js. La manière la plus simple de
le faire est d'utiliser la commande suivante, en remplaçant les [...] par les arguments que vous voulez
passer au programme:
npm run demo
[...]
Cette commande, définie dans le fichier
TypeScript à l'aide de la simple commande
La compilation utilise les paramètres spécifiés dans le fichier
• un fichier JavaScript
www.yoctopuce.com
YModule
} from 'yoctolib-cjs/yocto_api_nodejs.js';
} from
'yoctolib-cjs/yocto_temperature.js'
= new YErrorMsg();
= process.argv[process.argv.length-1];
= YTemperature.FirstTemperature();
YModule
= await anysensor.get_module();
= await module.get_serialNumber();
'+serial);
'+(await temp1.get_currentValue())
'+(await temp2.get_currentValue())
connected');
package.json
tsc
, que Node.js pourra exécuter
demo.js
14. Utilisation du Yocto-Thermocouple en TypeScript
'+errmsg.msg);
, a pour effet de compiler le code source
, puis de lancer le code compilé dans Node.js.
tsconfig.json
!');
, et produit
97