mirror of
https://github.com/Anshorei/epd-waveshare.git
synced 2026-10-03 22:06:43 +00:00
Add epd2in9bc to README, add example
This commit is contained in:
+1
-1
@@ -30,7 +30,7 @@
|
||||
//! .into_styled(PrimitiveStyle::with_stroke(Black, 1))
|
||||
//! .draw(&mut display);
|
||||
//!
|
||||
//! // Display updated frame
|
||||
//!// Display updated frame
|
||||
//!epd.update_frame(&mut spi, &display.buffer())?;
|
||||
//!epd.display_frame(&mut spi)?;
|
||||
//!
|
||||
|
||||
@@ -1,4 +1,58 @@
|
||||
//! A simple Driver for the Waveshare 2.9" (B/C) E-Ink Display via SPI
|
||||
//!
|
||||
//! # Example for the 2.9" E-Ink Display
|
||||
//!
|
||||
//!```rust, no_run
|
||||
//!# use embedded_hal_mock::*;
|
||||
//!# fn main() -> Result<(), MockError> {
|
||||
//!use embedded_graphics::{
|
||||
//! pixelcolor::BinaryColor::On as Black, prelude::*, primitives::Line, style::PrimitiveStyle,
|
||||
//!};
|
||||
//!use epd_waveshare::{epd2in9bc::*, prelude::*};
|
||||
//!#
|
||||
//!# let expectations = [];
|
||||
//!# let mut spi = spi::Mock::new(&expectations);
|
||||
//!# let expectations = [];
|
||||
//!# let cs_pin = pin::Mock::new(&expectations);
|
||||
//!# let busy_in = pin::Mock::new(&expectations);
|
||||
//!# let dc = pin::Mock::new(&expectations);
|
||||
//!# let rst = pin::Mock::new(&expectations);
|
||||
//!# let mut delay = delay::MockNoop::new();
|
||||
//!
|
||||
//!// Setup EPD
|
||||
//!let mut epd = EPD2in9bc::new(&mut spi, cs_pin, busy_in, dc, rst, &mut delay)?;
|
||||
//!
|
||||
//!// Use display graphics from embedded-graphics
|
||||
//!// This display is for the black/white pixels
|
||||
//!let mut mono_display = Display2in9bc::default();
|
||||
//!
|
||||
//!// Use embedded graphics for drawing
|
||||
//!// A black line
|
||||
//!let _ = Line::new(Point::new(0, 120), Point::new(0, 200))
|
||||
//! .into_styled(PrimitiveStyle::with_stroke(Black, 1))
|
||||
//! .draw(&mut mono_display);
|
||||
//!
|
||||
//!// Use a second display for red/yellow
|
||||
//!let mut chromatic_display = Display2in9bc::default();
|
||||
//!
|
||||
//!// We use `Black` but it will be shown as red/yellow
|
||||
//!let _ = Line::new(Point::new(15, 120), Point::new(15, 200))
|
||||
//! .into_styled(PrimitiveStyle::with_stroke(Black, 1))
|
||||
//! .draw(&mut chromatic_display);
|
||||
//!
|
||||
//!// Display updated frame
|
||||
//!epd.update_color_frame(
|
||||
//! &mut spi,
|
||||
//! &mono_display.buffer(),
|
||||
//! &chromatic_display.buffer()
|
||||
//!)?;
|
||||
//!epd.display_frame(&mut spi)?;
|
||||
//!
|
||||
//!// Set the EPD to sleep
|
||||
//!epd.sleep(&mut spi)?;
|
||||
//!# Ok(())
|
||||
//!# }
|
||||
//!```
|
||||
use embedded_hal::{
|
||||
blocking::{delay::*, spi::Write},
|
||||
digital::v2::*,
|
||||
|
||||
Reference in New Issue
Block a user