Loading...
Searching...
No Matches

Generic black/white e-paper/e-ink display SPI driver. More...

Detailed Description

Generic black/white e-paper/e-ink display SPI driver.

Author
Silke Hofstra silke.nosp@m.@slx.nosp@m.h.eu

Definition in file epd_bw_spi.h.

#include "periph/spi.h"
#include "periph/gpio.h"
+ Include dependency graph for epd_bw_spi.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  epd_bw_spi_controller_t
 Display controller parameters. More...
 
struct  epd_bw_spi_params_t
 SPI display device initialisation parameters. More...
 
struct  epd_bw_spi_t
 Device initialisation parameters. More...
 

Macros

#define EPD_BW_SPI_COLOR_WHITE   (0xFF)
 White (8x1 pixels)
 
#define EPD_BW_SPI_COLOR_BLACK   (0x00)
 Black (8x1 pixels)
 

Enumerations

enum  epd_bw_spi_entry_mode_t { EPD_BW_SPI_Y_DEC_X_DEC = 0x0 , EPD_BW_SPI_Y_DEC_X_INC = 0x1 , EPD_BW_SPI_Y_INC_X_DEC = 0x2 , EPD_BW_SPI_Y_INC_X_INC = 0x3 }
 Data entry mode settings. More...
 
enum  { EPD_BW_SPI_DC_FAIL = -5 , EPD_BW_SPI_RST_FAIL = -6 , EPD_BW_SPI_BUSY_FAIL = -7 }
 Additional status codes for black/white SPI e-paper displays. More...
 

Functions

int epd_bw_spi_init (epd_bw_spi_t *dev, const epd_bw_spi_params_t *params)
 Initialise the display.
 
void epd_bw_spi_activate (epd_bw_spi_t *dev)
 Activate the display.
 
void epd_bw_spi_deactivate (epd_bw_spi_t *dev)
 Deactivate the display.
 
void epd_bw_spi_init_full (epd_bw_spi_t *dev)
 Initialise the display for a full refresh.
 
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_init_auto (epd_bw_spi_t *dev)
 Initialise the display for an automatic partial/full refresh.
 
void epd_bw_spi_update_auto (epd_bw_spi_t *dev)
 Update the display with an automatic partial/full refresh.
 
void epd_bw_spi_clear (epd_bw_spi_t *dev)
 Clear the entire display.
 
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_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_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.
 
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.
 
void epd_bw_spi_sleep (epd_bw_spi_t *dev)
 Set the display to deep sleep mode.
 
void epd_bw_spi_wake (epd_bw_spi_t *dev)
 Wake the device.
 
void epd_bw_spi_swreset (epd_bw_spi_t *dev)
 Perform a soft reset of the device.