Merge pull request #52 from hybridgroup/21-beaglebone-adaptor
Added GPIO examples for beaglebone.
This commit is contained in:
commit
a6b442116f
|
@ -21,15 +21,15 @@
|
|||
|
||||
namespace('Cylon.IO', function() {
|
||||
return this.DigitalPin = (function(_super) {
|
||||
var GPIO_DIRECTION_READ, GPIO_DIRECTION_WRITE, GPIO_PATH, HIGH, LOW;
|
||||
var GPIO_PATH, GPIO_READ, GPIO_WRITE, HIGH, LOW;
|
||||
|
||||
__extends(DigitalPin, _super);
|
||||
|
||||
GPIO_PATH = "/sys/class/gpio";
|
||||
|
||||
GPIO_DIRECTION_READ = "in";
|
||||
GPIO_READ = "in";
|
||||
|
||||
GPIO_DIRECTION_WRITE = "out";
|
||||
GPIO_WRITE = "out";
|
||||
|
||||
HIGH = 1;
|
||||
|
||||
|
@ -154,11 +154,11 @@
|
|||
}
|
||||
this.mode = mode;
|
||||
if (mode === 'w') {
|
||||
return FS.writeFile(this._directionPath(), GPIO_DIRECTION_WRITE, function(err) {
|
||||
return FS.writeFile(this._directionPath(), GPIO_WRITE, function(err) {
|
||||
return _this._setModeCallback(err, emitConnect);
|
||||
});
|
||||
} else if (mode === 'r') {
|
||||
return FS.writeFile(this._directionPath(), GPIO_DIRECTION_READ, function(err) {
|
||||
return FS.writeFile(this._directionPath(), GPIO_READ, function(err) {
|
||||
return _this._setModeCallback(err, emitConnect);
|
||||
});
|
||||
}
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
Cylon = require('..')
|
||||
|
||||
# Initialize the robot
|
||||
Cylon.robot
|
||||
connection:
|
||||
name: 'beaglebone', adaptor: 'beaglebone'
|
||||
|
||||
device:
|
||||
name: 'led', driver: 'led', pin: 'P9_12'
|
||||
|
||||
work: (my) ->
|
||||
# we do our thing here
|
||||
every 1.second(), -> my.led.toggle()
|
||||
|
||||
.start()
|
|
@ -0,0 +1,17 @@
|
|||
Cylon = require('..')
|
||||
|
||||
# Initialize the robot
|
||||
Cylon.robot
|
||||
connection:
|
||||
name: 'beaglebone', adaptor: 'beaglebone'
|
||||
|
||||
devices:
|
||||
[
|
||||
{name: 'led', driver: 'led', pin: 'P9_12'},
|
||||
{name: 'button', driver: 'button', pin: 'P9_14'}
|
||||
]
|
||||
|
||||
work: (my) ->
|
||||
my.button.on 'push', () -> my.led.toggle()
|
||||
|
||||
.start()
|
|
@ -19,8 +19,8 @@ namespace 'Cylon.IO', ->
|
|||
class @DigitalPin extends EventEmitter
|
||||
|
||||
GPIO_PATH = "/sys/class/gpio"
|
||||
GPIO_DIRECTION_READ = "in"
|
||||
GPIO_DIRECTION_WRITE = "out"
|
||||
GPIO_READ = "in"
|
||||
GPIO_WRITE = "out"
|
||||
HIGH = 1
|
||||
LOW = 0
|
||||
|
||||
|
@ -111,11 +111,11 @@ namespace 'Cylon.IO', ->
|
|||
_setMode: (mode, emitConnect = false) ->
|
||||
@mode = mode
|
||||
if mode is 'w'
|
||||
FS.writeFile(@_directionPath(), GPIO_DIRECTION_WRITE, (err) =>
|
||||
FS.writeFile(@_directionPath(), GPIO_WRITE, (err) =>
|
||||
@_setModeCallback(err, emitConnect)
|
||||
)
|
||||
else if mode is 'r'
|
||||
FS.writeFile(@_directionPath(), GPIO_DIRECTION_READ, (err) =>
|
||||
FS.writeFile(@_directionPath(), GPIO_READ, (err) =>
|
||||
@_setModeCallback(err, emitConnect)
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in New Issue