@@ -73,7 +73,7 @@ class I2C_device
7373 * @param size data size
7474 * @return transferred data size
7575 */
76- int reg_w ( uint8_t reg_adr, const uint8_t *data, uint16_t size );
76+ virtual int reg_w ( uint8_t reg_adr, const uint8_t *data, uint16_t size );
7777
7878 /* * Single register write
7979 *
@@ -82,7 +82,7 @@ class I2C_device
8282 * @param size data size
8383 * @return transferred data size
8484 */
85- int reg_w ( uint8_t reg_adr, uint8_t data );
85+ virtual int reg_w ( uint8_t reg_adr, uint8_t data );
8686
8787 /* * Multiple register read
8888 *
@@ -91,7 +91,7 @@ class I2C_device
9191 * @param size data size
9292 * @return transferred data size
9393 */
94- int reg_r ( uint8_t reg_adr, uint8_t *data, uint16_t size );
94+ virtual int reg_r ( uint8_t reg_adr, uint8_t *data, uint16_t size );
9595
9696 /* * Single register read
9797 *
@@ -100,7 +100,7 @@ class I2C_device
100100 * @param size data size
101101 * @return read data size
102102 */
103- uint8_t reg_r ( uint8_t reg_adr );
103+ virtual uint8_t reg_r ( uint8_t reg_adr );
104104
105105 /* * Register write, 8 bit
106106 *
@@ -156,9 +156,11 @@ class I2C_device
156156 */
157157 static void scan ( TwoWire& target_i2c = Wire, uint8_t stop = 128 );
158158
159+ protected:
160+ uint8_t i2c_addr;
161+
159162private:
160163 TwoWire& i2c;
161- uint8_t i2c_addr;
162164 bool rs_dis;
163165};
164166
0 commit comments