@@ 24,6 24,7 @@ void exti_external_interrupt(exti_t* exti, uint8_t gpio);
// Only 21 positions are now supported. This is too hard for other ones.
void exti_rising_interrupt(exti_t* exti);
void exti_falling_interrupt(exti_t* exti);
+void exti_both_edges_interrupt(exti_t *exti);
void exti_disable_interrupt(exti_t* exti);
void exti_enable_interrupt(exti_t *exti);
@@ 21,7 21,11 @@ void exti_external_interrupt(exti_t *exti, uint8_t gpio) {
void exti_rising_interrupt(exti_t *exti) {
reg_write_bits_pos(&exti->exti->RTSR, 1, exti->line, 1);
reg_write_bits_pos(&exti->exti->FTSR, 0, exti->line, 1);
- reg_write_bits_pos(&exti->exti->IMR, 1, exti->line, 1);
+}
+
+void exti_both_edges_interrupt(exti_t *exti) {
+ reg_write_bits_pos(&exti->exti->RTSR, 1, exti->line, 1);
+ reg_write_bits_pos(&exti->exti->FTSR, 1, exti->line, 1);
}
void exti_falling_interrupt(exti_t *exti) {