Define the interrupt callback function in the application:
static
void eic_callback(
void)
{
if (eic_line_interrupt_is_pending(EIC, GPIO_PUSH_BUTTON_EIC_LINE)) {
eic_line_clear_interrupt(EIC, GPIO_PUSH_BUTTON_EIC_LINE);
bToggle = 1;
}
}
Enable EIC module:
eic_enable(EIC);
Note: Including enable module clock and lock sleep mode.
Configure EIC line with specified mode:
eic_line_set_config(EIC, GPIO_PUSH_BUTTON_EIC_LINE, &eic_line_conf);
Set the EIC callback function and enable EIC interrupt.
eic_line_set_callback(EIC, GPIO_PUSH_BUTTON_EIC_LINE, eic_callback,
GPIO_PUSH_BUTTON_EIC_IRQ, 1);
Enable EIC line:
eic_line_enable(EIC, GPIO_PUSH_BUTTON_EIC_LINE);