diff options
| author | Dario Nieuwenhuis <[email protected]> | 2021-07-12 02:45:42 +0200 |
|---|---|---|
| committer | Dario Nieuwenhuis <[email protected]> | 2021-07-12 03:45:57 +0200 |
| commit | 7547c8d8d6800dd661dcda9f62ba988eefadd38e (patch) | |
| tree | 078e4238487043136b4054e00862e4116f0bdbcc /embassy-macros/src | |
| parent | c210a6efd1f77c4dd6c5df7b31e49c771ceb0cff (diff) | |
rp/timer: add
Diffstat (limited to 'embassy-macros/src')
| -rw-r--r-- | embassy-macros/src/chip/rp.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/embassy-macros/src/chip/rp.rs b/embassy-macros/src/chip/rp.rs index 04211f8f3..d40a44963 100644 --- a/embassy-macros/src/chip/rp.rs +++ b/embassy-macros/src/chip/rp.rs | |||
| @@ -3,10 +3,16 @@ use proc_macro2::TokenStream; | |||
| 3 | use quote::quote; | 3 | use quote::quote; |
| 4 | 4 | ||
| 5 | pub fn generate(embassy_prefix: &ModulePrefix, config: syn::Expr) -> TokenStream { | 5 | pub fn generate(embassy_prefix: &ModulePrefix, config: syn::Expr) -> TokenStream { |
| 6 | let embassy_path = embassy_prefix.append("embassy").path(); | ||
| 6 | let embassy_rp_path = embassy_prefix.append("embassy_rp").path(); | 7 | let embassy_rp_path = embassy_prefix.append("embassy_rp").path(); |
| 7 | quote!( | 8 | quote!( |
| 8 | use #embassy_rp_path::{interrupt, peripherals}; | 9 | use #embassy_rp_path::{interrupt, peripherals}; |
| 9 | 10 | ||
| 10 | let p = #embassy_rp_path::init(#config); | 11 | let p = #embassy_rp_path::init(#config); |
| 12 | |||
| 13 | let alarm = unsafe { <#embassy_rp_path::peripherals::TIMER_ALARM0 as #embassy_path::util::Steal>::steal() }; | ||
| 14 | let mut alarm = #embassy_rp_path::timer::Alarm::new(alarm); | ||
| 15 | let alarm = unsafe { make_static(&mut alarm) }; | ||
| 16 | executor.set_alarm(alarm); | ||
| 11 | ) | 17 | ) |
| 12 | } | 18 | } |
