Advertisement
Guest User

Untitled

a guest
Nov 27th, 2011
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.47 KB | None | 0 0
  1. #define  TOLLOS_IO            // allow use of I/O functions
  2. #include "tollos.h"
  3. int i2cGetByte(uint device, byte *get) {
  4.  
  5.   // read 1 byte data
  6.   return i2cIO(device, NULL, 0, get, 1);
  7.   } // i2cGetByte
  8.  
  9.  
  10. int i2cGetReg(uint device, byte reg, byte *get) {
  11. //int i2cIO(device, &reg, 1, get, 1);
  12.   // write one byte address then read 1 byte data
  13.  
  14.   return i2cIO(device, &reg, 1, get, 1);
  15.   } // i2cGetReg
  16.  
  17. int i2cGetRegs(uint device, byte reg, byte *get, uint len) {
  18.  
  19.   // write one byte address then read len bytes data
  20.   return i2cIO(device, &reg, 1, get, len);
  21.   } // i2cGetRegs
  22.  
  23. int i2cPutByte(uint device, byte put) {
  24.   return i2cIO(device, &put, 1, NULL, 0);
  25.   } // i2cPutByte
  26.  
  27. int i2cPutGet(uint device, byte *put, uint putlen, byte *get, uint getlen) {
  28.   return i2cIO(device, put, putlen, get, getlen);
  29.   } // i2cPutGet
  30.  
  31. int i2cPutReg(uint device, byte reg, byte put) {
  32.   byte buff[2];          // work buffer
  33.  
  34.   buff[0]=reg;           // addr ..
  35.   buff[1]=put;           // .. followed by data
  36.  
  37.   return i2cIO(device, buff, 2, NULL, 0);
  38.   } // i2cPutReg
  39. int i2cPutRegs(uint device, byte reg, byte *put, uint len) {
  40. //byte *buff=new byte[len+1];
  41.   byte buff[len+1];      // work buffer
  42.   uint u;                // work
  43.  
  44.   buff[0]=reg;                               // addr ..
  45.   for (u=0; u<len; u++) buff[u+1]=put[u];    // .. followed by data
  46.  // byte* bbbb=buff;
  47. //  delete []buff;
  48.   return i2cIO(device, buff, len+1, NULL, 0);
  49.   } // i2cPutRegs
  50.  
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement