summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Shawcroft <scott.shawcroft@gmail.com>2017-04-13 17:50:06 -0700
committerScott Shawcroft <scott.shawcroft@gmail.com>2017-04-13 17:50:06 -0700
commitf37ce1c5957982d8e3509052e8991ed381e8489d (patch)
tree44874c894cf2c70b24bd5c75c6df6094afb9d50d
parentf0e24bd81270227fff63644b3a12444b5d0e5a4f (diff)
atmel-samd: Turn off PulseIn interrupts on reset. Can hardfault otherwise.
-rw-r--r--atmel-samd/common-hal/pulseio/PulseIn.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/atmel-samd/common-hal/pulseio/PulseIn.c b/atmel-samd/common-hal/pulseio/PulseIn.c
index 920b7f34d..f48045cf4 100644
--- a/atmel-samd/common-hal/pulseio/PulseIn.c
+++ b/atmel-samd/common-hal/pulseio/PulseIn.c
@@ -48,6 +48,9 @@ static uint16_t last_us[EIC_NUMBER_OF_INTERRUPTS];
void pulsein_reset(void) {
for (int i = 0; i < EIC_NUMBER_OF_INTERRUPTS; i++) {
+ if (active_pulseins[i] != NULL) {
+ extint_chan_disable_callback(i, EXTINT_CALLBACK_TYPE_DETECT);
+ }
active_pulseins[i] = NULL;
last_ms[i] = 0;
last_us[i] = 0;