summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNoralf Trønnes <noralf@tronnes.org>2018-08-02 14:52:03 +0200
committerNoralf Trønnes <noralf@tronnes.org>2018-08-16 17:11:20 +0200
commit1ed0e45fc26a016645c91daf3e1c14cef5d477ba (patch)
tree8edcc43af99fb2d78bc1234adb653634f33267bb /lib
parentb6822b86ac2627bb85df6fce5344a2078507d366 (diff)
Add i2cslave.I2CSlave bindings
Diffstat (limited to 'lib')
-rw-r--r--lib/utils/interrupt_char.c5
-rw-r--r--lib/utils/interrupt_char.h3
2 files changed, 8 insertions, 0 deletions
diff --git a/lib/utils/interrupt_char.c b/lib/utils/interrupt_char.c
index fca0f95b5..91ee5c80e 100644
--- a/lib/utils/interrupt_char.c
+++ b/lib/utils/interrupt_char.c
@@ -47,4 +47,9 @@ void mp_keyboard_interrupt(void) {
#endif
}
+// Check to see if we've been CTRL-C'ed by autoreload or the user.
+bool mp_hal_is_interrupted(void) {
+ return MP_STATE_VM(mp_pending_exception) == MP_OBJ_FROM_PTR(&MP_STATE_VM(mp_kbd_exception));
+}
+
#endif
diff --git a/lib/utils/interrupt_char.h b/lib/utils/interrupt_char.h
index ca50d4d56..e0b1db529 100644
--- a/lib/utils/interrupt_char.h
+++ b/lib/utils/interrupt_char.h
@@ -26,8 +26,11 @@
#ifndef MICROPY_INCLUDED_LIB_UTILS_INTERRUPT_CHAR_H
#define MICROPY_INCLUDED_LIB_UTILS_INTERRUPT_CHAR_H
+#include <stdbool.h>
+
extern int mp_interrupt_char;
void mp_hal_set_interrupt_char(int c);
void mp_keyboard_interrupt(void);
+bool mp_hal_is_interrupted(void);
#endif // MICROPY_INCLUDED_LIB_UTILS_INTERRUPT_CHAR_H