UNPKG

johnny-five

Version:

The JavaScript Robotics and Hardware Programming Framework. Use with: Arduino (all models), Electric Imp, Beagle Bone, Intel Galileo & Edison, Linino One, Pinoccio, pcDuino3, Raspberry Pi, Particle/Spark Core & Photon, Tessel 2, TI Launchpad and more!

107 lines (84 loc) 2.28 kB
var Barcli = require("barcli"); var five = require("../lib/johnny-five.js"); var board = new five.Board({ // repl: false, // debug: false }); board.on("ready", function() { /* var expander = new five.Expander("MUXSHIELD2"); var p15 = new Barcli({ label: "Pin 15", range: [0, 1023] }); var pXX = new Barcli({ label: "Pin XX", range: [0, 1023] }); var act = new Barcli({ label: "Active", range: [0, 14] }); expander.pinMode("IO1-15", expander.MODES.ANALOG); expander.analogRead("IO1-15", function(data) { p15.update(data); }); for (var i = 0; i < 15; i++) { (function(pin) { expander.pinMode(pin, expander.MODES.ANALOG); expander.analogRead(pin, function(data) { if (pin === getActivePin()) { pXX.update(data); } }); }("IO1-" + i)); } var button = new five.Button(9); var activePin = 0; button.on("press", nextActivePin); function nextActivePin() { activePin++; if (activePin > 14) { activePin = 0; } act.update(activePin); } function getActivePin() { return "IO1-" + activePin; } */ /* var expander = new five.Expander("MUXSHIELD2"); for (var i = 0; i < 16; i++) { expander.pinMode("IO1-" + i, expander.MODES.OUTPUT); expander.pinMode("IO3-" + i, expander.MODES.OUTPUT); expander.digitalWrite("IO1-" + i, expander.LOW); expander.digitalWrite("IO3-" + i, expander.LOW); } var button = new five.Button(9); var startIndex = 1; var pinIndex = startIndex; button.on("press", toggleNextPin); function toggleNextPin() { if (pinIndex != startIndex) { expander.digitalWrite("IO1-" + pinIndex, expander.LOW); } pinIndex++; if (pinIndex > 15) { pinIndex = startIndex; return toggleNextPin(); } else { console.log("IO1-" + pinIndex); expander.digitalWrite("IO1-" + pinIndex, expander.HIGH); } } */ var virtual = new five.Board.Virtual( new five.Expander("MUXSHIELD2") ); var a = new five.Sensor({ pin: "IO1-15", board: virtual }); a.on("data", function() { console.log(this.value); }); var b = new five.Sensor({ pin: "IO2-15", board: virtual }); b.on("data", function() { console.log(this.value); }); });