allow preloading virtual interrupt buffer

This commit is contained in:
Siwat Sirichai 2023-12-02 21:06:46 +07:00
parent 3b146b3bdf
commit e3c07411cb
3 changed files with 13 additions and 0 deletions

View File

@ -171,6 +171,9 @@ void setup()
Wire.setClock(400000); Wire.setClock(400000);
#endif #endif
io_begin(); io_begin();
#ifdef VIRTUAL_INTERRUPT_PRELOAD
virtual_interrupt_preload();
#endif
eeprom_retrieve_init(); eeprom_retrieve_init();
user_pre_init(); user_pre_init();
#ifdef ENABLE_INTERNAL_LCD #ifdef ENABLE_INTERNAL_LCD
@ -2186,3 +2189,9 @@ bool dac_get_state(int id)
} }
#endif #endif
void virtual_interrupt_preload() {
for (int i = 0; i < 16; i++) {
virtual_interupt_state[i] = ESPMega_digitalRead(virtual_interrupt_pins[i]);
}
}

View File

@ -46,6 +46,7 @@
void mqtt_callback(char* topic, byte* payload, unsigned int length); void mqtt_callback(char* topic, byte* payload, unsigned int length);
void virtual_interrupt_loop(); void virtual_interrupt_loop();
void virtual_interrupt_callback(int pin, int state); void virtual_interrupt_callback(int pin, int state);
void virtual_interrupt_preload();
void network_begin(); void network_begin();
void mqtt_connect(); void mqtt_connect();
void mqtt_subscribe(); void mqtt_subscribe();

View File

@ -12,6 +12,9 @@
//#define OVERCLOCK_FM //#define OVERCLOCK_FM
//#define OVERCLOCK_FM2 //#define OVERCLOCK_FM2
// I/O Configuration
#define VIRTUAL_INTERRUPT_PRELOAD // Preload Virtual Interrupts buffer
// Enable Software Module(s) // Enable Software Module(s)
#define ENABLE_INTERNAL_LCD #define ENABLE_INTERNAL_LCD
#define ENABLE_IR_MODULE #define ENABLE_IR_MODULE