perf: optimized interrupt processing
This commit is contained in:
1 parent
0785eeb3e5
commit
f4f74e9d5a
1 file changed
+3
@@ -446,6 +446,8 @@ static void IRAM_ATTR _zh_pcf8574_isr_processing_task(void *pvParameter) // -V20
|
|||||||
{
|
{
|
||||||
_zh_pcf8574_vector_data_t vector_data = {0};
|
_zh_pcf8574_vector_data_t vector_data = {0};
|
||||||
ZH_ERROR_CHECK_CONT(zh_vector_get_item(&_vector, i, &vector_data) == ESP_OK, ++_stats.vector_error, "PCF8574 isr processing failed. Failed to get vector item data.");
|
ZH_ERROR_CHECK_CONT(zh_vector_get_item(&_vector, i, &vector_data) == ESP_OK, ++_stats.vector_error, "PCF8574 isr processing failed. Failed to get vector item data.");
|
||||||
|
if (vector_data.gpio_work_mode != 0)
|
||||||
|
{
|
||||||
zh_pcf8574_event_on_isr_t event = {0};
|
zh_pcf8574_event_on_isr_t event = {0};
|
||||||
event.i2c_address = vector_data.i2c_address;
|
event.i2c_address = vector_data.i2c_address;
|
||||||
uint8_t old_reg = vector_data.gpio_status;
|
uint8_t old_reg = vector_data.gpio_status;
|
||||||
@@ -466,6 +468,7 @@ static void IRAM_ATTR _zh_pcf8574_isr_processing_task(void *pvParameter) // -V20
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
_stats.min_stack_size = (uint32_t)uxTaskGetStackHighWaterMark(NULL);
|
_stats.min_stack_size = (uint32_t)uxTaskGetStackHighWaterMark(NULL);
|
||||||
}
|
}
|
||||||
vTaskDelete(NULL);
|
vTaskDelete(NULL);
|
||||||
|
|||||||
Reference in new issue
Block a user