X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fhw%2Fhw_i2c_bitbang.h;h=6aabb46d6a1bb063eaeff211f73b13631b1c1ba7;hb=bb60c722116f1c8401cc4d5653c127d461df1c15;hp=8f3fbf5e88a5771876dd8a9130a20331e52b3329;hpb=b46f64914c62fbb0297728280478681659469654;p=bertos.git diff --git a/bertos/hw/hw_i2c_bitbang.h b/bertos/hw/hw_i2c_bitbang.h index 8f3fbf5e..6aabb46d 100644 --- a/bertos/hw/hw_i2c_bitbang.h +++ b/bertos/hw/hw_i2c_bitbang.h @@ -62,4 +62,66 @@ */ #define I2C_HALFBIT_DELAY() do { /* Implement me! */ } while (0) + +/* + * New api + */ +#include + +INLINE void i2c_sdaHi(int dev) +{ + (void)(dev); + /* Implement me:Set SDA High by setting SDA pin as input */ +} + +INLINE void i2c_sdaLo(int dev) +{ + (void)(dev); + /* Implement me:Set SDA Low by setting SDA pin as open collector output */ +} + +INLINE void i2c_sclHi(int dev) +{ + (void)(dev); + /* Implement me:Set SCL High by setting SCL pin as input */ +} + +INLINE void i2c_sclLo(int dev) +{ + (void)(dev); + /* Implement me:Set SCL Low by setting SCL pin as open collector output */ +} + +INLINE bool i2c_sdaIn(int dev) +{ + (void)(dev); + /* Implement me: read SDA pin state */ + return true; +} + +INLINE bool i2c_sclIn(int dev) +{ + (void)(dev); + /* Implement me: read SCL pin state */ + return true; +} + +/** + * Half bit delay routine used to generate the correct timings. + */ +INLINE void i2c_halfbitDelay(int dev) +{ + (void)(dev); + /* Implement me! */ +} + +/** + * This macro should set SDA and SCL lines as input. + */ +INLINE void i2c_bitbangInit(int dev) +{ + (void)(dev); + /* Implement me! */ +} + #endif /* HW_I2C_BITBANG_H */