(function(exports, global) {
/* ----------------------------------------------------------------------------
* This file was automatically generated by io-js-autogen Version 0.0.1
*
* Do not make changes to this file unless you know what you are doing--modify the
* C header file instead.
* ----------------------------------------------------------------------------- */
var Board = function(options) {
submit = options.submit;
var self = this;
self.submit = options.submit;
self.config = function(options) {
submit.config(options);
};
/****************************************
fast_gpio_sc
****************************************/
/**
* @function IO#fastGpioSCInit
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.fastGpioSCInit = function() {
return self.submit.funcReq('fastGpioSCInit', arguments);
};
/**
* @function IO#fastGpioSCFini
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
self.fastGpioSCFini = function() {
return self.submit.funcReq('fastGpioSCFini', arguments);
};
/**
* @function IO#fastGpioDigitalWrite
* @type function
* @param {Integer} gpio
* @param {Integer} val
* @returns {Void}
* @instance
*/
self.fastGpioDigitalWrite = function() {
return self.submit.funcReq('fastGpioDigitalWrite', arguments);
};
/**
* @function IO#fastGpioDigitalWriteDestructive
* @type function
* @param {Integer} gpio
* @returns {Void}
* @instance
*/
self.fastGpioDigitalWriteDestructive = function() {
return self.submit.funcReq('fastGpioDigitalWriteDestructive', arguments);
};
/**
* @function IO#fastGpioDigitalLatch
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.fastGpioDigitalLatch = function() {
return self.submit.funcReq('fastGpioDigitalLatch', arguments);
};
/****************************************
TTYUART
****************************************/
/**
* @constructor
* @name IO#TTYUARTClass
* @param {Object} arg0
* @param {Integer} arg1
*/
TTYUARTClass = function() {
return self.submit.classReq('TTYUARTClass', arguments, this);
};
/**
* @function IO#TTYUARTClass#TTYIrqHandler
* @type function
* @param {Array} pargs
* @returns {Array}
* @instance
*/
TTYUARTClass.prototype.TTYIrqHandler = function() {
return self.submit.classMethodReq('TTYUARTClass', 'TTYIrqHandler', arguments, this);
};
/**
* @function IO#TTYUARTClass#init_tty
* @type function
* @param {Array|String|Object} tty_name
* @returns {Integer}
* @instance
*/
TTYUARTClass.prototype.init_tty = function() {
return self.submit.classMethodReq('TTYUARTClass', 'init_tty', arguments, this);
};
/**
* @function IO#TTYUARTClass#begin
* @type function
* @param {Integer} dwBaudRate
* @returns {Void}
* @instance
*/
TTYUARTClass.prototype.begin = function() {
return self.submit.classMethodReq('TTYUARTClass', 'begin', arguments, this);
};
/**
* @function IO#TTYUARTClass#end
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
TTYUARTClass.prototype.end = function() {
return self.submit.classMethodReq('TTYUARTClass', 'end', arguments, this);
};
/**
* @function IO#TTYUARTClass#available
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TTYUARTClass.prototype.available = function() {
return self.submit.classMethodReq('TTYUARTClass', 'available', arguments, this);
};
/**
* @function IO#TTYUARTClass#peek
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TTYUARTClass.prototype.peek = function() {
return self.submit.classMethodReq('TTYUARTClass', 'peek', arguments, this);
};
/**
* @function IO#TTYUARTClass#read
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TTYUARTClass.prototype.read = function() {
return self.submit.classMethodReq('TTYUARTClass', 'read', arguments, this);
};
/**
* @function IO#TTYUARTClass#flush
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
TTYUARTClass.prototype.flush = function() {
return self.submit.classMethodReq('TTYUARTClass', 'flush', arguments, this);
};
/**
* @function IO#TTYUARTClass#write
* @type function
* @param {Integer} c
* @returns {Integer}
* @instance
*/
TTYUARTClass.prototype.write = function() {
return self.submit.classMethodReq('TTYUARTClass', 'write', arguments, this);
};
self.TTYUARTClass = TTYUARTClass;
/****************************************
sysfs
****************************************/
/**
* @function IO#sysfsPwmExport
* @type function
* @param {Integer} pwm
* @param {Array} handle_enable
* @param {Array} handle_duty
* @returns {Integer}
* @instance
*/
self.sysfsPwmExport = function() {
return self.submit.funcReq('sysfsPwmExport', arguments);
};
/**
* @function IO#sysfsPwmEnable
* @type function
* @param {Integer} handle_enable
* @param {Integer} handle_duty
* @param {Integer} ulValue
* @returns {Integer}
* @instance
*/
self.sysfsPwmEnable = function() {
return self.submit.funcReq('sysfsPwmEnable', arguments);
};
/**
* @function IO#sysfsPwmDisable
* @type function
* @param {Integer} handle_enable
* @returns {Integer}
* @instance
*/
self.sysfsPwmDisable = function() {
return self.submit.funcReq('sysfsPwmDisable', arguments);
};
/**
* @function IO#sysfsGpioSet
* @type function
* @param {Integer} ihandle
* @param {Integer} value
* @returns {Integer}
* @instance
*/
self.sysfsGpioSet = function() {
return self.submit.funcReq('sysfsGpioSet', arguments);
};
/**
* @function IO#sysfsGpioGet
* @type function
* @param {Integer} ihandle
* @returns {Integer}
* @instance
*/
self.sysfsGpioGet = function() {
return self.submit.funcReq('sysfsGpioGet', arguments);
};
/**
* @function IO#sysfsGpioExport
* @type function
* @param {Integer} gpio
* @param {Array|String|Object} path
* @param {Integer} max_path
* @returns {Integer}
* @instance
*/
self.sysfsGpioExport = function() {
return self.submit.funcReq('sysfsGpioExport', arguments);
};
/**
* @function IO#sysfsGpioDirection
* @type function
* @param {Integer} gpio
* @param {Integer} output
* @param {Integer} outval
* @returns {Integer}
* @instance
*/
self.sysfsGpioDirection = function() {
return self.submit.funcReq('sysfsGpioDirection', arguments);
};
/**
* @function IO#sysfsGpioEdgeConfig
* @type function
* @param {Integer} gpio
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.sysfsGpioEdgeConfig = function() {
return self.submit.funcReq('sysfsGpioEdgeConfig', arguments);
};
/**
* @function IO#sysfsGpioLevelConfig
* @type function
* @param {Integer} gpio
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.sysfsGpioLevelConfig = function() {
return self.submit.funcReq('sysfsGpioLevelConfig', arguments);
};
/**
* @function IO#sysfsGpioSetDrive
* @type function
* @param {Integer} gpio
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.sysfsGpioSetDrive = function() {
return self.submit.funcReq('sysfsGpioSetDrive', arguments);
};
/****************************************
SPI
****************************************/
/**
* @constructor
* @name IO#SPIClass
* @param {Void}
*/
SPIClass = function() {
return self.submit.classReq('SPIClass', arguments, this);
};
/**
* @function IO#SPIClass#transfer
* @type function
* @param {Integer} _data
* @returns {Integer}
* @instance
*/
SPIClass.prototype.transfer = function() {
return self.submit.classMethodReq('SPIClass', 'transfer', arguments, this);
};
/**
* @function IO#SPIClass#transferBuffer
* @type function
* @param {Array|String|Object} arg0
* @param {Array|String|Object} arg1
* @param {Integer} arg2
* @returns {Void}
* @instance
*/
SPIClass.prototype.transferBuffer = function() {
return self.submit.classMethodReq('SPIClass', 'transferBuffer', arguments, this);
};
/**
* @function IO#SPIClass#attachInterrupt
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
SPIClass.prototype.attachInterrupt = function() {
return self.submit.classMethodReq('SPIClass', 'attachInterrupt', arguments, this);
};
/**
* @function IO#SPIClass#detachInterrupt
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
SPIClass.prototype.detachInterrupt = function() {
return self.submit.classMethodReq('SPIClass', 'detachInterrupt', arguments, this);
};
/**
* @function IO#SPIClass#begin
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
SPIClass.prototype.begin = function() {
return self.submit.classMethodReq('SPIClass', 'begin', arguments, this);
};
/**
* @function IO#SPIClass#end
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
SPIClass.prototype.end = function() {
return self.submit.classMethodReq('SPIClass', 'end', arguments, this);
};
/**
* @function IO#SPIClass#setBitOrder
* @type function
* @param {Integer} arg0
* @returns {Void}
* @instance
*/
SPIClass.prototype.setBitOrder = function() {
return self.submit.classMethodReq('SPIClass', 'setBitOrder', arguments, this);
};
/**
* @function IO#SPIClass#setDataMode
* @type function
* @param {Integer} arg0
* @returns {Void}
* @instance
*/
SPIClass.prototype.setDataMode = function() {
return self.submit.classMethodReq('SPIClass', 'setDataMode', arguments, this);
};
/**
* @function IO#SPIClass#setClockDivider
* @type function
* @param {Integer} arg0
* @returns {Void}
* @instance
*/
SPIClass.prototype.setClockDivider = function() {
return self.submit.classMethodReq('SPIClass', 'setClockDivider', arguments, this);
};
self.SPIClass = SPIClass;
/**
* @constant IO#SPI_CLOCK_DIV4
* @desc 0x00
*/
self.SPI_CLOCK_DIV4 = 0x00;
/**
* @constant IO#SPI_CLOCK_DIV16
* @desc 0x01
*/
self.SPI_CLOCK_DIV16 = 0x01;
/**
* @constant IO#SPI_CLOCK_DIV64
* @desc 0x02
*/
self.SPI_CLOCK_DIV64 = 0x02;
/**
* @constant IO#SPI_CLOCK_DIV128
* @desc 0x03
*/
self.SPI_CLOCK_DIV128 = 0x03;
/**
* @constant IO#SPI_CLOCK_DIV2
* @desc 0x04
*/
self.SPI_CLOCK_DIV2 = 0x04;
/**
* @constant IO#SPI_CLOCK_DIV8
* @desc 0x05
*/
self.SPI_CLOCK_DIV8 = 0x05;
/**
* @constant IO#SPI_CLOCK_DIV32
* @desc 0x06
*/
self.SPI_CLOCK_DIV32 = 0x06;
/**
* @constant IO#SPI_MODE0
* @desc 0x00
*/
self.SPI_MODE0 = 0x00;
/**
* @constant IO#SPI_MODE1
* @desc 0x04
*/
self.SPI_MODE1 = 0x04;
/**
* @constant IO#SPI_MODE2
* @desc 0x08
*/
self.SPI_MODE2 = 0x08;
/**
* @constant IO#SPI_MODE3
* @desc 0x0C
*/
self.SPI_MODE3 = 0x0C;
/**
* @function IO#getSpiV8
* @type function
* @param {Void}
* @returns {Object}
* @instance
*/
self.getSpiV8 = function() {
return self.submit.funcReq('getSpiV8', arguments);
};
/**
* @function IO#setSpiV8
* @type function
* @param {Object} SPI
* @return {Void}
* @instance
*/
self.setSpiV8 = function() {
return self.submit.funcReq('setSpiV8', arguments);
};
/****************************************
Wire_norm
****************************************/
/**
* @constructor
* @name IO#TwoWire
* @param {Callback_0} begin_cb
*/
TwoWire = function() {
return self.submit.classReq('TwoWire', arguments, this);
};
/**
* @function IO#TwoWire#begin
* @type function
* @param {Integer} [arg0]
* @returns {Void}
* @instance
*/
TwoWire.prototype.begin = function() {
return self.submit.classMethodReq('TwoWire', 'begin', arguments, this);
};
/**
* @function IO#TwoWire#beginTransmission
* @type function
* @param {Integer} arg0
* @returns {Void}
* @instance
*/
TwoWire.prototype.beginTransmission = function() {
return self.submit.classMethodReq('TwoWire', 'beginTransmission', arguments, this);
};
/**
* @function IO#TwoWire#endTransmission
* @type function
* @param {Integer} [arg0]
* @returns {Integer}
* @instance
*/
TwoWire.prototype.endTransmission = function() {
return self.submit.classMethodReq('TwoWire', 'endTransmission', arguments, this);
};
/**
* @function IO#TwoWire#requestFrom
* @type function
* @param {Integer} arg0
* @param {Integer} arg1
* @param {Integer} [arg2]
* @returns {Integer}
* @instance
*/
TwoWire.prototype.requestFrom = function() {
return self.submit.classMethodReq('TwoWire', 'requestFrom', arguments, this);
};
/**
* @function IO#TwoWire#write
* @type function
* @param {Integer|Array|String|Object} arg0
* @param {Integer} [arg1]
* @returns {Integer}
* @instance
*/
TwoWire.prototype.write = function() {
return self.submit.classMethodReq('TwoWire', 'write', arguments, this);
};
/**
* @function IO#TwoWire#available
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TwoWire.prototype.available = function() {
return self.submit.classMethodReq('TwoWire', 'available', arguments, this);
};
/**
* @function IO#TwoWire#read
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TwoWire.prototype.read = function() {
return self.submit.classMethodReq('TwoWire', 'read', arguments, this);
};
/**
* @function IO#TwoWire#peek
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
TwoWire.prototype.peek = function() {
return self.submit.classMethodReq('TwoWire', 'peek', arguments, this);
};
/**
* @function IO#TwoWire#flush
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
TwoWire.prototype.flush = function() {
return self.submit.classMethodReq('TwoWire', 'flush', arguments, this);
};
/**
* @function IO#TwoWire#onReceive
* @type function
* @param {Callback_1} arg0
* @returns {Void}
* @instance
*/
TwoWire.prototype.onReceive = function() {
return self.submit.classMethodReq('TwoWire', 'onReceive', arguments, this);
};
/**
* @function IO#TwoWire#onRequest
* @type function
* @param {Callback_2} arg0
* @returns {Void}
* @instance
*/
TwoWire.prototype.onRequest = function() {
return self.submit.classMethodReq('TwoWire', 'onRequest', arguments, this);
};
/**
* @function IO#TwoWire#onService
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
TwoWire.prototype.onService = function() {
return self.submit.classMethodReq('TwoWire', 'onService', arguments, this);
};
self.TwoWire = TwoWire;
/**
* @constant IO#BUFFER_LENGTH
* @desc 32
*/
self.BUFFER_LENGTH = 32;
/**
* @constant IO#I2C2
* @desc 0x4819c000
*/
self.I2C2 = 0x4819c000;
/**
* @constant IO#I2C1
* @desc 0x00000000
*/
self.I2C1 = 0x00000000;
/**
* @constant IO#WIRE_INTERFACES_COUNT
* @desc 1
*/
self.WIRE_INTERFACES_COUNT = 1;
/**
* @function IO#getWireV8
* @type function
* @param {Void}
* @returns {Object}
* @instance
*/
self.getWireV8 = function() {
return self.submit.funcReq('getWireV8', arguments);
};
/**
* @function IO#setWireV8
* @type function
* @param {Object} Wire
* @return {Void}
* @instance
*/
self.setWireV8 = function() {
return self.submit.funcReq('setWireV8', arguments);
};
/****************************************
RingBuffer
****************************************/
/**
* @constructor
* @name IO#RingBuffer
* @param {Void}
*/
RingBuffer = function() {
return self.submit.classReq('RingBuffer', arguments, this);
};
/**
* @function IO#RingBuffer#store_char
* @type function
* @param {Integer} c
* @returns {Void}
* @instance
*/
RingBuffer.prototype.store_char = function() {
return self.submit.classMethodReq('RingBuffer', 'store_char', arguments, this);
};
self.RingBuffer = RingBuffer;
/**
* @constant IO#SERIAL_BUFFER_SIZE
* @desc 256
*/
self.SERIAL_BUFFER_SIZE = 256;
/****************************************
Arduino
****************************************/
/**
* @constant IO#INPUT
* @desc 0x00
*/
self.INPUT = 0x00;
/**
* @constant IO#OUTPUT
* @desc 0x01
*/
self.OUTPUT = 0x01;
/**
* @constant IO#INPUT_PULLUP
* @desc 0x02
*/
self.INPUT_PULLUP = 0x02;
/**
* @constant IO#OUTPUT_FAST
* @desc 0x03
*/
self.OUTPUT_FAST = 0x03;
/**
* @constant IO#INPUT_FAST
* @desc 0x04
*/
self.INPUT_FAST = 0x04;
/**
* @constant IO#DEFAULT
* @desc 0
*/
self.DEFAULT = 0;
/**
* @constant IO#true
* @desc 0x1
*/
self.true = 0x1;
/**
* @constant IO#false
* @desc 0x0
*/
self.false = 0x0;
/**
* @constant IO#DEG_TO_RAD
* @desc 0.017453292519943295769236907684886
*/
self.DEG_TO_RAD = 0.017453292519943295769236907684886;
/**
* @constant IO#RAD_TO_DEG
* @desc 57.295779513082320876798154814105
*/
self.RAD_TO_DEG = 57.295779513082320876798154814105;
/**
* @constant IO#SERIAL
* @desc 0x0
*/
self.SERIAL = 0x0;
/**
* @constant IO#DISPLAY
* @desc 0x1
*/
self.DISPLAY = 0x1;
/**
* @constant IO#LSBFIRST
* @desc 0
*/
self.LSBFIRST = 0;
/**
* @constant IO#MSBFIRST
* @desc 1
*/
self.MSBFIRST = 1;
/**
* @constant IO#PA
* @desc 1
*/
self.PA = 1;
/**
* @constant IO#PB
* @desc 2
*/
self.PB = 2;
/**
* @constant IO#PC
* @desc 3
*/
self.PC = 3;
/**
* @constant IO#PD
* @desc 4
*/
self.PD = 4;
/**
* @constant IO#PE
* @desc 5
*/
self.PE = 5;
/**
* @constant IO#PF
* @desc 6
*/
self.PF = 6;
/**
* @constant IO#PG
* @desc 7
*/
self.PG = 7;
/**
* @constant IO#PH
* @desc 8
*/
self.PH = 8;
/**
* @constant IO#PJ
* @desc 10
*/
self.PJ = 10;
/**
* @constant IO#PK
* @desc 11
*/
self.PK = 11;
/**
* @constant IO#PL
* @desc 12
*/
self.PL = 12;
/****************************************
OSAbstract_norm
****************************************/
/**
* @function IO#initWithTty
* @type function
* @param {Array|String|Object} tty0
* @param {Array|String|Object} tty1
* @param {Array|String|Object} tty2
* @returns {Void}
* @instance
*/
self.initWithTty = function() {
return self.submit.funcReq('initWithTty', arguments);
};
/****************************************
UtilTime
****************************************/
/**
* @function IO#millis
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.millis = function() {
return self.submit.funcReq('millis', arguments);
};
/**
* @function IO#micros
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.micros = function() {
return self.submit.funcReq('micros', arguments);
};
/**
* @function IO#delay
* @type function
* @param {Integer} arg0
* @returns {Void}
* @instance
*/
self.delay = function() {
return self.submit.funcReq('delay', arguments);
};
/**
* @function IO#delayMicroseconds
* @type function
* @param {Integer} us
* @returns {Void}
* @instance
*/
self.delayMicroseconds = function() {
return self.submit.funcReq('delayMicroseconds', arguments);
};
/****************************************
wiring_digital_norm
****************************************/
/**
* @constant IO#HIGH
* @desc 0x1
*/
self.HIGH = 0x1;
/**
* @constant IO#LOW
* @desc 0x0
*/
self.LOW = 0x0;
/**
* @constant IO#NONE
* @desc 0xFFFFFFFF
*/
self.NONE = 0xFFFFFFFF;
/**
* @constant IO#FN_GPIO_FIXED_OUTPUT
* @desc 0x02
*/
self.FN_GPIO_FIXED_OUTPUT = 0x02;
/**
* @constant IO#FN_GPIO_OPENDRAIN
* @desc 0x04
*/
self.FN_GPIO_OPENDRAIN = 0x04;
/**
* @constant IO#FN_PWM
* @desc 0x08
*/
self.FN_PWM = 0x08;
/**
* @constant IO#FN_I2C
* @desc 0x10
*/
self.FN_I2C = 0x10;
/**
* @constant IO#FN_ANALOG
* @desc 0x20
*/
self.FN_ANALOG = 0x20;
/**
* @constant IO#FN_UART
* @desc 0x40
*/
self.FN_UART = 0x40;
/**
* @constant IO#FN_SPI
* @desc 0x80
*/
self.FN_SPI = 0x80;
/**
* @constant IO#FN_PULLUP
* @desc 0x100
*/
self.FN_PULLUP = 0x100;
/**
* @constant IO#FN_MUX
* @desc 0x200
*/
self.FN_MUX = 0x200;
/**
* @constant IO#FN_RESERVED
* @desc 0x400
*/
self.FN_RESERVED = 0x400;
/**
* @constant IO#GPIO_DRIVE_PULLUP
* @desc 0
*/
self.GPIO_DRIVE_PULLUP = 0;
/**
* @constant IO#GPIO_DRIVE_STRONG
* @desc 1
*/
self.GPIO_DRIVE_STRONG = 1;
/**
* @constant IO#GPIO_DRIVE_HIZ
* @desc 2
*/
self.GPIO_DRIVE_HIZ = 2;
/**
* @constant IO#PIN_EINVAL
* @desc 0xFFFFFFFF
*/
self.PIN_EINVAL = 0xFFFFFFFF;
/**
* @constant IO#MAX_GPIO_PATH
* @desc 0x200
*/
self.MAX_GPIO_PATH = 0x200;
/**
* @function IO#pinInit
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
self.pinInit = function() {
return self.submit.funcReq('pinInit', arguments);
};
/**
* @function IO#pinMode
* @type function
* @param {Integer} pin
* @param {Integer} mode
* @returns {Void}
* @instance
*/
self.pinMode = function() {
return self.submit.funcReq('pinMode', arguments);
};
/**
* @function IO#pinModeIRQ
* @type function
* @param {Integer} pin
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.pinModeIRQ = function() {
return self.submit.funcReq('pinModeIRQ', arguments);
};
/**
* @function IO#digitalWrite
* @type function
* @param {Integer} pin
* @param {Integer} val
* @returns {Void}
* @instance
*/
self.digitalWrite = function() {
return self.submit.funcReq('digitalWrite', arguments);
};
/**
* @function IO#digitalRead
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.digitalRead = function() {
return self.submit.funcReq('digitalRead', arguments);
};
/**
* @function IO#pinHandleReopen
* @type function
* @param {Integer} index
* @returns {Integer}
* @instance
*/
self.pinHandleReopen = function() {
return self.submit.funcReq('pinHandleReopen', arguments);
};
/**
* @function IO#pinGetIndex
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.pinGetIndex = function() {
return self.submit.funcReq('pinGetIndex', arguments);
};
/**
* @function IO#pin2path
* @type function
* @param {Integer} pin
* @returns {String}
* @instance
*/
self.pin2path = function() {
return self.submit.funcReq('pin2path', arguments);
};
/**
* @function IO#gpio2gpiohandle
* @type function
* @param {Integer} gpio
* @returns {Integer}
* @instance
*/
self.gpio2gpiohandle = function() {
return self.submit.funcReq('gpio2gpiohandle', arguments);
};
/**
* @function IO#pin2gpiohandle
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.pin2gpiohandle = function() {
return self.submit.funcReq('pin2gpiohandle', arguments);
};
/****************************************
interrupt
****************************************/
/**
* @constant IO#LOW
* @desc 0x0
*/
self.LOW = 0x0;
/**
* @constant IO#HIGH
* @desc 0x1
*/
self.HIGH = 0x1;
/**
* @constant IO#RISING
* @desc 0x02
*/
self.RISING = 0x02;
/**
* @constant IO#FALLING
* @desc 0x04
*/
self.FALLING = 0x04;
/**
* @constant IO#CHANGE
* @desc 0x08
*/
self.CHANGE = 0x08;
/**
* @function IO#interrupt_init
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.interrupt_init = function() {
return self.submit.funcReq('interrupt_init', arguments);
};
/**
* @function IO#interrupt_fini
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
self.interrupt_fini = function() {
return self.submit.funcReq('interrupt_fini', arguments);
};
/**
* @function IO#attachInterrupt
* @type function
* @param {Integer} pin
* @param {Callback_3} callback
* @param {Integer} mode
* @returns {Void}
* @instance
*/
self.attachInterrupt = function() {
return self.submit.funcReq('attachInterrupt', arguments);
};
/**
* @function IO#detachInterrupt
* @type function
* @param {Integer} pin
* @returns {Void}
* @instance
*/
self.detachInterrupt = function() {
return self.submit.funcReq('detachInterrupt', arguments);
};
/**
* @function IO#attachTimerInterrupt
* @type function
* @param {Callback_4} callback
* @param {Integer} microseconds
* @returns {Void}
* @instance
*/
self.attachTimerInterrupt = function() {
return self.submit.funcReq('attachTimerInterrupt', arguments);
};
/**
* @function IO#setMinimumTimerFreq
* @type function
* @param {Integer} microseconds
* @returns {Integer}
* @instance
*/
self.setMinimumTimerFreq = function() {
return self.submit.funcReq('setMinimumTimerFreq', arguments);
};
/****************************************
version
****************************************/
/**
* @function IO#version
* @type function
* @param {Void}
* @returns {String}
* @instance
*/
self.version = function() {
return self.submit.funcReq('version', arguments);
};
/****************************************
variant_norm
****************************************/
/**
* @constant IO#LINUX_BOOTLOADER_TTY
* @desc "/dev/ttyGS0"
*/
self.LINUX_BOOTLOADER_TTY = "/dev/ttyGS0";
/**
* @constant IO#LINUX_SPIDEV
* @desc "/dev/spidev1.0"
*/
self.LINUX_SPIDEV = "/dev/spidev1.0";
/**
* @constant IO#LINUX_EEPROM
* @desc "/sys/bus/i2c/devices/0-0050/eeprom"
*/
self.LINUX_EEPROM = "/sys/bus/i2c/devices/0-0050/eeprom";
/**
* @constant IO#LINUX_ADC_FMT
* @desc "/sys/bus/iio/devices/iio:device0/in_voltage%d_raw"
*/
self.LINUX_ADC_FMT = "/sys/bus/iio/devices/iio:device0/in_voltage%d_raw";
/**
* @constant IO#PLATFORM_ID
* @desc 0x06
*/
self.PLATFORM_ID = 0x06;
/**
* @constant IO#ADC_RESOLUTION
* @desc 12
*/
self.ADC_RESOLUTION = 12;
/**
* @constant IO#MAX_VARIANT_HPET_FREQ_HZ
* @desc 1000
*/
self.MAX_VARIANT_HPET_FREQ_HZ = 1000;
/**
* @constant IO#MUX_SEL_NONE
* @desc -1
*/
self.MUX_SEL_NONE = -1;
/**
* @constant IO#MUX_SEL_UART0_RXD
* @desc 0
*/
self.MUX_SEL_UART0_RXD = 0;
/**
* @constant IO#MUX_SEL_UART0_TXD
* @desc 1
*/
self.MUX_SEL_UART0_TXD = 1;
/**
* @constant IO#MUX_SEL_SPI1_SS_B
* @desc 10
*/
self.MUX_SEL_SPI1_SS_B = 10;
/**
* @constant IO#MUX_SEL_SPI1_MOSI
* @desc 11
*/
self.MUX_SEL_SPI1_MOSI = 11;
/**
* @constant IO#MUX_SEL_SPI1_MISO
* @desc 12
*/
self.MUX_SEL_SPI1_MISO = 12;
/**
* @constant IO#MUX_SEL_SPI1_SCK
* @desc 13
*/
self.MUX_SEL_SPI1_SCK = 13;
/**
* @constant IO#MUX_SEL_AD7298_VIN0
* @desc 14
*/
self.MUX_SEL_AD7298_VIN0 = 14;
/**
* @constant IO#MUX_SEL_AD7298_VIN1
* @desc 15
*/
self.MUX_SEL_AD7298_VIN1 = 15;
/**
* @constant IO#MUX_SEL_AD7298_VIN2
* @desc 16
*/
self.MUX_SEL_AD7298_VIN2 = 16;
/**
* @constant IO#MUX_SEL_AD7298_VIN3
* @desc 17
*/
self.MUX_SEL_AD7298_VIN3 = 17;
/**
* @constant IO#MUX_SEL_AD7298_VIN4
* @desc 18
*/
self.MUX_SEL_AD7298_VIN4 = 18;
/**
* @constant IO#MUX_SEL_AD7298_VIN5
* @desc 19
*/
self.MUX_SEL_AD7298_VIN5 = 19;
/**
* @constant IO#MUX_SEL_I2C
* @desc 18
*/
self.MUX_SEL_I2C = 18;
/**
* @constant IO#MUX_DEPTH_DIGITAL
* @desc 0x02
*/
self.MUX_DEPTH_DIGITAL = 0x02;
/**
* @constant IO#MUX_DEPTH_ANALOG
* @desc 0x01
*/
self.MUX_DEPTH_ANALOG = 0x01;
/**
* @constant IO#MUX_DEPTH_UART
* @desc 0x02
*/
self.MUX_DEPTH_UART = 0x02;
/**
* @constant IO#MUX_DEPTH_SPI
* @desc 0x03
*/
self.MUX_DEPTH_SPI = 0x03;
/**
* @constant IO#MUX_DEPTH_I2C
* @desc 0x01
*/
self.MUX_DEPTH_I2C = 0x01;
/**
* @constant IO#GPIO_TOTAL
* @desc 56
*/
self.GPIO_TOTAL = 56;
/**
* @constant IO#GPIO_FAST_IO2
* @desc 0x40
*/
self.GPIO_FAST_IO2 = 0x40;
/**
* @constant IO#GPIO_FAST_IO3
* @desc 0x80
*/
self.GPIO_FAST_IO3 = 0x80;
/**
* @function IO#getSerialV8
* @type function
* @param {Void}
* @returns {Object}
* @instance
*/
self.getSerialV8 = function() {
return self.submit.funcReq('getSerialV8', arguments);
};
/**
* @function IO#setSerialV8
* @type function
* @param {Object} Serial
* @return {Void}
* @instance
*/
self.setSerialV8 = function() {
return self.submit.funcReq('setSerialV8', arguments);
};
/**
* @function IO#getSerial1V8
* @type function
* @param {Void}
* @returns {Object}
* @instance
*/
self.getSerial1V8 = function() {
return self.submit.funcReq('getSerial1V8', arguments);
};
/**
* @function IO#setSerial1V8
* @type function
* @param {Object} Serial1
* @return {Void}
* @instance
*/
self.setSerial1V8 = function() {
return self.submit.funcReq('setSerial1V8', arguments);
};
/**
* @function IO#getSerial2V8
* @type function
* @param {Void}
* @returns {Object}
* @instance
*/
self.getSerial2V8 = function() {
return self.submit.funcReq('getSerial2V8', arguments);
};
/**
* @function IO#setSerial2V8
* @type function
* @param {Object} Serial2
* @return {Void}
* @instance
*/
self.setSerial2V8 = function() {
return self.submit.funcReq('setSerial2V8', arguments);
};
/**
* @function IO#muxSelectDigitalPin
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.muxSelectDigitalPin = function() {
return self.submit.funcReq('muxSelectDigitalPin', arguments);
};
/**
* @function IO#muxSelectAnalogPin
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.muxSelectAnalogPin = function() {
return self.submit.funcReq('muxSelectAnalogPin', arguments);
};
/**
* @function IO#muxSelectUart
* @type function
* @param {Integer} interface
* @returns {Integer}
* @instance
*/
self.muxSelectUart = function() {
return self.submit.funcReq('muxSelectUart', arguments);
};
/**
* @function IO#muxSelectSpi
* @type function
* @param {Integer} interface
* @returns {Integer}
* @instance
*/
self.muxSelectSpi = function() {
return self.submit.funcReq('muxSelectSpi', arguments);
};
/**
* @function IO#muxSelectI2c
* @type function
* @param {Integer} interface
* @returns {Integer}
* @instance
*/
self.muxSelectI2c = function() {
return self.submit.funcReq('muxSelectI2c', arguments);
};
/**
* @function IO#variantPinMode
* @type function
* @param {Integer} pin
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.variantPinMode = function() {
return self.submit.funcReq('variantPinMode', arguments);
};
/**
* @function IO#variantPinModeIRQ
* @type function
* @param {Integer} pin
* @param {Integer} mode
* @returns {Integer}
* @instance
*/
self.variantPinModeIRQ = function() {
return self.submit.funcReq('variantPinModeIRQ', arguments);
};
/**
* @function IO#turnOffPWM
* @type function
* @param {Integer} pin
* @returns {Void}
* @instance
*/
self.turnOffPWM = function() {
return self.submit.funcReq('turnOffPWM', arguments);
};
/**
* @function IO#turnOnPWM
* @type function
* @param {Integer} pin
* @returns {Void}
* @instance
*/
self.turnOnPWM = function() {
return self.submit.funcReq('turnOnPWM', arguments);
};
/**
* @function IO#variantEnableFastGpio
* @type function
* @param {Integer} pin
* @returns {Void}
* @instance
*/
self.variantEnableFastGpio = function() {
return self.submit.funcReq('variantEnableFastGpio', arguments);
};
/**
* @function IO#variantEnablePullup
* @type function
* @param {Integer} pin
* @param {Integer} enable
* @returns {Void}
* @instance
*/
self.variantEnablePullup = function() {
return self.submit.funcReq('variantEnablePullup', arguments);
};
/****************************************
Servo
****************************************/
/**
* @constructor
* @name IO#Servo
* @param {Void}
*/
Servo = function() {
return self.submit.classReq('Servo', arguments, this);
};
/**
* @function IO#Servo#attach
* @type function
* @param {Integer} arg0
* @param {Integer} [arg1]
* @param {Integer} [arg2]
* @returns {Integer}
* @instance
*/
Servo.prototype.attach = function() {
return self.submit.classMethodReq('Servo', 'attach', arguments, this);
};
/**
* @function IO#Servo#detach
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
Servo.prototype.detach = function() {
return self.submit.classMethodReq('Servo', 'detach', arguments, this);
};
/**
* @function IO#Servo#write
* @type function
* @param {Integer} val
* @returns {Void}
* @instance
*/
Servo.prototype.write = function() {
return self.submit.classMethodReq('Servo', 'write', arguments, this);
};
/**
* @function IO#Servo#writeMicroseconds
* @type function
* @param {Integer} value
* @returns {Void}
* @instance
*/
Servo.prototype.writeMicroseconds = function() {
return self.submit.classMethodReq('Servo', 'writeMicroseconds', arguments, this);
};
/**
* @function IO#Servo#read
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
Servo.prototype.read = function() {
return self.submit.classMethodReq('Servo', 'read', arguments, this);
};
/**
* @function IO#Servo#readMicroseconds
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
Servo.prototype.readMicroseconds = function() {
return self.submit.classMethodReq('Servo', 'readMicroseconds', arguments, this);
};
/**
* @function IO#Servo#attached
* @type function
* @param {Void}
* @returns {Boolean}
* @instance
*/
Servo.prototype.attached = function() {
return self.submit.classMethodReq('Servo', 'attached', arguments, this);
};
/**
* @function IO#Servo#set48hz
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
Servo.prototype.set48hz = function() {
return self.submit.classMethodReq('Servo', 'set48hz', arguments, this);
};
/**
* @function IO#Servo#set188hz
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
Servo.prototype.set188hz = function() {
return self.submit.classMethodReq('Servo', 'set188hz', arguments, this);
};
self.Servo = Servo;
/**
* @constant IO#MIN_ANGLE
* @desc 0
*/
self.MIN_ANGLE = 0;
/**
* @constant IO#MAX_ANGLE
* @desc 180
*/
self.MAX_ANGLE = 180;
/**
* @constant IO#MIN_PULSE_WIDTH
* @desc 544
*/
self.MIN_PULSE_WIDTH = 544;
/**
* @constant IO#MAX_PULSE_WIDTH
* @desc 2000
*/
self.MAX_PULSE_WIDTH = 2000;
/**
* @constant IO#DEFAULT_PULSE_WIDTH
* @desc 1500
*/
self.DEFAULT_PULSE_WIDTH = 1500;
/**
* @constant IO#INVALID_SERVO
* @desc 255
*/
self.INVALID_SERVO = 255;
/**
* @constant IO#GPORT0_BIT4_PWM7
* @desc 0x10
*/
self.GPORT0_BIT4_PWM7 = 0x10;
/**
* @constant IO#GPORT0_BIT1_PWM5
* @desc 0x02
*/
self.GPORT0_BIT1_PWM5 = 0x02;
/**
* @constant IO#GPORT1_BIT0_PWM6
* @desc 0xff
*/
self.GPORT1_BIT0_PWM6 = 0xff;
/**
* @constant IO#GPORT0_BIT3_PWM1
* @desc 0x08
*/
self.GPORT0_BIT3_PWM1 = 0x08;
/**
* @constant IO#GPORT0_BIT0_PWM7
* @desc 0x01
*/
self.GPORT0_BIT0_PWM7 = 0x01;
/**
* @constant IO#GPORT1_BIT1_PWM4
* @desc 0xff
*/
self.GPORT1_BIT1_PWM4 = 0xff;
/**
* @constant IO#CYPRESS_I2C_ADDRESS
* @desc 0x20
*/
self.CYPRESS_I2C_ADDRESS = 0x20;
/**
* @constant IO#MAX_NUMBER_OF_SERVOS
* @desc 6
*/
self.MAX_NUMBER_OF_SERVOS = 6;
/**
* @constant IO#MY_TRACE_PREFIX
* @desc "ServoX86Lib"
*/
self.MY_TRACE_PREFIX = "ServoX86Lib";
/****************************************
i2c
****************************************/
/**
* @function IO#i2c_getadapter
* @type function
* @param {Integer} i2c_bus_address
* @returns {Integer}
* @instance
*/
self.i2c_getadapter = function() {
return self.submit.funcReq('i2c_getadapter', arguments);
};
/**
* @function IO#i2c_openadapter
* @type function
* @param {Integer} i2c_adapter_nr
* @returns {Integer}
* @instance
*/
self.i2c_openadapter = function() {
return self.submit.funcReq('i2c_openadapter', arguments);
};
/**
* @function IO#i2c_setslave
* @type function
* @param {Integer} i2c_fd
* @param {Integer} addr
* @returns {Integer}
* @instance
*/
self.i2c_setslave = function() {
return self.submit.funcReq('i2c_setslave', arguments);
};
/**
* @function IO#i2c_writebyte
* @type function
* @param {Integer} i2c_fd
* @param {Integer} byte
* @returns {Integer}
* @instance
*/
self.i2c_writebyte = function() {
return self.submit.funcReq('i2c_writebyte', arguments);
};
/**
* @function IO#i2c_writebytes
* @type function
* @param {Integer} i2c_fd
* @param {Array|String|Object} bytes
* @param {Integer} length
* @returns {Integer}
* @instance
*/
self.i2c_writebytes = function() {
return self.submit.funcReq('i2c_writebytes', arguments);
};
/**
* @function IO#i2c_readbyte
* @type function
* @param {Integer} i2c_fd
* @returns {Integer}
* @instance
*/
self.i2c_readbyte = function() {
return self.submit.funcReq('i2c_readbyte', arguments);
};
/**
* @function IO#i2c_readbytes
* @type function
* @param {Integer} i2c_fd
* @param {Array|String|Object} buf
* @param {Integer} length
* @returns {Integer}
* @instance
*/
self.i2c_readbytes = function() {
return self.submit.funcReq('i2c_readbytes', arguments);
};
/**
* @function IO#i2c_readwrite
* @type function
* @param {Integer} i2c_fd
* @returns {Integer}
* @instance
*/
self.i2c_readwrite = function() {
return self.submit.funcReq('i2c_readwrite', arguments);
};
/**
* @function IO#i2c_add_to_buf
* @type function
* @param {Integer} addr
* @param {Integer} rw
* @param {Array|String|Object} value
* @param {Integer} length
* @returns {Integer}
* @instance
*/
self.i2c_add_to_buf = function() {
return self.submit.funcReq('i2c_add_to_buf', arguments);
};
/****************************************
AnalogIO
****************************************/
/**
* @function IO#pwmInit
* @type function
* @param {Void}
* @returns {Void}
* @instance
*/
self.pwmInit = function() {
return self.submit.funcReq('pwmInit', arguments);
};
/**
* @function IO#analogRead
* @type function
* @param {Integer} arg0
* @returns {Integer}
* @instance
*/
self.analogRead = function() {
return self.submit.funcReq('analogRead', arguments);
};
/**
* @function IO#analogReadResolution
* @type function
* @param {Integer} res
* @returns {Void}
* @instance
*/
self.analogReadResolution = function() {
return self.submit.funcReq('analogReadResolution', arguments);
};
/**
* @function IO#analogReference
* @type function
* @param {Integer} mode
* @returns {Void}
* @instance
*/
self.analogReference = function() {
return self.submit.funcReq('analogReference', arguments);
};
/**
* @function IO#analogWrite
* @type function
* @param {Integer} arg0
* @param {Integer} arg1
* @returns {Void}
* @instance
*/
self.analogWrite = function() {
return self.submit.funcReq('analogWrite', arguments);
};
/**
* @function IO#pin2pwmhandle_enable
* @type function
* @param {Integer} pin
* @returns {Integer}
* @instance
*/
self.pin2pwmhandle_enable = function() {
return self.submit.funcReq('pin2pwmhandle_enable', arguments);
};
/****************************************
pins_arduino
****************************************/
/**
* @constant IO#NUM_DIGITAL_PINS
* @desc 20
*/
self.NUM_DIGITAL_PINS = 20;
/**
* @constant IO#NUM_ANALOG_INPUTS
* @desc 6
*/
self.NUM_ANALOG_INPUTS = 6;
/**
* @constant IO#NUM_UARTS
* @desc 0x03
*/
self.NUM_UARTS = 0x03;
/**
* @constant IO#NUM_SPI
* @desc 0x02
*/
self.NUM_SPI = 0x02;
/**
* @constant IO#NUM_I2C
* @desc 0x01
*/
self.NUM_I2C = 0x01;
/**
* @function IO#getSsV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getSsV8 = function() {
return self.submit.funcReq('getSsV8', arguments);
};
/**
* @function IO#getMosiV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getMosiV8 = function() {
return self.submit.funcReq('getMosiV8', arguments);
};
/**
* @function IO#getMisoV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getMisoV8 = function() {
return self.submit.funcReq('getMisoV8', arguments);
};
/**
* @function IO#getSckV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getSckV8 = function() {
return self.submit.funcReq('getSckV8', arguments);
};
/**
* @function IO#getSdaV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getSdaV8 = function() {
return self.submit.funcReq('getSdaV8', arguments);
};
/**
* @function IO#getSclV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getSclV8 = function() {
return self.submit.funcReq('getSclV8', arguments);
};
/**
* @function IO#getLed_builtinV8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getLed_builtinV8 = function() {
return self.submit.funcReq('getLed_builtinV8', arguments);
};
/**
* @function IO#getA0V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA0V8 = function() {
return self.submit.funcReq('getA0V8', arguments);
};
/**
* @function IO#getA1V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA1V8 = function() {
return self.submit.funcReq('getA1V8', arguments);
};
/**
* @function IO#getA2V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA2V8 = function() {
return self.submit.funcReq('getA2V8', arguments);
};
/**
* @function IO#getA3V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA3V8 = function() {
return self.submit.funcReq('getA3V8', arguments);
};
/**
* @function IO#getA4V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA4V8 = function() {
return self.submit.funcReq('getA4V8', arguments);
};
/**
* @function IO#getA5V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA5V8 = function() {
return self.submit.funcReq('getA5V8', arguments);
};
/**
* @function IO#getA6V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA6V8 = function() {
return self.submit.funcReq('getA6V8', arguments);
};
/**
* @function IO#getA7V8
* @type function
* @param {Void}
* @returns {Integer}
* @instance
*/
self.getA7V8 = function() {
return self.submit.funcReq('getA7V8', arguments);
};
/**
* @callback Callback_4
* @param {Void}
* @returns {Void}
*/
/**
* @callback Callback_2
* @param {Void}
* @returns {Void}
*/
/**
* @callback Callback_3
* @param {Void}
* @returns {Void}
*/
/**
* @callback Callback_0
* @param {Void}
* @returns {Void}
*/
/**
* @callback Callback_1
* @param {Integer}
* @returns {Void}
*/
}; //end of Board class declare
exports.Board = Board;
})(typeof exports === 'object'? exports: this.IOLIB, this.IOLIB);