From aae314fead54dab7b258f3a6c7ac1615833f9987 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Tue, 29 Dec 2015 19:01:39 +0100 Subject: o Basic pre-emptive task switching OS. --- serial2.cpp | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'serial2.cpp') diff --git a/serial2.cpp b/serial2.cpp index d53b254..c0259ea 100644 --- a/serial2.cpp +++ b/serial2.cpp @@ -7,22 +7,19 @@ #include "debug.h" #include "tinyprintf.h" - -int init_high(); - -extern "C" void halt(); +#include "playground.h" extern "C" -__attribute__((naked)) +__attribute__((naked, used)) void HardFault_Handler_C(uint32_t *hardfault_args) { - dbg_printf("r0 = 0x%08x (%d)\n", hardfault_args[0], hardfault_args[0]); - dbg_printf("r1 = 0x%08x (%d)\n", hardfault_args[1], hardfault_args[1]); - dbg_printf("r2 = 0x%08x (%d)\n", hardfault_args[2], hardfault_args[2]); - dbg_printf("r3 = 0x%08x (%d)\n", hardfault_args[3], hardfault_args[3]); - dbg_printf("r12 = 0x%08x (%d)\n", hardfault_args[4], hardfault_args[4]); - dbg_printf("lr = 0x%08x (%d)\n", hardfault_args[5], hardfault_args[5]); - dbg_printf("pc = 0x%08x (%d)\n", hardfault_args[6], hardfault_args[6]); - dbg_printf("psr = 0x%08x (%d)\n", hardfault_args[7], hardfault_args[7]); + dbg_printf("r0 = 0x%08lx (%lu)\n", hardfault_args[0], hardfault_args[0]); + dbg_printf("r1 = 0x%08lx (%lu)\n", hardfault_args[1], hardfault_args[1]); + dbg_printf("r2 = 0x%08lx (%lu)\n", hardfault_args[2], hardfault_args[2]); + dbg_printf("r3 = 0x%08lx (%lu)\n", hardfault_args[3], hardfault_args[3]); + dbg_printf("r12 = 0x%08lx (%lu)\n", hardfault_args[4], hardfault_args[4]); + dbg_printf("lr = 0x%08lx (%lu)\n", hardfault_args[5], hardfault_args[5]); + dbg_printf("pc = 0x%08lx (%lu)\n", hardfault_args[6], hardfault_args[6]); + dbg_printf("psr = 0x%08lx (%lu)\n", hardfault_args[7], hardfault_args[7]); dbg_printf("\n"); halt(); -- cgit v1.2.3