diff options
author | Damien George <damien.p.george@gmail.com> | 2014-02-26 16:01:54 +0000 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2014-02-26 16:01:54 +0000 |
commit | c4361227ba5d39f48b3f837f2888a7765d2a9887 (patch) | |
tree | cba6b9a606cc23d4329e0458fbf355eefcdda77b /stm/exti.h | |
parent | e70700851a2ec2d08d76fdded592dc833e21252c (diff) | |
parent | ee31f71d39207309b924ac99a7de2d847cb4bbfd (diff) | |
download | micropython-c4361227ba5d39f48b3f837f2888a7765d2a9887.tar.gz micropython-c4361227ba5d39f48b3f837f2888a7765d2a9887.zip |
Merge pull request #318 from dhylands/exti
Add EXTI support
Diffstat (limited to 'stm/exti.h')
-rw-r--r-- | stm/exti.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/stm/exti.h b/stm/exti.h new file mode 100644 index 0000000000..f5b11d0496 --- /dev/null +++ b/stm/exti.h @@ -0,0 +1,29 @@ +// Vectors 0-15 are for regular pins +// Vectors 16-22 are for internal sources. +// +// Use the following constants for the internal sources: + +#define EXTI_PVD_OUTPUT (16) +#define EXTI_RTC_ALARM (17) +#define EXTI_USB_OTG_FS_WAKEUP (18) +#define EXTI_ETH_WAKEUP (19) +#define EXTI_USB_OTG_HS_WAKEUP (20) +#define EXTI_RTC_TIMESTAMP (21) +#define EXTI_RTC_WAKEUP (22) + +#define EXTI_NUM_VECTORS 23 + +void exti_init_early(void); +void exti_init(mp_obj_t mod); + +uint exti_register(mp_obj_t pin_obj, mp_obj_t mode_obj, mp_obj_t trigger_obj, mp_obj_t callback_obj, mp_obj_t param_obj); + +void exti_enable(uint line); +void exti_disable(uint line); +void exti_swint(uint line); + +typedef struct { + mp_obj_t callback; + mp_obj_t param; +} exti_t; + |