diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2020-12-05 01:53:33 -0700 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2020-12-05 01:53:33 -0700 |
commit | de81911ef4c15a9518acf32f61ad2d7d0e2f156f (patch) | |
tree | 4ca96493f9b07cb2e63c7d0c4abe49d321ea40d8 /include/arch/stm32l4xxx/peripherals/exti.h | |
parent | 04da2a442392c5bf3dcf4ca4611f42af7b35e596 (diff) | |
download | stm32l4-de81911ef4c15a9518acf32f61ad2d7d0e2f156f.tar.gz stm32l4-de81911ef4c15a9518acf32f61ad2d7d0e2f156f.tar.bz2 stm32l4-de81911ef4c15a9518acf32f61ad2d7d0e2f156f.zip |
Got a very basic external interrupt to work.
Diffstat (limited to 'include/arch/stm32l4xxx/peripherals/exti.h')
-rw-r--r-- | include/arch/stm32l4xxx/peripherals/exti.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/include/arch/stm32l4xxx/peripherals/exti.h b/include/arch/stm32l4xxx/peripherals/exti.h new file mode 100644 index 0000000..6776d10 --- /dev/null +++ b/include/arch/stm32l4xxx/peripherals/exti.h @@ -0,0 +1,35 @@ +#ifndef PERIPHERALS_EXTI_H_ +#define PERIPHERALS_EXTI_H_ + +#include "arch.h" + +#define EXTI (*(exti_regs_t*)(EXTI_BASE)) + +typedef struct { +#define exti_im_n(n) (1 << (n)) + uint32_t im_r1; /* Interrupt mask register 1. */ + +#define exti_em_n(n) (1 << (n)) + uint32_t em_r1; /* Event mask register 1. */ + +#define exti_rt_n(n) (1 << (n)) + uint32_t rts_r1; /* Rising trigger selection register 1. */ + +#define exti_ft_n(n) (1 << (n)) + uint32_t fts_r1; /* Falling trigger selection register 1. */ + +#define exti_swi_n(n) (1 << (n)) + uint32_t swie_r1; /* Software interrupt event register 1. */ + +#define exti_pif_n(n) (1 << (n)) + uint32_t p_r1; /* Pending register 1. */ + + uint32_t im_r2; /* Interrupt mask register 2. */ + uint32_t em_r2; /* Event mask register 2. */ + uint32_t rts_r2; /* Rising trigger selection register 2. */ + uint32_t fts_r2; /* Falling trigger selection register 2. */ + uint32_t swie_r2; /* Software interrupt event register 2. */ + uint32_t p_r2; /* Pending register 2. */ +} exti_regs_t; + +#endif /* PERIPHERALS_EXTI_H_ */ |