diff options
Diffstat (limited to 'src/c/hardware/rasberrypi/interfaces')
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__ */ |