BoneScript Analog Value Monitor
Watch the values on the analog input pins on a BeagleBone
by Jason Kridner
HTML
<script src="http://beagleboard.org/static/bonescript.js"></script>
<h1>BoneScript Analog Value Monitor</h1>
<p>AIN0 = <span id="ain0"></span>
</p>
<p>AIN1 = <span id="ain1"></span>
</p>
<p>AIN2 = <span id="ain2"></span>
</p>
<p>AIN3 = <span id="ain3"></span>
</p>
<p>AIN4 = <span id="ain4"></span>
</p>
<p>AIN5 = <span id="ain5"></span>
</p>
<p>AIN6 = <span id="ain6"></span>
</p>
JavaScript
setTargetAddress('beaglebone.local', {
initialized: run
});
setTargetAddress('192.168.7.2', {
initialized: run
});
// The demo BoneScript application within the 'run()' function
function run() {
/*
* Setup
*/
var b = require('bonescript');
var ain = [];
for (var j = 0; j <= 6; j++) {
for (var i = 0; i < b.bone.pinIndex.length; i++) {
if (b.bone.pinIndex[i].name == 'AIN' + j) {
ain[j] = b.bone.pinIndex[i].key;
}
}
}
var index = 0;
doRead();
function doRead() {
b.analogRead(ain[index], onRead);
}
function onRead(x) {
try {
$('#ain' + index).html(x.value.toFixed(3));
} catch (ex) {
$('#ain' + index).html('XXXXX');
}
index++;
if (index > 6) {
index = 0;
setTimeout(doRead, 100);
} else {
doRead();
}
}
}