diff options
Diffstat (limited to '02-usart/src')
-rw-r--r-- | 02-usart/src/core/irq.c (renamed from 02-usart/src/core/isr_vector.c) | 40 |
1 files changed, 8 insertions, 32 deletions
diff --git a/02-usart/src/core/isr_vector.c b/02-usart/src/core/irq.c index 9f3f560..c9b93c2 100644 --- a/02-usart/src/core/isr_vector.c +++ b/02-usart/src/core/irq.c @@ -1,4 +1,4 @@ -#include "core/isr_vector.h" +#include "core/irq.h" #include "core/gpio.h" #include "arch.h" @@ -7,15 +7,14 @@ #ifdef ARCH_STM32L4 #define IRQ_RESERVED(n) -#define IRQ(name, n) \ +#define IRQ(name, uname_, n) \ void WEAK name () { \ unhandled_isr(n); \ } -#include "core/isrs.i" +#include "core/isrs.inc" #undef IRQ_RESERVED #undef IRQ - void isr_simple_pin_on() { __IO gpio_port_t* port_b = enable_gpio(GPIO_PORT_B); @@ -24,34 +23,11 @@ void isr_simple_pin_on() pin_on(pin3); } -#define DEFINE_UNHANDLED_ISR(n) \ - int unhandled_isr_##n() \ - { \ - unhandled_isr(n); \ - } - - -/* Flashes wildly. */ -void super_flash() -{ - static int pin_on = 0; - __IO gpio_port_t* port_b = enable_gpio(GPIO_PORT_B); - gpio_output_pin_t pin3 = set_gpio_pin_output(port_b, PIN_3); - - if (pin_on) { - pin_off(pin3); - } else { - pin_on(pin3); - } - - pin_on = !pin_on; -} - #define IRQ_RESERVED(n) 0, -#define IRQ(name, n) name, +#define IRQ(name, uname_, n) name, const void* vectors[] __attribute__((section(".vectors"))) = { (void*)0x2000c000, /* Top of stack at top of sram1. 48k */ -#include "core/isrs.i" +#include "core/isrs.inc" }; #undef IRQ_RESERVED #undef IRQ @@ -63,9 +39,9 @@ const void* vectors[] __attribute__((section(".vectors"))) = { * followed by a pause will occur indicating that the next 8 flashes indicate * the bits of the provided code. * - * The next eight flashes are indicate either a 1 or 0 depending on the length - * of the light being on. The first flash is the least-significant bit, the next - * the second least, the third third least, etc. + * Eoch of the next eight flashes indicate either a 1 or 0 depending on the + * length of flash. The first flash is the least-significant bit, the next the + * second least, the third third least, etc. * * - A quick flash followed by a long pause indicates a 0 bit. * - A "long" flash followed by a equally long pause indicates a 1 bit. |