Updated DigitalPin and raspi_button example.
This commit is contained in:
parent
250a0d0166
commit
ff978f3a0d
|
@ -88,27 +88,22 @@
|
|||
};
|
||||
|
||||
DigitalPin.prototype.digitalRead = function(interval) {
|
||||
var readData;
|
||||
var readData,
|
||||
_this = this;
|
||||
if (this.mode !== 'r') {
|
||||
this.self._setMode('r');
|
||||
}
|
||||
readData = null;
|
||||
return setInterval(this._readFileCallback, interval);
|
||||
};
|
||||
|
||||
DigitalPin.prototype._readFileCallback = function() {
|
||||
var _this = this;
|
||||
return FS.readFile(this.pinFile, function(err, data) {
|
||||
var readData;
|
||||
if (err) {
|
||||
return _this.self.emit('error', "Error occurred while reading from pin " + _this.pinNum);
|
||||
} else {
|
||||
readData = data;
|
||||
console.log("Digital read VALUE ===>");
|
||||
console.log(data.toString());
|
||||
return _this.self.emit('digitalRead', data);
|
||||
}
|
||||
});
|
||||
return setInterval(function() {
|
||||
return FS.readFile(_this.pinFile, function(err, data) {
|
||||
if (err) {
|
||||
return _this.self.emit('error', "Error occurred while reading from pin " + _this.pinNum);
|
||||
} else {
|
||||
readData = data;
|
||||
return _this.self.emit('digitalRead', data);
|
||||
}
|
||||
});
|
||||
}, interval);
|
||||
};
|
||||
|
||||
DigitalPin.prototype._setMode = function(mode, emitConnect) {
|
||||
|
|
|
@ -7,11 +7,11 @@ Cylon.robot
|
|||
|
||||
devices:
|
||||
[
|
||||
{name: 'led', driver: 'led', pin: 13},
|
||||
{name: 'button', driver: 'button', pin: 2}
|
||||
{name: 'led', driver: 'led', pin: 11},
|
||||
{name: 'button', driver: 'button', pin: 7}
|
||||
]
|
||||
|
||||
work: (my) ->
|
||||
my.button.on 'push', console.log("Reading pin...")
|
||||
my.button.on 'push', my.led.toggle()
|
||||
|
||||
.start()
|
|
@ -66,18 +66,15 @@ namespace 'Cylon.IO', ->
|
|||
@self._setMode('r') unless @mode == 'r'
|
||||
readData = null
|
||||
|
||||
setInterval(@_readFileCallback, interval)
|
||||
|
||||
_readFileCallback: ->
|
||||
FS.readFile(@pinFile, (err, data) =>
|
||||
if err
|
||||
@self.emit('error', "Error occurred while reading from pin #{ @pinNum }")
|
||||
else
|
||||
readData = data
|
||||
console.log("Digital read VALUE ===>")
|
||||
console.log(data.toString())
|
||||
@self.emit('digitalRead', data)
|
||||
)
|
||||
setInterval(() =>
|
||||
FS.readFile(@pinFile, (err, data) =>
|
||||
if err
|
||||
@self.emit('error', "Error occurred while reading from pin #{ @pinNum }")
|
||||
else
|
||||
readData = data
|
||||
@self.emit('digitalRead', data)
|
||||
)
|
||||
, interval)
|
||||
|
||||
# Sets the mode for the GPIO pin by writing the correct values to the pin reference files
|
||||
_setMode: (mode, emitConnect = false) ->
|
||||
|
|
Loading…
Reference in New Issue