Adding, removing and re-adding an ISR handle in the GPIO sample ...
Posted: Sun Jan 15, 2017 8:17 pm
Folks,
Am studying the GPIO sample found here:
https://github.com/espressif/esp-idf/bl ... pio_test.c
Specifically, I am looking at the following code fragment found within:
Unfortunately, I'm not understanding a portion of it. We appear to associate an ISR handler with GPIO0, remove the ISR handler and then immediately re-add it. I'm not understanding the nature of that task. I can see why we would add it once, but not why we remove it and then immediately re-add it.
Am studying the GPIO sample found here:
https://github.com/espressif/esp-idf/bl ... pio_test.c
Specifically, I am looking at the following code fragment found within:
Code: Select all
//install gpio isr service
gpio_install_isr_service(ESP_INTR_FLAG_DEFAULT);
//hook isr handler for specific gpio pin
gpio_isr_handler_add(GPIO_INPUT_IO_0, gpio_isr_handler, (void*) GPIO_INPUT_IO_0);
//hook isr handler for specific gpio pin
gpio_isr_handler_add(GPIO_INPUT_IO_1, gpio_isr_handler, (void*) GPIO_INPUT_IO_1);
//remove isr handler for gpio number.
gpio_isr_handler_remove(GPIO_INPUT_IO_0);
//hook isr handler for specific gpio pin again
gpio_isr_handler_add(GPIO_INPUT_IO_0, gpio_isr_handler, (void*) GPIO_INPUT_IO_0);