stm32l4: Cleanup examples

* Use `cortex_m_rt::entry` for sync examples
* Use `Dbgmcu::enable_all()` everywhere
This commit is contained in:
Timo Kröger 2021-07-29 15:54:11 +02:00
parent 2a4890165d
commit 4ccac69929
9 changed files with 48 additions and 75 deletions

View File

@ -9,29 +9,27 @@
#[path = "../example_common.rs"] #[path = "../example_common.rs"]
mod example_common; mod example_common;
use defmt::panic;
use embassy::executor::Spawner;
use embassy::time::Delay; use embassy::time::Delay;
use embassy_stm32::adc::{Adc, Resolution}; use embassy_stm32::adc::{Adc, Resolution};
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::pac;
use example_common::*; use example_common::*;
#[embassy::main] #[cortex_m_rt::entry]
async fn main(_spawner: Spawner, p: Peripherals) { fn main() -> ! {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
Dbgmcu::enable_all();
pac::RCC.ccipr().modify(|w| { pac::RCC.ccipr().modify(|w| {
w.set_adcsel(0b11); w.set_adcsel(0b11);
}); });
pac::DBGMCU.cr().modify(|w| {
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
pac::RCC.ahb2enr().modify(|w| w.set_adcen(true)); pac::RCC.ahb2enr().modify(|w| w.set_adcen(true));
} }
let p = embassy_stm32::init(Default::default());
let mut adc = Adc::new(p.ADC1, &mut Delay); let mut adc = Adc::new(p.ADC1, &mut Delay);
//adc.enable_vref(); //adc.enable_vref();
adc.set_resolution(Resolution::EightBit); adc.set_resolution(Resolution::EightBit);

View File

@ -11,8 +11,9 @@ mod example_common;
use defmt::panic; use defmt::panic;
use embassy::executor::Spawner; use embassy::executor::Spawner;
use embassy::time::{Duration, Timer}; use embassy::time::{Duration, Timer};
use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::gpio::{Level, Output, Speed}; use embassy_stm32::gpio::{Level, Output, Speed};
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::Peripherals;
use embedded_hal::digital::v2::OutputPin; use embedded_hal::digital::v2::OutputPin;
use example_common::*; use example_common::*;
@ -21,11 +22,7 @@ async fn main(_spawner: Spawner, p: Peripherals) {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let mut led = Output::new(p.PB14, Level::High, Speed::Low); let mut led = Output::new(p.PB14, Level::High, Speed::Low);

View File

@ -8,25 +8,21 @@
#[path = "../example_common.rs"] #[path = "../example_common.rs"]
mod example_common; mod example_common;
use defmt::panic; use embassy_stm32::dbgmcu::Dbgmcu;
use embassy::executor::Spawner;
use embassy_stm32::gpio::{Input, Pull}; use embassy_stm32::gpio::{Input, Pull};
use embassy_stm32::{pac, Peripherals};
use embedded_hal::digital::v2::InputPin; use embedded_hal::digital::v2::InputPin;
use example_common::*; use example_common::*;
#[embassy::main] #[cortex_m_rt::entry]
async fn main(_spawner: Spawner, p: Peripherals) { fn main() -> ! {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let p = embassy_stm32::init(Default::default());
let button = Input::new(p.PC13, Pull::Up); let button = Input::new(p.PC13, Pull::Up);
loop { loop {

View File

@ -10,9 +10,10 @@
mod example_common; mod example_common;
use defmt::panic; use defmt::panic;
use embassy::executor::Spawner; use embassy::executor::Spawner;
use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::exti::ExtiInput; use embassy_stm32::exti::ExtiInput;
use embassy_stm32::gpio::{Input, Pull}; use embassy_stm32::gpio::{Input, Pull};
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::Peripherals;
use embassy_traits::gpio::{WaitForFallingEdge, WaitForRisingEdge}; use embassy_traits::gpio::{WaitForFallingEdge, WaitForRisingEdge};
use example_common::*; use example_common::*;
@ -21,11 +22,7 @@ async fn main(_spawner: Spawner, p: Peripherals) {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let button = Input::new(p.PC13, Pull::Up); let button = Input::new(p.PC13, Pull::Up);

View File

@ -9,28 +9,26 @@
#[path = "../example_common.rs"] #[path = "../example_common.rs"]
mod example_common; mod example_common;
use defmt::panic;
use embassy::executor::Spawner;
use embassy_stm32::dac::{Channel, Dac, Value}; use embassy_stm32::dac::{Channel, Dac, Value};
use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::gpio::NoPin; use embassy_stm32::gpio::NoPin;
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::pac;
use example_common::*; use example_common::*;
#[embassy::main] #[cortex_m_rt::entry]
async fn main(_spawner: Spawner, p: Peripherals) { fn main() -> ! {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
pac::RCC.apb1enr1().modify(|w| { pac::RCC.apb1enr1().modify(|w| {
w.set_dac1en(true); w.set_dac1en(true);
}); });
} }
let p = embassy_stm32::init(Default::default());
let mut dac = Dac::new(p.DAC1, p.PA4, NoPin); let mut dac = Dac::new(p.DAC1, p.PA4, NoPin);
loop { loop {

View File

@ -9,29 +9,25 @@
#[path = "../example_common.rs"] #[path = "../example_common.rs"]
mod example_common; mod example_common;
use defmt::panic; use embassy_stm32::dbgmcu::Dbgmcu;
use embassy::executor::Spawner;
use embassy_stm32::dma::NoDma; use embassy_stm32::dma::NoDma;
use embassy_stm32::gpio::{Level, Output, Speed}; use embassy_stm32::gpio::{Level, Output, Speed};
use embassy_stm32::spi::{Config, Spi}; use embassy_stm32::spi::{Config, Spi};
use embassy_stm32::time::Hertz; use embassy_stm32::time::Hertz;
use embassy_stm32::{pac, Peripherals};
use embedded_hal::blocking::spi::Transfer; use embedded_hal::blocking::spi::Transfer;
use embedded_hal::digital::v2::OutputPin; use embedded_hal::digital::v2::OutputPin;
use example_common::*; use example_common::*;
#[embassy::main] #[cortex_m_rt::entry]
async fn main(_spawner: Spawner, p: Peripherals) { fn main() -> ! {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let p = embassy_stm32::init(Default::default());
let mut spi = Spi::new( let mut spi = Spi::new(
p.SPI3, p.SPI3,
p.PC10, p.PC10,

View File

@ -11,10 +11,11 @@ mod example_common;
use defmt::panic; use defmt::panic;
use embassy::executor::Spawner; use embassy::executor::Spawner;
use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed}; use embassy_stm32::gpio::{Input, Level, Output, Pull, Speed};
use embassy_stm32::spi::{Config, Spi}; use embassy_stm32::spi::{Config, Spi};
use embassy_stm32::time::Hertz; use embassy_stm32::time::Hertz;
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::Peripherals;
use embassy_traits::spi::FullDuplex; use embassy_traits::spi::FullDuplex;
use embedded_hal::digital::v2::{InputPin, OutputPin}; use embedded_hal::digital::v2::{InputPin, OutputPin};
use example_common::*; use example_common::*;
@ -24,11 +25,7 @@ async fn main(_spawner: Spawner, p: Peripherals) {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let mut spi = Spi::new( let mut spi = Spi::new(

View File

@ -8,26 +8,23 @@
#[path = "../example_common.rs"] #[path = "../example_common.rs"]
mod example_common; mod example_common;
use cortex_m::prelude::_embedded_hal_blocking_serial_Write;
use defmt::panic; use embassy_stm32::dbgmcu::Dbgmcu;
use embassy::executor::Spawner;
use embassy_stm32::dma::NoDma; use embassy_stm32::dma::NoDma;
use embassy_stm32::usart::{Config, Uart}; use embassy_stm32::usart::{Config, Uart};
use embassy_stm32::{pac, Peripherals}; use embedded_hal::blocking::serial::Write;
use example_common::*; use example_common::*;
#[embassy::main] #[cortex_m_rt::entry]
async fn main(_spawner: Spawner, p: Peripherals) { fn main() -> ! {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let p = embassy_stm32::init(Default::default());
let config = Config::default(); let config = Config::default();
let mut usart = Uart::new(p.UART4, p.PA1, p.PA0, NoDma, NoDma, config); let mut usart = Uart::new(p.UART4, p.PA1, p.PA0, NoDma, NoDma, config);

View File

@ -11,9 +11,10 @@ mod example_common;
use core::fmt::Write; use core::fmt::Write;
use defmt::panic; use defmt::panic;
use embassy::executor::Spawner; use embassy::executor::Spawner;
use embassy_stm32::dbgmcu::Dbgmcu;
use embassy_stm32::dma::NoDma; use embassy_stm32::dma::NoDma;
use embassy_stm32::usart::{Config, Uart}; use embassy_stm32::usart::{Config, Uart};
use embassy_stm32::{pac, Peripherals}; use embassy_stm32::Peripherals;
use embassy_traits::uart::Write as _; use embassy_traits::uart::Write as _;
use example_common::*; use example_common::*;
use heapless::String; use heapless::String;
@ -23,11 +24,7 @@ async fn main(_spawner: Spawner, p: Peripherals) {
info!("Hello World!"); info!("Hello World!");
unsafe { unsafe {
pac::DBGMCU.cr().modify(|w| { Dbgmcu::enable_all();
w.set_dbg_sleep(true);
w.set_dbg_standby(true);
w.set_dbg_stop(true);
});
} }
let config = Config::default(); let config = Config::default();