ESP8266: Switch i2c and digitalout to a single I/O write

This commit is contained in:
Thorsten von Eicken 2016-06-22 22:23:52 -07:00
parent 124390c88c
commit 6e09066c67
2 changed files with 9 additions and 9 deletions

View File

@ -73,10 +73,10 @@ i2c_master_setDC(uint8 SDA, uint8 SCL)
m_nLastSCL = SCL; m_nLastSCL = SCL;
//I2C_MASTER_SDA_SCL(SDA, SCL); //I2C_MASTER_SDA_SCL(SDA, SCL);
GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, SDA<<pinSDA); if (SDA) GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, 1<<pinSDA);
GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, (SDA^1)<<pinSDA); else GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, 1<<pinSDA);
GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, SCL<<pinSCL); if (SCL) GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, 1<<pinSCL);
GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, (SCL^1)<<pinSCL); else GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, 1<<pinSCL);
} }

View File

@ -436,8 +436,8 @@ void jshPinSetValue(
bool value //!< The new value of the pin. bool value //!< The new value of the pin.
) { ) {
//os_printf("> ESP8266: jshPinSetValue pin=%d, value=%d\n", pin, value); //os_printf("> ESP8266: jshPinSetValue pin=%d, value=%d\n", pin, value);
GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, (value&1)<<pin); if (value & 1) GPIO_REG_WRITE(GPIO_OUT_W1TS_ADDRESS, 1<<pin);
GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, (!value)<<pin); else GPIO_REG_WRITE(GPIO_OUT_W1TC_ADDRESS, 1<<pin);
//jshDebugPin(pin); //jshDebugPin(pin);
} }