forked from jadonk/bonescript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathiic.js
More file actions
28 lines (26 loc) · 1.04 KB
/
Copy pathiic.js
File metadata and controls
28 lines (26 loc) · 1.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Copyright (C) 2013 - Texas Instruments, Jason Kridner
var bone = require('./bone');
var my = require('./my');
var m = {};
m.name = 'i2c';
m.module = my.require('i2c');
m.ports = bone.i2c;
m.events = {
'data': ['data']
};
m.openPorts = {};
m.doOpen = function(args) {
var path = args.port;
if(m.ports[args.port].path) path = m.ports[args.port].path;
if(typeof args.options !== typeof {}) args.options = {};
args.options.device = path;
var openPort = new m.module(args.address, args.options);
return(openPort);
};
exports.i2cOpen = my.wrapOpen(m, ['address', 'options']);
exports.i2cScan = my.wrapCall(m, 'scan', [], ['err', 'data']);
exports.i2cWriteByte = my.wrapCall(m, 'writeByte', ['byte'], ['err']);
exports.i2cWriteBytes = my.wrapCall(m, 'writeBytes', ['command', 'bytes'], ['err']);
exports.i2cReadByte = my.wrapCall(m, 'readByte', [], ['err', 'res']);
exports.i2cReadBytes = my.wrapCall(m, 'readBytes', ['command', 'length'], ['err', 'res']);
exports.i2cStream = my.wrapCall(m, 'stream', ['command', 'length', 'delay'], []);