Driver for http://www.ti.com/lit/ds/symlink/tca9548a.pdf

Fork of TCA9548A by Akash Vibhute

Revision:
2:1107ee23873a
Parent:
0:5bd73cede544
--- a/tca9548a.cpp	Wed May 25 05:20:24 2016 +0000
+++ b/tca9548a.cpp	Tue Dec 12 22:14:58 2017 +0000
@@ -9,21 +9,25 @@
  
 #include "tca9548a.h"
  
-TCA9548A::TCA9548A( PinName sda, PinName scl, uint8_t i2c_address, PinName resetPin, uint32_t hz ) : i2c_(sda, scl), reset_pin(resetPin)
+TCA9548A::TCA9548A( PinName sda, PinName scl, uint8_t i2c_address, PinName resetPin) : i2c_(sda, scl), reset_pin(resetPin)
 {
     i2c_addr = i2c_address;
-    i2c_.frequency(hz);
 }
 
  
 void TCA9548A::select( uint8_t channel )
 {
-    char data; //create temporary char buffer
-    
     if(channel >= 8) return;
-    
-    data = 1 << channel;
-    i2c_.write( i2c_addr << 1, &data, 1);
+    char data[1];
+    data[0] = 1 << channel;
+    int err = i2c_.write(0xE0, data, 1);
+}
+
+char TCA9548A::check_set_channel()
+{
+    char data[1];
+    int err = i2c_.read(0xE1, data, 1);
+    return data[0];
 }
  
 void TCA9548A::reset( )