Contrôle De La Partie Module - Yoctopuce Yocto-IO Mode D'emploi

Table des Matières

Publicité

14. Utilisation du Yocto-IO en JavaScript / EcmaScript
let errmsg = new YErrorMsg();
if (await YAPI.RegisterHub('127.0.0.1', errmsg) != YAPI.SUCCESS) {
alert('Cannot contact VirtualHub on 127.0.0.1: ' + errmsg.msg);
return;
}
// Select specified device, or use first available one
let serial =
if (serial[8] != '-') {
// by default use any connected module suitable for the demo
let anysensor = YDigitalIO.FirstDigitalIO();
if (anysensor) {
let module = await anysensor.module();
serial = await module.get_serialNumber();
}
}
io = YDigitalIO.FindDigitalIO(serial + '.digitalIO');
// lets configure the channels direction
// bits 0..1 as output
// bits 2..3 as input
await io.set_portDirection(0x03);
await io.set_portPolarity(0); // polarity set to regular
await io.set_portOpenDrain(0); // No open drain
outputdata = 0;
refresh();
}
async function refresh() {
if (await io.isOnline()) {
document.getElementById('msg').value = '';
outputdata = (outputdata + 1) % 4; // cycle ouput 0..3
await io.set_portState(outputdata); // We could have used set_bitState as well
let inputdata = await io.get_portState(); // read port values
let line = "";
for (let i = 0; i
if ((inputdata & (8
line = line + '1';
} else {
line = line + '0';
}
}
document.getElementById('state').value = line;
} else {
document.getElementById('msg').value = 'Module not connected';
}
setTimeout(refresh, 1000);
}
startDemo();
</script>
</head>
Module to use:
<input
<input
id='msg' style='color:red;border:none;' readonly><br>
<p>Channels 0..1 are configured as outputs and channels 2..3
are configred as inputs, you can connect some inputs to
ouputs and see what
Port value :
<input
<body>
</body>
</html>
Aucune installation n'est nécessaire pout utiliser cet exemple, il suffit d'ouvrir la page HTML avec un
navigateur web.
14.4. Contrôle de la partie module
Chaque module peut-être contrôlé d'une manière similaire, vous trouverez ci dessous un simple
programme d'exemple affichant les principaux paramètres d'un module et permettant d'activer la
balise de localisation.
"use
strict";
require('yoctolib-es2017/yocto_api.js');
108
document.getElementById('serial').value;
// display port value as binary
< 4;
i++) {
>> i)) > 0) {
id='serial'>
happens</p>
id='state' style='border:none;' readonly><br>
www.yoctopuce.com

Publicité

Table des Matières
loading

Table des Matières