diff --git a/Firmware/swi2c.c b/Firmware/swi2c.c index aebfe0179..d143ec600 100644 --- a/Firmware/swi2c.c +++ b/Firmware/swi2c.c @@ -44,6 +44,14 @@ void swi2c_init(void) SET_OUTPUT(SWI2C_SDA); //finally make the SDA line an output since the bus is idle for sure. } +void swi2c_disable(void) +{ + SET_INPUT(SWI2C_SDA); + WRITE(SWI2C_SDA, 0); + SET_INPUT(SWI2C_SCL); + WRITE(SWI2C_SCL, 0); +} + static void __delay(void) { _delay_us(1.5); diff --git a/Firmware/swi2c.h b/Firmware/swi2c.h index 7b7837cf7..467c1d57b 100644 --- a/Firmware/swi2c.h +++ b/Firmware/swi2c.h @@ -13,6 +13,9 @@ extern "C" { //initialize extern void swi2c_init(void); +//deinit pins +extern void swi2c_disable(void); + //check device address acknowledge extern uint8_t swi2c_check(uint8_t dev_addr);