zephyr: Add Ctrl+C handling.
This commit is contained in:
parent
1b76f88e7a
commit
93c76d2b06
@ -37,6 +37,7 @@ SRC_C = main.c \
|
||||
lib/utils/stdout_helpers.c \
|
||||
lib/utils/printf.c \
|
||||
lib/utils/pyexec.c \
|
||||
lib/utils/interrupt_char.c \
|
||||
lib/mp-readline/readline.c \
|
||||
$(BUILD)/frozen.c \
|
||||
$(SRC_MOD)
|
||||
|
@ -9,6 +9,7 @@
|
||||
#include "py/gc.h"
|
||||
#include "py/stackctrl.h"
|
||||
#include "lib/utils/pyexec.h"
|
||||
#include "lib/mp-readline/readline.h"
|
||||
|
||||
void do_str(const char *src, mp_parse_input_kind_t input_kind) {
|
||||
mp_lexer_t *lex = mp_lexer_new_from_str_len(MP_QSTR__lt_stdin_gt_, src, strlen(src), 0);
|
||||
@ -44,6 +45,7 @@ int real_main(void) {
|
||||
gc_init(heap, heap + sizeof(heap));
|
||||
#endif
|
||||
mp_init();
|
||||
MP_STATE_PORT(mp_kbd_exception) = mp_obj_new_exception(&mp_type_KeyboardInterrupt);
|
||||
pyexec_frozen_module("main.py");
|
||||
#if MICROPY_REPL_EVENT_DRIVEN
|
||||
pyexec_event_repl_init();
|
||||
|
@ -46,6 +46,7 @@ typedef long mp_off_t;
|
||||
#define MP_STATE_PORT MP_STATE_VM
|
||||
|
||||
#define MICROPY_PORT_ROOT_POINTERS \
|
||||
mp_obj_t mp_kbd_exception; \
|
||||
const char *readline_hist[8];
|
||||
|
||||
// Include Zephyr's autoconf.h, which should be made first by Zephyr makefiles
|
||||
|
@ -1,2 +1 @@
|
||||
static inline mp_uint_t mp_hal_ticks_ms(void) { return 0; }
|
||||
static inline void mp_hal_set_interrupt_char(char c) {}
|
||||
|
Loading…
Reference in New Issue
Block a user