summaryrefslogtreecommitdiff
path: root/src/c/hardware/rasberrypi/interfaces
diff options
context:
space:
mode:
Diffstat (limited to 'src/c/hardware/rasberrypi/interfaces')
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h37
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h38
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h48
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralInterrupt.h30
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h70
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h62
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h42
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h35
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h41
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h33
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h39
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h33
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h51
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h41
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h36
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h45
-rw-r--r--src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h36
17 files changed, 717 insertions, 0 deletions
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h
new file mode 100644
index 00000000..6b7ed271
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralDigital.h
@@ -0,0 +1,37 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani, Jorawar Singh
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALGPIO_H__
+#define __INT_RPIPERIPHERALGPIO_H__
+
+#include "types.h"
+#include "RPIPeripheralDigital.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80RPI_digitalReadu80(pin) u8RPI_digitalReads(pin);
+#define d0RPI_digitalReadd0(pin) u8RPI_digitalReads(pin);
+
+#define RPI_digitalReadByteu80() RPI_digitalReadByte();
+#define u80u80RPI_digitalWrite(pin,state) u8RPI_digitalWrites(pin,state);
+#define d0d0RPI_digitalWrite(pin,state) u8RPI_digitalWrites(pin,state);
+
+#define u80RPI_digitalWriteByte(value) u8RPI_digitalWriteBytes(value);
+#define d0RPI_digitalWriteByte(value) u8RPI_digitalWriteBytes(value);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALGPIO_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h
new file mode 100644
index 00000000..e258068c
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralGertboard.h
@@ -0,0 +1,38 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Siddhesh Wani, Jorawar Singh
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALGERTBOARD_H__
+#define __INT_RPIPERIPHERALGERTBOARD_H__
+
+#include "types.h"
+#include "RPIPeripheralGertboard.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define RPI_gertboardSPISetupi80() RPI_gertboardSPISetup();
+
+#define u160RPI_gertboardAnalogSetupi80(pinBase) u16RPI_gertboardAnalogSetups(pinBase);
+#define d0RPI_gertboardAnalogSetupi80(pinBase) u16RPI_gertboardAnalogSetups(pinBase);
+
+#define u160RPI_gertboardAnalogReadu160(pin) u160RPI_gertboardAnalogReads(pin);
+#define d0RPI_gertboardAnalogReadu160(pin) u160RPI_gertboardAnalogReads(pin);
+
+#define u160u160RPI_gertboardAnalogWrite(pin,value) u160RPI_gertboardAnalogWrites(pin,value);
+#define d0d0RPI_gertboardAnalogWrite(pin,value) u160RPI_gertboardAnalogWrites(pin,value);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALGERTBOARD_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h
new file mode 100644
index 00000000..b93529e3
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralI2C.h
@@ -0,0 +1,48 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALI2C_H__
+#define __INT_RPIPERIPHERALI2C_H__
+
+#include "types.h"
+#include "RPIPeripheralI2C.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u160RPI_I2CSetupi80(arrd) u16RPI_I2CSetups(arrd);
+#define d0RPI_I2CSetupi80(arrd) u16RPI_I2CSetups(arrd);
+
+#define u160RPI_I2CReadi80(fd) u16RPI_I2CReads(fd);
+#define d0RPI_I2CReadi80(fd) u16RPI_I2CReads(fd);
+
+#define u160u160RPI_I2CReadReg8i80(fd,reg) u16RPI_I2CReadReg8s(fd,reg);
+#define d0d0RPI_I2CReadReg8i80(fd,reg) u16RPI_I2CReadReg8s(fd,reg);
+
+#define u160u160RPI_I2CReadReg16i80(fd,reg) u16RPI_I2CReadReg16s(fd,reg);
+#define d0d0RPI_I2CReadReg16i80(fd,reg) u16RPI_I2CReadReg16s(fd,reg);
+
+#define u160u160RPI_I2CWritei80(fd,data) u16RPI_I2CWrites(fd,data);
+#define d0d0RPI_I2CWritei80(fd,data) u16RPI_I2CWrites(fd,data);
+
+#define u160u160u160RPI_I2CWriteReg8i80(fd,reg,data) u16RPI_I2CWriteReg8s(fd,reg,data);
+#define d0d0d0RPI_I2CWriteReg8i80(fd,reg,data) u16RPI_I2CWriteReg8s(fd,reg,data);
+
+#define u160u160u160RPI_I2CWriteReg16i80(fd,reg,data) u16RPI_I2CWriteReg16s(fd,reg,data);
+#define d0d0d0RPI_I2CWriteReg16i80(fd,reg,data) u16RPI_I2CWriteReg16s(fd,reg,data);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALI2C_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralInterrupt.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralInterrupt.h
new file mode 100644
index 00000000..572d028d
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralInterrupt.h
@@ -0,0 +1,30 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALINTERRUPT_H__
+#define __INT_RPIPERIPHERALINTERRUPT_H__
+
+#include "types.h"
+#include "RPIPeripheralInterrupt.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80i160RPI_waitForInterrupti80(pin,time) u8RPI_waitForInterrupts(pin,time);
+#define d0d0RPI_waitForInterrupti80(pin,time) u8RPI_waitForInterrupts(pin,time);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALINTERRUPT_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h
new file mode 100644
index 00000000..803f93e3
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD.h
@@ -0,0 +1,70 @@
+/* Copyright (C) 2017 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALLCD_H__
+#define __INT_RPIPERIPHERALLCD_H__
+
+#include "types.h"
+#include "RPIPeripheralLCD.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80u80u80u80u80u80u80u80u80u80RPI_lcdCharDef(fd,index,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdCharDefs(fd,index,d0,d1,d2,d3,d4,d5,d6,d7);
+#define u80d0d0d0d0d0d0d0d0d0RPI_lcdCharDef(fd,index,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdCharDefs(fd,index,d0,d1,d2,d3,d4,d5,d6,d7);
+#define d0d0d0d0d0d0d0d0d0d0RPI_lcdCharDef(fd,index,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdCharDefs(fd,index,d0,d1,d2,d3,d4,d5,d6,d7);
+
+#define u80RPI_lcdClear(fd) u8RPI_lcdClears(fd);
+#define d0RPI_lcdClear(fd) u8RPI_lcdClears(fd);
+
+#define u80u80RPI_lcdCursorBlink(fd,state) u8RPI_lcdCursorBlinks(fd,state);
+#define u80d0RPI_lcdCursorBlink(fd,state) u8RPI_lcdCursorBlinks(fd,state);
+#define d0d0RPI_lcdCursorBlink(fd,state) u8RPI_lcdCursorBlinks(fd,state);
+
+#define u80u80RPI_lcdCursor(fd,state) u8RPI_lcdCursors(fd,state);
+#define u80d0RPI_lcdCursor(fd,state) u8RPI_lcdCursors(fd,state);
+#define d0d0RPI_lcdCursor(fd,state) u8RPI_lcdCursors(fd,state);
+
+#define u80u80RPI_lcdDisplay(fd,state) u8RPI_lcdDisplays(fd,state);
+#define u80d0RPI_lcdDisplay(fd,state) u8RPI_lcdDisplays(fd,state);
+#define d0d0RPI_lcdDisplay(fd,state) u8RPI_lcdDisplays(fd,state);
+
+#define u80RPI_lcdHome(fd) u8RPI_lcdHomes(fd);
+#define d0RPI_lcdHome(fd) u8RPI_lcdHomes(fd);
+
+#define u80u80u80u80u80u80u80u80u80u80u80u80u80RPI_lcdIniti80(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdInits(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7);
+#define d0d0d0d0d0d0d0d0d0d0d0d0d0RPI_lcdIniti80(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7) u8RPI_lcdInits(rows,cols,bits,rs,strb,d0,d1,d2,d3,d4,d5,d6,d7);
+
+#define u80u80u80RPI_lcdPosition(fd,row,col) u8RPI_lcdPositions(fd,row,col);
+#define u80d0d0RPI_lcdPosition(fd,row,col) u8RPI_lcdPositions(fd,row,col);
+#define d0d0d0RPI_lcdPosition(fd,row,col) u8RPI_lcdPositions(fd,row,col);
+
+#define u80u80RPI_lcdPutchar(fd,char) u8RPI_lcdPutchars(fd,char);
+#define u80d0RPI_lcdPutchar(fd,char) u8RPI_lcdPutchars(fd,char);
+#define d0d0RPI_lcdPutchar(fd,char) u8RPI_lcdPutchars(fd,char);
+
+#define u80u80RPI_lcdSendCommand(fd,cmd) u8RPI_lcdSendCommands(fd,cmd);
+#define u80d0RPI_lcdSendCommand(fd,cmd) u8RPI_lcdSendCommands(fd,cmd);
+#define d0d0RPI_lcdSendCommand(fd,cmd) u8RPI_lcdSendCommands(fd,cmd);
+
+#define u80g2RPI_lcdPuts(fd,msg,size) u8RPI_lcdPutss(fd,msg,size[1]);;
+#define d0g2RPI_lcdPuts(fd,msg,size) u8RPI_lcdPutss(fd,msg,size[1]);;
+
+#define u80g2RPI_lcdPrintf(fd,data,size) u8RPI_lcdPrintfs(fd,data,size[1]);
+#define d0g2RPI_lcdPrintf(fd,data,size) u8RPI_lcdPrintfs(fd,data,size[1]);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALLCD_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h
new file mode 100644
index 00000000..8bb4b17e
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralLCD128x64.h
@@ -0,0 +1,62 @@
+/* Copyright (C) 2017 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALLCD128x64_H__
+#define __INT_RPIPERIPHERALLCD128x64_H__
+
+#include "types.h"
+#include "RPIPeripheralLCD128x64.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define RPI_lcd128x64setupi80() RPI_lcd128x64setup();
+
+#define u80RPI_lcd128x64clear(colour) u8RPI_lcd128x64clears(colour);
+#define d0RPI_lcd128x64clear(colour) u8RPI_lcd128x64clears(colour);
+
+#define u80RPI_lcd128x64Orientation(orientation) u8RPI_lcd128x64Orientations(orientation);
+#define d0RPI_lcd128x64Orientation(orientation) u8RPI_lcd128x64Orientations(orientation);
+
+#define u80u80RPI_lcd128x64setOrigin(x,y) u8RPI_lcd128x64setOrigins(x,y);
+#define d0d0RPI_lcd128x64setOrigin(x,y) u8RPI_lcd128x64setOrigins(x,y);
+
+#define u80u80u80RPI_lcd128x64point(x,y,colour) u8RPI_lcd128x64points(x,y,colour);
+#define d0d0d0RPI_lcd128x64point(x,y,colour) u8RPI_lcd128x64points(x,y,colour);
+
+#define u80u80u80RPI_lcd128x64lineTo(x,y,colour) u8RPI_lcd128x64lineTos(x,y,colour);
+#define d0d0d0RPI_lcd128x64lineTo(x,y,colour) u8RPI_lcd128x64lineTos(x,y,colour);
+
+#define u80u80u80u80u80RPI_lcd128x64line(x0,y0,x1,y1,colour) u8RPI_lcd128x64lines(x0,y0,x1,y1,colour);
+#define d0d0d0d0d0RPI_lcd128x64line(x0,y0,x1,y1,colour) u8RPI_lcd128x64lines(x0,y0,x1,y1,colour);
+
+#define u80u80u80u80u80RPI_lcd128x64circle(x,y,r,colour,filled) u8RPI_lcd128x64circles(x,y,r,colour,filled);
+#define d0d0d0d0d0RPI_lcd128x64circle(x,y,r,colour,filled) u8RPI_lcd128x64circles(x,y,r,colour,filled);
+
+#define u80u80u80u80u80RPI_lcd128x64putchar(x,y,c,bgCol,fgCol) u8RPI_lcd128x64putchars(x,y,c,bgCol,fgCol);
+#define d0d0d0d0u80RPI_lcd128x64putchar(x,y,c,bgCol,fgCol) u8RPI_lcd128x64putchars(x,y,c,bgCol,fgCol);
+
+#define u80u80g2u80u80RPI_lcd128x64puts(x,y,str,size,bgCol,fgCol) u8RPI_lcd128x64putss(x,y,str,size[1],bgCol,fgCol);
+#define d0d0g2d0d0RPI_lcd128x64puts(x,y,str,size,bgCol,fgCol) u8RPI_lcd128x64putss(x,y,str,size[1],bgCol,fgCol);
+
+#define u80u80u80u80u80u80RPI_lcd128x64rectangle(x1,y1,x2,y2,colour,filled) u8RPI_lcd128x64rectangles(x1,y1,x2,y2,colour,filled);
+#define d0d0d0d0d0d0RPI_lcd128x64rectangle(x1,y1,x2,y2,colour,filled) u8RPI_lcd128x64rectangles(x1,y1,x2,y2,colour,filled);
+
+#define u80u80u80u80u80u80RPI_lcd128x64ellipse(cx,cy,xRadius,yRadius,colour,filled) u8RPI_lcd128x64ellipses(cx,cy,xRadius,yRadius,colour,filled);
+#define d0d0d0d0d0d0RPI_lcd128x64ellipse(cx,cy,xRadius,yRadius,colour,filled) u8RPI_lcd128x64ellipses(cx,cy,xRadius,yRadius,colour,filled);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALLCD128x64_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h
new file mode 100644
index 00000000..7857b3ae
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMcp.h
@@ -0,0 +1,42 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALMCP_H__
+#define __INT_RPIPERIPHERALMCP_H__
+
+#include "types.h"
+#include "RPIPeripheralMcp.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u160u80RPI_mcp23008Setupu80(pinBase,addr) u16RPI_mcp23008Setups(pinBase,addr);
+#define d0d0RPI_mcp23008Setupu80(pinBase,addr) u16RPI_mcp23008Setups(pinBase,addr);
+
+#define u160u80RPI_mcp23016Setupu80(pinBase,addr) u16RPI_mcp23016Setups(pinBase,addr);
+#define d0d0RPI_mcp23016Setupu80(pinBase,addr) u16RPI_mcp23016Setups(pinBase,addr);
+
+#define u160u80RPI_mcp23017Setupu80(pinBase,addr) u16RPI_mcp23017Setups(pinBase,addr);
+#define d0d0RPI_mcp23017Setupu80(pinBase,addr) u16RPI_mcp23017Setups(pinBase,addr);
+
+#define u160u80u80RPI_mcp23s08Setupu80(pinBase,spiport,devId) u16RPI_mcp23s08Setups(pinBase,spiport,devId);
+#define d0d0d0RPI_mcp23s08Setupu80(pinBase,spiport,devId) u16RPI_mcp23s08Setups(pinBase,spiport,devId);
+
+#define u160u80u80RPI_mcp23s17Setupu80(pinBase,spiport,devId) u16RPI_mcp23s17Setups(pinBase,spiport,devId);
+#define d0d0d0RPI_mcp23s17Setupu80(pinBase,spiport,devId) u16RPI_mcp23s17Setups(pinBase,spiport,devId);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALMCP_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h
new file mode 100644
index 00000000..de065a24
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralMisc.h
@@ -0,0 +1,35 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALMISC_H__
+#define __INT_RPIPERIPHERALMISC_H__
+
+#include "types.h"
+#include "RPIPeripheralMisc.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define RPI_boardRevu80() RPI_boardRev();
+
+#define u80u80RPI_padDrive(group,strength) u8RPI_padDrives(group,strength);
+#define d0d0RPI_padDrive(group,strength) u8RPI_padDrives(group,strength);
+
+#define u160RPI_sn3218Setupi80(pinBase) u16RPI_sn3218Setups(pinBase);
+#define d0RPI_sn3218Setupi80(pinBase) u16RPI_sn3218Setups(pinBase);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALMISC_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h
new file mode 100644
index 00000000..fd1a1b08
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPWM.h
@@ -0,0 +1,41 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALPWM_H__
+#define __INT_RPIPERIPHERALPWM_H__
+
+#include "types.h"
+#include "RPIPeripheralPWM.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80u160RPI_pwmWrite(pin,value) u8RPI_pwmWrites(pin,value);
+#define d0d0RPI_pwmWrite(pin,value) u8RPI_pwmWrites(pin,value);
+
+#define u320RPI_pwmRange(value) u32RPI_pwmRanges(value);
+#define d0RPI_pwmRange(value) u32RPI_pwmRanges(value);
+
+#define g2RPI_pwmMode(mode) gRPI_pwmModea(mode);
+
+#define u160RPI_pwmClock(divisor) u16RPI_pwmClocks(divisor);
+#define d0RPI_pwmClock(divisor) u16RPI_pwmClocks(divisor);
+
+#define u80u160RPI_pwmToneWrite(pin,value) u8RPI_pwmToneWrites(pin,value);
+#define d0d0RPI_pwmToneWrite(pin,value) u8RPI_pwmToneWrites(pin,value);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALPWM_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h
new file mode 100644
index 00000000..3d0cb273
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPcf.h
@@ -0,0 +1,33 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALPCF_H__
+#define __INT_RPIPERIPHERALPCF_H__
+
+#include "types.h"
+#include "RPIPeripheralPcf.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u160u80RPI_pcf8574Setupu80(pinBase,addr) u16RPI_pcf8574Setups(pinBase,addr);
+#define d0d0RPI_pcf8574Setupu80(pinBase,addr) u16RPI_pcf8574Setups(pinBase,addr);
+
+#define u160u80RPI_pcf8591Setupu80(pinBase,addr) u16RPI_pcf8591Setups(pinBase,addr);
+#define d0d0RPI_pcf8591Setupu80(pinBase,addr) u16RPI_pcf8591Setups(pinBase,addr);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALPCF_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h
new file mode 100644
index 00000000..8e268f6e
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPiGlow.h
@@ -0,0 +1,39 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALPIGLOW_H__
+#define __INT_RPIPERIPHERALPIGLOW_H__
+
+#include "types.h"
+#include "RPIPeripheralPiGlow.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80RPI_piGlowSetup(clear) u8RPI_piGlowSetups(clear);
+#define d0RPI_piGlowSetup(clear) u8RPI_piGlowSetups(clear);
+
+#define u80u80u80RPI_piGlow1(leg,ring,intensity) u8RPI_piGlow1s(leg,ring,intensity);
+#define d0d0d0RPI_piGlow1(leg,ring,intensity) u8RPI_piGlow1s(leg,ring,intensity);
+
+#define u80u80RPI_piGlowLeg(leg,intensity) u8RPI_piGlowLegs(leg,intensity);
+#define d0d0RPI_piGlowLeg(leg,intensity) u8RPI_piGlowLegs(leg,intensity);
+
+#define u80u80RPI_piGlowRing(ring,intensity) u8RPI_piGlowRings(ring,intensity);
+#define d0d0RPI_piGlowRing(ring,intensity) u8RPI_piGlowRings(ring,intensity);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALPIGLOW_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h
new file mode 100644
index 00000000..8de0dc29
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralPinMap.h
@@ -0,0 +1,33 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALPINMAP_H__
+#define __INT_RPIPERIPHERALPINMAP_H__
+
+#include "types.h"
+#include "RPIPeripheralPinMap.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80RPI_physToGpioi80(pin) u8RPI_physToGpios(pin);
+#define d0RPI_physToGpioi80(pin) u8RPI_physToGpios(pin);
+
+#define u80RPI_wpiToGpioi80(pin) u8RPI_wpiToGpios(pin);
+#define d0RPI_wpiToGpioi80(pin) u8RPI_wpiToGpios(pin);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALPINMAP_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h
new file mode 100644
index 00000000..b308d838
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSerial.h
@@ -0,0 +1,51 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALSERIAL_H__
+#define __INT_RPIPERIPHERALSERIAL_H__
+
+#include "types.h"
+#include "RPIPeripheralSerial.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define g2u320RPI_serialOpeni80(device,size,baud) gRPI_serialOpena(device,size[1],baud);
+#define g2d0RPI_serialOpeni80(device,size,baud) gRPI_serialOpena(device,size[1],baud);
+
+#define u80RPI_serialClose(fd) u8RPI_serialCloses(fd);
+#define d0RPI_serialClose(fd) u8RPI_serialCloses(fd);
+
+#define u80RPI_serialDataAvailu80(fd) u8RPI_serialDataAvails(fd);
+#define d0RPI_serialDataAvailu80(fd) u8RPI_serialDataAvails(fd);
+
+#define u80RPI_serialFlush(fd) u8RPI_serialFlushs(fd);
+#define d0RPI_serialFlush(fd) u8RPI_serialFlushs(fd);
+
+#define u80RPI_serialGetcharg2(fd,out) u8RPI_serialGetchars(fd,out);
+#define d0RPI_serialGetcharg2(fd,out) u8RPI_serialGetchars(fd,out);
+
+#define u80g2RPI_serialPrintf(fd,msg,size) u8RPI_serialPrintfs(fd,msg,size[1]);
+#define d0g2RPI_serialPrintf(fd,msg,size) u8RPI_serialPrintfs(fd,msg,size[1]);
+
+#define u80u80RPI_serialPutchar(fd,character) u8RPI_serialPutchars(fd,character);
+#define d0d0RPI_serialPutchar(fd,character) u8RPI_serialPutchars(fd,character);
+
+#define u80g2RPI_serialPutsg2(fd,character,size) u8RPI_serialPutss(fd,character,size[1]);
+#define d0g2RPI_serialPutsg2(fd,character,size) u8RPI_serialPutss(fd,character,size[1]);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALSERIAL_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h
new file mode 100644
index 00000000..6bcb1632
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSetup.h
@@ -0,0 +1,41 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALSETUP_H__
+#define __INT_RPIPERIPHERALSETUP_H__
+
+#include "RPIPeripheralSetup.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+//pinNumbering
+#define g2RPI_pinNumberingi80(seq,size) gRPI_pinNumberinga(seq,size[1]);
+//getAlt
+#define u80RPI_getAltu80(pin) u8RPI_getAlts(pin);
+#define d0RPI_getAltu80(pin) u8RPI_getAlts(pin);
+//pinModeAlt
+#define u80u80RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode);
+#define d0d0RPI_pinModeAlt(pin,mode) u8RPI_pinModeAlts(pin,mode);
+//pinMode
+#define u80g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]);
+#define d0g2RPI_pinMode(pin,mode,size) u8RPI_pinModes(pin,mode,size[1]);
+//pullControl
+#define u80g2RPI_pullControl(pin,mode,size) u8RPI_pullControls(pin,mode,size[1]);
+#define d0g2RPI_pullControl(pin,mode,size) u8RPI_pullControls(pin,mode,size[1]);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALSETUP_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h
new file mode 100644
index 00000000..7b70ce9a
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralShift.h
@@ -0,0 +1,36 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALSHIFT_H__
+#define __INT_RPIPERIPHERALSHIFT_H__
+
+#include "types.h"
+#include "RPIPeripheralShift.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80u80u80RPI_shiftInu80(dpin,cpin,order) u8RPI_shiftIns(dpin,cpin,order);
+#define d0d0d0RPI_shiftInu80(dpin,cpin,order) u8RPI_shiftIns(dpin,cpin,order);
+
+#define u80u80u80u80RPI_shiftOut(dpin,cpin,order,val) u8RPI_shiftOuts(dpin,cpin,order,val);
+#define d0d0d0d0RPI_shiftOut(dpin,cpin,order,val) u8RPI_shiftOuts(dpin,cpin,order,val);
+
+#define u160u80u80u80u80RPI_sr595Setupi80(pinBase,nPins,dP,cP,lP) u16RPI_sr595Setups(pinBase,nPins,dP,cP,lP);
+#define d0d0d0d0d0RPI_sr595Setupi80(pinBase,nPins,dP,cP,lP) u16RPI_sr595Setups(pinBase,nPins,dP,cP,lP);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALSHIFT_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h
new file mode 100644
index 00000000..646c5244
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralSoft.h
@@ -0,0 +1,45 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALSOFT_H__
+#define __INT_RPIPERIPHERALSOFT_H__
+
+#include "types.h"
+#include "RPIPeripheralSoft.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u80u160u160RPI_softPwmCreateu80(pin,ival,range) u8RPI_softPwmCreates(pin,ival,range);
+#define d0d0d0RPI_softPwmCreateu80(pin,ival,range) u8RPI_softPwmCreates(pin,ival,range);
+
+#define u80RPI_softPwmStop(pin) u8RPI_softPwmStops(pin);
+#define d0RPI_softPwmStop(pin) u8RPI_softPwmStops(pin);
+
+#define u80u160RPI_softPwmWrite(pin,value) u8RPI_softPwmWrites(pin,value);
+#define d0d0RPI_softPwmWrite(pin,value) u8RPI_softPwmWrites(pin,value);
+
+#define u80RPI_softToneCreateu80(pin) u8RPI_softToneCreates(pin);
+#define d0RPI_softToneCreateu80(pin) u8RPI_softToneCreates(pin);
+
+#define u80RPI_softToneStop(pin) u8RPI_softToneStops(pin);
+#define d0RPI_softToneStop(pin) u8RPI_softToneStops(pin);
+
+#define u80u320RPI_softToneWrite(pin,value) u8RPI_softToneWrites(pin,value);
+#define d0d0RPI_softToneWrite(pin,value) u8RPI_softToneWrites(pin,value);
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALSOFT_H__ */
diff --git a/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h
new file mode 100644
index 00000000..cbbb47ae
--- /dev/null
+++ b/src/c/hardware/rasberrypi/interfaces/int_RPIPeripheralTiming.h
@@ -0,0 +1,36 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Jorawar Singh, Siddhesh Wani
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#ifndef __INT_RPIPERIPHERALTIMING_H__
+#define __INT_RPIPERIPHERALTIMING_H__
+
+#include "types.h"
+#include "RPIPeripheralTiming.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define u320RPI_delay(time) u32RPI_delays(time);
+#define d0RPI_delay(time) u32RPI_delays(time);
+
+#define u320RPI_delayMicro(time) u32RPI_delayMicros(time);
+#define d0RPI_delayMicro(time) u32RPI_delayMicros(time);
+
+#define RPI_millisu320() RPI_millis();
+#define RPI_microsu320() RPI_micros();
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* !__INT_RPIPERIPHERALTIMING_H__ */