mirror of https://github.com/arendst/Tasmota.git
Prep PCF8574 virtual switch/button/relay
This commit is contained in:
parent
881c4f4a85
commit
cb988edba8
|
@ -207,6 +207,7 @@ enum UserSelectablePins {
|
|||
GPIO_TUYAMCUBR_TX, GPIO_TUYAMCUBR_RX, // TuyaMCU Bridge
|
||||
GPIO_BIOPDU_PZEM0XX_TX, GPIO_BIOPDU_PZEM016_RX, GPIO_BIOPDU_BIT, // Biomine BioPDU 625x12
|
||||
GPIO_MCP23XXX_INT, GPIO_MCP23SXX_CS, // MCP23xxx Int and SPI Chip select
|
||||
GPIO_PCF8574_INT, // PCF8574 interrupt
|
||||
GPIO_SENSOR_END };
|
||||
|
||||
// Error as warning to rethink GPIO usage with max 2045
|
||||
|
@ -461,6 +462,7 @@ const char kSensorNames[] PROGMEM =
|
|||
D_SENSOR_TUYAMCUBR_TX "|" D_SENSOR_TUYAMCUBR_RX "|"
|
||||
D_SENSOR_BIOPDU_PZEM0XX_TX "|" D_SENSOR_BIOPDU_PZEM016_RX "|" D_SENSOR_BIOPDU_BIT "|"
|
||||
D_SENSOR_MCP23XXX_INT "|" D_SENSOR_MCP23SXX_CS "|"
|
||||
D_SENSOR_PCF8574_INT "|"
|
||||
;
|
||||
|
||||
const char kSensorNamesFixed[] PROGMEM =
|
||||
|
@ -556,6 +558,9 @@ const uint16_t kGpioNiceList[] PROGMEM = {
|
|||
#ifdef USE_I2C
|
||||
AGPIO(GPIO_I2C_SCL) + MAX_I2C, // I2C SCL
|
||||
AGPIO(GPIO_I2C_SDA) + MAX_I2C, // I2C SDA
|
||||
#ifdef USE_PCF8574
|
||||
AGPIO(GPIO_PCF8574_INT), // PCF8574 Interrupt
|
||||
#endif // USE_PCF8574
|
||||
#endif
|
||||
|
||||
#if defined(USE_I2S_AUDIO) || defined (USE_I2S)
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Puls"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "Cruce por cero"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "Effet Hall"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "Impulsi ZC"
|
||||
#define D_SENSOR_HALLEFFECT "Effetto hall"
|
||||
#define D_SENSOR_EPD_DATA "EPD - Dati"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 - Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx - Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx - CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 - CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "Efekt Halla"
|
||||
#define D_SENSOR_EPD_DATA "EPD Dane"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "Efeito Hall"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "Efeito Hall"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -895,6 +895,7 @@
|
|||
#define D_SENSOR_ZEROCROSS "ZC Pulse"
|
||||
#define D_SENSOR_HALLEFFECT "HallEffect"
|
||||
#define D_SENSOR_EPD_DATA "EPD Data"
|
||||
#define D_SENSOR_PCF8574_INT "PCF8574 Int"
|
||||
#define D_SENSOR_MCP23XXX_INT "MCP23xxx Int"
|
||||
#define D_SENSOR_MCP23SXX_CS "MCP23Sxx CS"
|
||||
#define D_SENSOR_MCP2515_CS "MCP2515 CS"
|
||||
|
|
|
@ -723,6 +723,7 @@ void MCP23xInit(void) {
|
|||
} else {
|
||||
gpio = MCP23xRead16(MCP23X17_GPIOA); // Clear MCP23x17 interrupt
|
||||
}
|
||||
pinMode(Mcp23x.device[Mcp23x.chip].pin_int, INPUT_PULLUP);
|
||||
attachInterrupt(Mcp23x.device[Mcp23x.chip].pin_int, MCP23xInputIsr, CHANGE);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue