druhy semester a nieco s frekvenciou CPU

This commit is contained in:
Filipriec
2026-02-24 14:43:50 +01:00
parent c60f8db3c8
commit 1b4ddcaf6c
13 changed files with 1717 additions and 2 deletions

View File

@@ -4,6 +4,13 @@
use defmt::*;
use embassy_stm32::pac;
use embassy_stm32::Config as CPUConfig;
use embassy_stm32::rcc::PllDiv;
use embassy_stm32::rcc::PllMul;
use embassy_stm32::rcc::PllPreDiv;
use embassy_stm32::rcc::PllSource;
use embassy_stm32::rcc::Pll;
use embassy_stm32::rcc::Sysclk;
use embassy_executor::{Spawner, task};
use embassy_stm32::Config;
use embassy_stm32::gpio::{Output, Level, Speed};
@@ -20,7 +27,24 @@ use {defmt_rtt as _, panic_probe as _};
#[embassy_executor::main]
async fn main(spawner: Spawner) {
info!("boot");
let p = embassy_stm32::init(Config::default());
let mut config = CPUConfig::default();
config.rcc.hsi = true;
config.rcc.sys = Sysclk::PLL1_R;
config.rcc.pll1 = Some(Pll {
source: PllSource::HSI,
// 16 MHz / 1 × 20 / 2 = 160 MHz
prediv: PllPreDiv::DIV1,
mul: PllMul::MUL20,
divp: None,
divq: None,
divr: Some(PllDiv::DIV2),
});
config.enable_independent_io_supply = true;
config.enable_independent_analog_supply = true;
let p = embassy_stm32::init(config);
info!("boot");
// let p = embassy_stm32::init(Config::default());
let mut led = Output::new(p.PA3, Level::Low, Speed::Low);
let _led_ground = Output::new(p.PB0, Level::Low, Speed::Low);
info!("init m8");

View File

@@ -6,7 +6,7 @@ pub const BAUD: u32 = 9_600;
pub const PIPE_HW_TX_SIZE: usize = 1024;
pub const PIPE_HW_RX_SIZE: usize = 1024;
pub const WATCHDOG_TIMEOUT_US: u32 = 2_000_000; // 2 seconds
pub const WATCHDOG_TIMEOUT_US: u32 = 9_000_000; // 2 seconds
pub static PIPE_HW_TX: Pipe<CriticalSectionRawMutex, PIPE_HW_TX_SIZE> = Pipe::new();
pub static PIPE_HW_RX: Pipe<CriticalSectionRawMutex, PIPE_HW_RX_SIZE> = Pipe::new();