dirty display refresh hack

This commit is contained in:
2026-05-21 14:14:59 +02:00
parent 32e0c034d9
commit 2134365f3c

View File

@@ -1,12 +1,11 @@
use embedded_graphics::{
mono_font::{
MonoTextStyle,
ascii::{FONT_10X20},
},
mono_font::{MonoTextStyle, ascii::FONT_10X20},
pixelcolor::BinaryColor,
prelude::{DrawTarget, Point, *},
primitives::{PrimitiveStyle, Rectangle},
text::Text,
};
use heapless::{String, format};
pub struct CoMoDisplay<D: DrawTarget<Color = BinaryColor>> {
display: D,
@@ -17,12 +16,17 @@ impl<D: DrawTarget<Color = BinaryColor>> CoMoDisplay<D> {
Self { display }
}
pub fn draw(&mut self) -> Result<(), D::Error> {
pub fn draw(&mut self, ips: f32) -> Result<(), D::Error> {
let text_style = MonoTextStyle::new(&FONT_10X20, BinaryColor::On);
self.display.clear(BinaryColor::Off)?;
// self.display.clear(BinaryColor::Off)?;
Rectangle::new(Point::new(0, 0), Size::new(200, 50))
.into_styled(PrimitiveStyle::with_fill(BinaryColor::Off))
.draw(&mut self.display)?;
Text::new("18,6 Ips", Point::new(50, 40), text_style).draw(&mut self.display)?;
let txt: String<10> = format!("{0:.1} Ips", ips).unwrap();
Text::new(txt.as_str(), Point::new(50, 40), text_style).draw(&mut self.display)?;
Ok(())
}