From 663732d85abbae400f2dbab2c411802a5b60e9b1 Mon Sep 17 00:00:00 2001 From: Dion Dokter Date: Sat, 15 Jun 2024 13:51:16 +0200 Subject: Things work! --- examples/stm32u0/src/bin/lcd.rs | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) (limited to 'examples') diff --git a/examples/stm32u0/src/bin/lcd.rs b/examples/stm32u0/src/bin/lcd.rs index 7a7c3a8a1..5551dd819 100644 --- a/examples/stm32u0/src/bin/lcd.rs +++ b/examples/stm32u0/src/bin/lcd.rs @@ -3,7 +3,7 @@ use defmt::*; use embassy_executor::Spawner; -use embassy_stm32::lcd::{Bias, Config, Duty, Lcd, VoltageSource}; +use embassy_stm32::{lcd::{Bias, Config, Duty, Lcd, VoltageSource}, time::Hertz}; use {defmt_rtt as _, panic_probe as _}; #[embassy_executor::main] @@ -22,7 +22,7 @@ async fn main(_spawner: Spawner) { divq: None, divr: Some(PllRDiv::DIV2), // 112 / 2 = 56 MHz }); - config.rcc.ls = LsConfig::default_lse(); + config.rcc.ls = LsConfig::default_lsi(); } let p = embassy_stm32::init(config); @@ -31,46 +31,53 @@ async fn main(_spawner: Spawner) { let mut config = Config::default(); config.bias = Bias::Third; config.duty = Duty::Quarter; + config.target_fps = Hertz(60); let mut lcd = Lcd::new( p.LCD, config, + p.PC3, [ - p.PC4.into(), - p.PC5.into(), + p.PA8.into(), + p.PA9.into(), + p.PA10.into(), p.PB1.into(), - p.PE7.into(), - p.PE8.into(), - p.PE9.into(), + p.PB9.into(), p.PB11.into(), p.PB14.into(), p.PB15.into(), - p.PD8.into(), - p.PD9.into(), - p.PD12.into(), - p.PB9.into(), - p.PA10.into(), - p.PA9.into(), - p.PA8.into(), - p.PD13.into(), + p.PC4.into(), + p.PC5.into(), p.PC6.into(), p.PC8.into(), p.PC9.into(), p.PC10.into(), + p.PC11.into(), + p.PD8.into(), + p.PD9.into(), + p.PD12.into(), + p.PD13.into(), p.PD0.into(), p.PD1.into(), p.PD3.into(), p.PD4.into(), p.PD5.into(), p.PD6.into(), - p.PC11.into(), + p.PE7.into(), + p.PE8.into(), + p.PE9.into(), ], ); loop { defmt::info!("Writing frame"); lcd.write_frame(&[0xAAAAAAAA; 16]); + + embassy_time::Timer::after_secs(1).await; + defmt::info!("Writing frame"); lcd.write_frame(&[!0xAAAAAAAA; 16]); + + embassy_time::Timer::after_secs(1).await; } } -- cgit