Fixes an issue where one could double take the cortex_m Peripheral

Added qemu test

Added comment

Typo

Add cfg for homogeneous

More cfg

Now multicore working

Add .run file
This commit is contained in:
Emil Fresk 2020-06-30 21:23:35 +02:00
parent 8a4f9c6b8a
commit d9e8b68662
4 changed files with 25 additions and 0 deletions

View file

@ -43,6 +43,13 @@ pub fn codegen(
let mut core: rtic::export::Peripherals = core::mem::transmute(());
));
if app.args.cores == 1 {
stmts.push(quote!(
// To set the variable in cortex_m so the peripherals cannot be taken multiple times
let _ = cortex_m::Peripherals::steal();
));
}
let device = extra.device;
let nvic_prio_bits = quote!(#device::NVIC_PRIO_BITS);