|
|
|
@ -1,30 +1,7 @@
|
|
|
|
|
//! A simple Driver for the Waveshare 4.2" E-Ink Display via SPI
|
|
|
|
|
//! A simple Driver for the Waveshare 2.9" E-Ink Display via SPI
|
|
|
|
|
//!
|
|
|
|
|
//! The other Waveshare E-Ink Displays should be added later on
|
|
|
|
|
//!
|
|
|
|
|
//! Build with the help of documentation/code from [Waveshare](https://www.waveshare.com/wiki/4.2inch_e-Paper_Module),
|
|
|
|
|
//! [Ben Krasnows partial Refresh tips](https://benkrasnow.blogspot.de/2017/10/fast-partial-refresh-on-42-e-paper.html) and
|
|
|
|
|
//! the driver documents in the `pdfs`-folder as orientation.
|
|
|
|
|
//!
|
|
|
|
|
//! This driver was built using [`embedded-hal`] traits.
|
|
|
|
|
//!
|
|
|
|
|
//! [`embedded-hal`]: https://docs.rs/embedded-hal/~0.1
|
|
|
|
|
//!
|
|
|
|
|
//! # Requirements
|
|
|
|
|
//!
|
|
|
|
|
//! ### SPI
|
|
|
|
|
//!
|
|
|
|
|
//! - MISO is not connected/available
|
|
|
|
|
//! - SPI_MODE_0 is used (CPHL = 0, CPOL = 0)
|
|
|
|
|
//! - 8 bits per word, MSB first
|
|
|
|
|
//! - Max. Speed tested was 8Mhz but more should be possible
|
|
|
|
|
//!
|
|
|
|
|
//! ### Other....
|
|
|
|
|
//!
|
|
|
|
|
//! - Buffersize: Wherever a buffer is used it always needs to be of the size: `width / 8 * length`,
|
|
|
|
|
//! where width and length being either the full e-ink size or the partial update window size
|
|
|
|
|
//!
|
|
|
|
|
//! # Examples
|
|
|
|
|
//! # Examples from the 4.2" Display. It should work the same for the 2.9" one.
|
|
|
|
|
//!
|
|
|
|
|
//! ```ignore
|
|
|
|
|
//! let mut epd4in2 = EPD4in2::new(spi, cs, busy, dc, rst, delay).unwrap();
|
|
|
|
@ -41,13 +18,6 @@
|
|
|
|
|
//!
|
|
|
|
|
//! epd4in2.sleep();
|
|
|
|
|
//! ```
|
|
|
|
|
//!
|
|
|
|
|
//!
|
|
|
|
|
//!
|
|
|
|
|
//! BE CAREFUL! The Partial Drawing can "destroy" your display.
|
|
|
|
|
//! It needs more testing first.
|
|
|
|
|
//!
|
|
|
|
|
//! Is initalised with slow full LUT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
use hal::{
|
|
|
|
|