diff --git a/src/display.rs b/src/display.rs index 0251a5c..d4fe83a 100644 --- a/src/display.rs +++ b/src/display.rs @@ -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> { display: D, @@ -17,12 +16,17 @@ impl> CoMoDisplay { 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(()) }