我正在使用 node.js 和 arduino 开发一个应用程序。
我正在使用 johnny-5 框架并将 StandardFirmata 草图上传到我的 arduino,它在引脚 2、3、4 和 5 上连接了一个街机控制器。
这是我的实现:
var five = require('johnny-five');
var board
board = new five.Board();
board.on('ready', function(){
console.log('board is ready');
this.pinMode(2, five.Pin.INPUT);
this.pinMode(3, five.Pin.INPUT);
this.pinMode(4, five.Pin.INPUT);
this.pinMode(5, five.Pin.INPUT);
this.digitalRead(2, function(value) {
if(value === 0)
{
console.log('up');
}
});
this.digitalRead(3, function(value) {
if(value === 0) {
console.log('right');
}
});
this.digitalRead(4, function(value) {
if(value === 0) {
console.log('left');
}
});
this.digitalRead(5, function(value) {
if(value === 0) {
console.log('down');
}
});
});
现在的问题是,当我将街机控制器向下或向上拉时,它会多次记录“向上”或“向下”.. 可能是 5 次,也可能是 10 次。我究竟做错了什么?