diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2020-11-20 09:55:37 -0700 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2020-11-20 09:55:37 -0700 |
commit | 3b6018348d51c77f53adca90e498d7bf268c91c9 (patch) | |
tree | 45c52307d48a74b2ae57006d3b40f9a34c61c9ce /02-usart/include/core/irq.h | |
parent | d82837cb93b8675a6e589548e157f31e41aaa039 (diff) | |
download | stm32l4-3b6018348d51c77f53adca90e498d7bf268c91c9.tar.gz stm32l4-3b6018348d51c77f53adca90e498d7bf268c91c9.tar.bz2 stm32l4-3b6018348d51c77f53adca90e498d7bf268c91c9.zip |
Move around the isr_vector files to be more consistent with the C standard and the rest of the project.
Diffstat (limited to '02-usart/include/core/irq.h')
-rw-r--r-- | 02-usart/include/core/irq.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/02-usart/include/core/irq.h b/02-usart/include/core/irq.h new file mode 100644 index 0000000..ae1126d --- /dev/null +++ b/02-usart/include/core/irq.h @@ -0,0 +1,33 @@ +#ifndef CORE_IRQ_H__ +#define CORE_IRQ_H__ + +#include <stdint.h> + +/* + * Include file for interrupt service routines. + */ + +typedef enum { +#define IRQ_RESERVED(n) +#define IRQ(name_, uname, num) \ + IRQ_##uname = num, +#include "core/isrs.inc" +#undef IRQ +#undef IRQ_RESERVED +} interrupt_t; + +/* + * The interrupt service routines. These link in the function `main` as the + * main function. + */ +extern const void* vectors[]; + +/* + * Defines an error state. This loops forever and defines a distinct flashing + * pattern to let the user know an unhandled ISR happened. + */ +void unhandled_isr(uint8_t val); + +void isr_simple_pin_on(); + +#endif /* CORE_IRQ_H_ */ |