Accel

Dependencies:   mbed PowerControl SDFileSystem

Fork of HeptaAccel by 智也 大野

Revision:
0:d721efd58e4e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hepta_sat/I2cBusDevice.h	Fri Dec 09 03:40:15 2016 +0000
@@ -0,0 +1,44 @@
+#ifndef    MBED_I2cBusDevice
+#define    MBED_I2cBusDevice
+
+#include    "mbed.h"
+
+class I2cBusDevice {
+public:
+
+    I2cBusDevice( I2C *i2c, char dev_address ) {
+        bus          = i2c;
+        device       = dev_address;
+    }
+
+    ~I2cBusDevice() {
+    }
+
+    int write( char *data, int length ) {
+        return ( bus->write( device, data, length) );
+    }
+
+    int read( char *data, int length ) {
+        return ( bus->read( device, data, length) );
+    }
+
+    int read( char reg_ptr, char *data, int length ) {
+        if ( bus->write( device, &reg_ptr, 1 ) )
+            return ( 1 );
+
+        if ( bus->read( device, data, length ) )
+            return ( 1 );
+
+        return ( 0 );
+    }
+
+protected:
+    I2C     *bus;
+    char    device;
+
+private:
+    static char    i2c_error;
+}
+;
+
+#endif