From 4614429f5751e14e37ceedb7130b7a829c89476a Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Tue, 27 Feb 2018 23:55:46 -0500 Subject: cleaner main, random nums, perfect script run --- src/stm32l4xx_it.c | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) (limited to 'src/stm32l4xx_it.c') diff --git a/src/stm32l4xx_it.c b/src/stm32l4xx_it.c index ef10406..f643db3 100644 --- a/src/stm32l4xx_it.c +++ b/src/stm32l4xx_it.c @@ -1,20 +1,37 @@ #include -#include +#include +#include +#include + +void serial_puts(const char *s) +{ + int i = 0; + while (s[i] != 0) + serial_put(s[i++]); +} void perror(const char *s) { - (void)s;//lcd_puts(s); + extern task_t *current; + serial_puts(s); + char buf[200]; + snprintf(buf, 200, "xPSR: %x\r\nPC: %x\r\nLR: %x\r\n", current->sp[0], + current->sp[1], current->sp[2]); + serial_puts(buf); } +__attribute__ ((naked)) void NMI_Handler(void) {} +__attribute__ ((naked)) void HardFault_Handler(void) { GPIOA->BSRR |= (1 << 5); - perror("Hard Fault!"); + //perror("Hard Fault!"); while (1); } +__attribute__ ((naked)) void MemManage_Handler(void) { GPIOA->BSRR |= (1 << 5); @@ -22,6 +39,7 @@ void MemManage_Handler(void) while (1); } +__attribute__ ((naked)) void BusFault_Handler(void) { GPIOA->BSRR |= (1 << 5); @@ -29,6 +47,7 @@ void BusFault_Handler(void) while (1); } +__attribute__ ((naked)) void UsageFault_Handler(void) { GPIOA->BSRR |= (1 << 5); @@ -36,5 +55,6 @@ void UsageFault_Handler(void) while (1); } +__attribute__ ((naked)) void DebugMon_Handler(void) {} -- cgit v1.2.3