Skip to main content

Crate ssd1677

Crate ssd1677 

Source
Expand description

SSD1677 E-Paper Display Driver

A driver for the SSD1677 e-paper display controller supporting displays up to 960x680 pixels.

§Features

  • no_std compatible
  • embedded-hal v1.0 support
  • embedded-graphics integration (with graphics feature)
  • Configurable display dimensions
  • Full and fast refresh modes
  • Custom LUT support
  • Rotation support

§Usage

use core::convert::Infallible;
use embedded_hal::delay::DelayNs;
use embedded_hal::digital::{InputPin, OutputPin};
use embedded_hal::spi::{Operation, SpiDevice};
use ssd1677::{Builder, Dimensions, Display, Interface, Rotation};

let interface = Interface::new(spi, dc, rst, busy);
let dims = match Dimensions::new(480, 800) {
    Ok(dims) => dims,
    Err(_) => return,
};
let config = match Builder::new().dimensions(dims).rotation(Rotation::Rotate0).build() {
    Ok(config) => config,
    Err(_) => return,
};

let mut display = Display::new(interface, config);
let _ = display.reset(&mut delay);

Re-exports§

pub use color::Color;
pub use config::Builder;
pub use config::Config;
pub use config::Dimensions;
pub use config::MAX_GATE_OUTPUTS;
pub use config::MAX_SOURCE_OUTPUTS;
pub use config::RamXAddressing;
pub use config::Rotation;
pub use display::DeepSleepMode;
pub use display::Display;
pub use display::RefreshMode;
pub use display::Region;
pub use display::UpdateRegion;
pub use error::BuilderError;
pub use error::Error;
pub use interface::InterfaceError;
pub use interface::DEFAULT_BUSY_TIMEOUT_MS;
pub use interface::DisplayInterface;
pub use interface::Interface;
pub use graphics::GraphicDisplay;

Modules§

color
Color types for tri-color e-paper displays Color types for tri-color e-paper displays
command
SSD1677 command definitions SSD1677 command definitions
config
Display configuration types and builder Display configuration types and builder
display
Core display operations Core display operations
error
Error types for the driver Error types for the driver
graphics
Graphics support via embedded-graphics (requires graphics feature) Graphics support via embedded-graphics
interface
Hardware interface abstraction Hardware interface abstraction
lut
Look-Up Tables for refresh modes Look-Up Tables (LUTs) for custom refresh waveforms
rotation
Coordinate rotation utilities Coordinate rotation utilities