int main(void) { system_init(); //! [setup_init] configure_extint_channel(); //! [setup_init] //! [main] while (true) { //! [main_1] if (extint_chan_is_detected(BUTTON_0_EIC_LINE)) { //! [main_1] //! [main_2] // Do something in response to EXTINT edge detection bool button_pin_state = port_pin_get_input_level(BUTTON_0_PIN); port_pin_set_output_level(LED_0_PIN, button_pin_state); //! [main_2] //! [main_3] extint_chan_clear_detected(BUTTON_0_EIC_LINE); //! [main_3] } } //! [main] }
int main(void) { system_init(); //! [setup_init] configure_extint_channel(); configure_extint_callbacks(); system_interrupt_enable_global(); //! [setup_init] //! [main] while (true) { /* Do nothing - EXTINT will fire callback asynchronously */ } //! [main] }