45#define EPD_BW_SPI_COLOR_WHITE (0xFF)    
   46#define EPD_BW_SPI_COLOR_BLACK (0x00)    
   64    EPD_BW_SPI_DC_FAIL      = -5,
 
   65    EPD_BW_SPI_RST_FAIL     = -6,
 
   66    EPD_BW_SPI_BUSY_FAIL    = -7,
 
  106    #ifdef MODULE_DISP_DEV 
 
  213                            uint16_t y1, uint16_t y2,
 
Low-level GPIO peripheral driver interface definitions.
 
struct disp_dev disp_dev_t
Forward declaration for display device struct.
 
void epd_bw_spi_update_auto(epd_bw_spi_t *dev)
Update the display with an automatic partial/full refresh.
 
void epd_bw_spi_swreset(epd_bw_spi_t *dev)
Perform a soft reset of the device.
 
void epd_bw_spi_update_full(epd_bw_spi_t *dev)
Update the display with a full refresh.
 
void epd_bw_spi_init_part(epd_bw_spi_t *dev)
Initialise the display for a partial refresh.
 
void epd_bw_spi_update_part(epd_bw_spi_t *dev)
Update the display with a partial refresh.
 
void epd_bw_spi_wake(epd_bw_spi_t *dev)
Wake the device.
 
void epd_bw_spi_fill_pixels(epd_bw_spi_t *dev, uint8_t x1, uint8_t x2, uint16_t y1, uint16_t y2, uint8_t *px)
Fill an area with an array of pixels.
 
void epd_bw_spi_deactivate(epd_bw_spi_t *dev)
Deactivate the display.
 
int epd_bw_spi_init(epd_bw_spi_t *dev, const epd_bw_spi_params_t *params)
Initialise the display.
 
void epd_bw_spi_sleep(epd_bw_spi_t *dev)
Set the display to deep sleep mode.
 
void epd_bw_spi_init_full(epd_bw_spi_t *dev)
Initialise the display for a full refresh.
 
void epd_bw_spi_fill(epd_bw_spi_t *dev, uint8_t x1, uint8_t x2, uint16_t y1, uint16_t y2, uint8_t color)
Fill an area with a single color.
 
void epd_bw_spi_init_auto(epd_bw_spi_t *dev)
Initialise the display for an automatic partial/full refresh.
 
void epd_bw_spi_clear(epd_bw_spi_t *dev)
Clear the entire display.
 
void epd_bw_spi_set_area(epd_bw_spi_t *dev, uint8_t x1, uint8_t x2, uint16_t y1, uint16_t y2)
Set the area in which can be drawn.
 
epd_bw_spi_entry_mode_t
Data entry mode settings.
 
void epd_bw_spi_activate(epd_bw_spi_t *dev)
Activate the display.
 
void epd_bw_spi_write_buffer(epd_bw_spi_t *dev, const uint8_t *buf, size_t len)
Write to the RAM of the epd_bw_spi controller.
 
@ EPD_BW_SPI_Y_DEC_X_DEC
Y decrement, X decrement.
 
@ EPD_BW_SPI_Y_INC_X_INC
Y increment, X increment.
 
@ EPD_BW_SPI_Y_DEC_X_INC
Y decrement, X increment.
 
@ EPD_BW_SPI_Y_INC_X_DEC
Y increment, X decrement.
 
Low-level SPI peripheral driver interface definition.
 
Display controller parameters.
 
const uint8_t lut_size
size of the waveform lookup table
 
const uint16_t size_x
supported number of horizontal pixels
 
const uint8_t * lut_part
lookup table for a partial display refresh
 
const uint8_t * lut_full
lookup table for a full display refresh
 
uint8_t vcom
VCOM voltage level.
 
const uint16_t size_y
supported number of vertical pixels
 
SPI display device initialisation parameters.
 
gpio_t busy_pin
pin connected to the busy line (optional)
 
epd_bw_spi_entry_mode_t entry_mode
data entry mode
 
bool dummy
if device requires a dummy cycle before read
 
gpio_t dc_pin
pin connected to the DC line
 
uint16_t partial_refresh_max
maximum number of partial refreshes to perform before triggering a full refresh
 
spi_t spi
SPI device that the display is connected to.
 
uint16_t size_x
number of horizontal pixels in the display
 
bool busy_value
expected value for the busy pin when the display is busy
 
epd_bw_spi_controller_t controller
display controller of the e-Paper display
 
gpio_t rst_pin
pin connected to the reset line (optional)
 
spi_clk_t spi_clk
SPI clock speed to use.
 
gpio_t cs_pin
pin connected to the CHIP SELECT line
 
uint16_t size_y
number of vertical pixels in the display
 
Device initialisation parameters.
 
uint16_t partial_refresh_count
number of partial refreshes since the last full refresh
 
epd_bw_spi_params_t params
SPI display parameters.