SSD1675A

#include <eglib/display/ssd1675a.h>

Types

enum ssd1675a_first_output_gate

First output Gate.

SSD1675A_FIRST_OUTPUT_GATE_G0_G1

G0, G1, G2, G3… (POR)

SSD1675A_FIRST_OUTPUT_GATE_G1_G0

G1, G0, G3, G2…

enum ssd1675a_scanning_order_of_gate_driver

Scanning order of gate driver.

SSD1675A_SCANNING_ORDER_OF_GATE_DRIVER_G0_G1

G0, G1, G2, G3…295 (POR)

SSD1675A_SCANNING_ORDER_OF_GATE_DRIVER_G0_G2

G0, G2, G4…G294, G1, G3,…G295

enum ssd1675a_tb

TB.

SSD1675A_TB_SCAN_FROM_G0_TO_G295

Scan from G0 to G295 (POR)

SSD1675A_TB_SCAN_FROM_G295_TO_G0

Scan from G295 to G0

enum ssd1675a_gate_driving_voltage

Gate driving voltage

SSD1675A_GATE_DRIVING_VOLTAGE_10V

10V

SSD1675A_GATE_DRIVING_VOLTAGE_10_5V

10.5V

SSD1675A_GATE_DRIVING_VOLTAGE_11V

11V

SSD1675A_GATE_DRIVING_VOLTAGE_11_5V

11.5V

SSD1675A_GATE_DRIVING_VOLTAGE_12V

12V

SSD1675A_GATE_DRIVING_VOLTAGE_12_5V

12.5V

SSD1675A_GATE_DRIVING_VOLTAGE_13V

13V

SSD1675A_GATE_DRIVING_VOLTAGE_13_5V

13.5V

SSD1675A_GATE_DRIVING_VOLTAGE_14V

14V

SSD1675A_GATE_DRIVING_VOLTAGE_14_5V

14.5V

SSD1675A_GATE_DRIVING_VOLTAGE_15V

15V

SSD1675A_GATE_DRIVING_VOLTAGE_15_5V

15.5V

SSD1675A_GATE_DRIVING_VOLTAGE_16V

16V

SSD1675A_GATE_DRIVING_VOLTAGE_16_5V

16.5V

SSD1675A_GATE_DRIVING_VOLTAGE_17V

17V

SSD1675A_GATE_DRIVING_VOLTAGE_17_5V

17.5V

SSD1675A_GATE_DRIVING_VOLTAGE_18V

18V

SSD1675A_GATE_DRIVING_VOLTAGE_18_5V

18.5V

SSD1675A_GATE_DRIVING_VOLTAGE_19V

19V (POR)

SSD1675A_GATE_DRIVING_VOLTAGE_19_5V

19.5V

SSD1675A_GATE_DRIVING_VOLTAGE_20V

20V

enum ssd1675a_source_driving_voltage_vsh

Source driving voltage VSH1 / VSH2

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_4V

2.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_5V

2.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_6V

2.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_7V

2.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_8V

2.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_2_9V

2.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3V

3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_1V

3.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_2V

3.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_3V

3.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_4V

3.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_5V

3.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_6V

3.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_7V

3.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_8V

3.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_3_9V

3.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4V

4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_1V

4.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_2V

4.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_3V

4.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_4V

4.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_5V

4.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_6V

4.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_7V

4.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_8V

4.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_4_9V

4.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5V

5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_1V

5.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_2V

5.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_3V

5.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_4V

5.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_5V

5.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_6V

5.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_7V

5.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_8V

5.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_5_9V

5.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6V

6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_1V

6.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_2V

6.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_3V

6.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_4V

6.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_5V

6.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_6V

6.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_7V

6.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_8V

6.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_6_9V

6.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7V

7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_1V

7.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_2V

7.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_3V

7.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_4V

7.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_5V

7.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_6V

7.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_7V

7.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_8V

7.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_7_9V

7.9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8V

8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_1V

8.1V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_2V

8.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_3V

8.3V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_4V

8.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_5V

8.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_6V

8.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_7V

8.7V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_8_8V

8.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_9V

9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_9_2V

9.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_9_4V

9.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_9_6V

9.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_9_8V

9.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_10V

10V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_10_2V

10.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_10_4V

10.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_10_6V

10.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_10_8V

10.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_11V

11V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_11_2V

11.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_11_4V

11.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_11_6V

11.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_11_8V

11.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_12V

12V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_12_2V

12.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_12_4V

12.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_12_6V

12.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_12_8V

12.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_13V

13V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_13_2V

13.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_13_4V

13.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_13_6V

13.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_13_8V

13.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_14V

14V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_14_2V

14.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_14_4V

14.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_14_6V

14.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_14_8V

14.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_15V

15V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_15_2V

15.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_15_4V

15.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_15_6V

15.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_15_8V

15.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_16V

16V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_16_2V

16.2V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_16_4V

16.4V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_16_6V

16.6V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_16_8V

16.8V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSH_17V

17V

enum ssd1675a_source_driving_voltage_vsl

Source driving voltage VSL

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_9V

-9V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_9_5V

-9.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_10V

-10V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_10_5V

-10.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_11V

-11V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_11_5V

-11.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_12V

-12V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_12_5V

-12.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_13V

-13V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_13_5V

-13.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_14V

-14V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_14_5V

-14.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_15V

-15V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_15_5V

-15.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_16V

-16V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_16_5V

-16.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_17V

-17V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_17_5V

-17.5V

SSD1675A_SOURCE_DRIVING_VOLTAGE_VSL_MINUS_18V

-18V

enum ssd1675a_booster_soft_start_phase_gdr_min_off_time

Booster Soft Start Phase Min Off Time Setting of GDR

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_2_6

2.6

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_3_2

3.2

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_3_9

3.9

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_4_6

4.6

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_5_4

5.4

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_6_3

6.3

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_7_3

7.3

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_8_4

8.4

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_9_8

9.8

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_11_5

11.5

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_13_8

13.8

SSD1675A_BOOSTER_SOFT_START_PHASE_GDR_MIN_OFF_TIME_16_5

16.5

enum ssd1675a_booster_soft_start_phase_duration

Booster Soft Start Phase Duration

SSD1675A_BOOSTER_SOFT_START_PHASE_DURATION_10MS

10ms

SSD1675A_BOOSTER_SOFT_START_PHASE_DURATION_20MS

20ms

SSD1675A_BOOSTER_SOFT_START_PHASE_DURATION_30MS

30ms

SSD1675A_BOOSTER_SOFT_START_PHASE_DURATION_40MS

40ms

enum ssd1675a_vcom_register

VCOM Register

SSD1675A_VCOM_REGISTER_MINUS_0_2V

-0.2V

SSD1675A_VCOM_REGISTER_MINUS_0_3V

-0.3V

SSD1675A_VCOM_REGISTER_MINUS_0_4V

-0.4V

SSD1675A_VCOM_REGISTER_MINUS_0_5V

-0.5V

SSD1675A_VCOM_REGISTER_MINUS_0_6V

-0.6V

SSD1675A_VCOM_REGISTER_MINUS_0_7V

-0.7V

SSD1675A_VCOM_REGISTER_MINUS_0_8V

-0.8V

SSD1675A_VCOM_REGISTER_MINUS_0_9V

-0.9V

SSD1675A_VCOM_REGISTER_MINUS_1V

-1V

SSD1675A_VCOM_REGISTER_MINUS_1_1V

-1.1V

SSD1675A_VCOM_REGISTER_MINUS_1_2V

-1.2V

SSD1675A_VCOM_REGISTER_MINUS_1_3V

-1.3V

SSD1675A_VCOM_REGISTER_MINUS_1_4V

-1.4V

SSD1675A_VCOM_REGISTER_MINUS_1_5V

-1.5V

SSD1675A_VCOM_REGISTER_MINUS_1_6V

-1.6V

SSD1675A_VCOM_REGISTER_MINUS_1_7V

-1.7V

SSD1675A_VCOM_REGISTER_MINUS_1_8V

-1.8V

SSD1675A_VCOM_REGISTER_MINUS_1_9V

-1.9V

SSD1675A_VCOM_REGISTER_MINUS_2V

-2V

SSD1675A_VCOM_REGISTER_MINUS_2_1V

-2.1V

SSD1675A_VCOM_REGISTER_MINUS_2_2V

-2.2V

SSD1675A_VCOM_REGISTER_MINUS_2_3V

-2.3V

SSD1675A_VCOM_REGISTER_MINUS_2_4V

-2.4V

SSD1675A_VCOM_REGISTER_MINUS_2_5V

-2.5V

SSD1675A_VCOM_REGISTER_MINUS_2_6V

-2.6V

SSD1675A_VCOM_REGISTER_MINUS_2_7V

-2.7V

SSD1675A_VCOM_REGISTER_MINUS_2_8V

-2.8V

SSD1675A_VCOM_REGISTER_MINUS_2_9V

-2.9V

SSD1675A_VCOM_REGISTER_MINUS_3V

-3V

ssd1675a_lut_t

LUT

enum ssd1675a_border_waveform_vdb_option

Border Waveform for VBD Option

SSD1675A_BORDER_WAVEFORM_VDB_OPTION_GS_TRANSITION

GS Transition

SSD1675A_BORDER_WAVEFORM_VDB_OPTION_FIX_LEVEL

Fix Level

SSD1675A_BORDER_WAVEFORM_VDB_OPTION_VCOM

VCOM

SSD1675A_BORDER_WAVEFORM_VDB_OPTION_HiZ

HiZ (POR)

enum ssd1675a_border_waveform_vdb_fix_level

Border Waveform for VBD Fix Level

SSD1675A_BORDER_WAVEFORM_VDB_FIX_LEVEL_VSS

VSS (POR)

SSD1675A_BORDER_WAVEFORM_VDB_FIX_LEVEL_VSH1

VSH1

SSD1675A_BORDER_WAVEFORM_VDB_FIX_LEVEL_VSL

VSL

SSD1675A_BORDER_WAVEFORM_VDB_FIX_LEVEL_VSH2

VSH2

enum ssd1675a_border_waveform_vdb_gs_transition

Border Waveform for VBD GS Transition

SSD1675A_BORDER_WAVEFORM_VDB_GS_TRANSITION_LUT0

LUT0 (POR)

SSD1675A_BORDER_WAVEFORM_VDB_GS_TRANSITION_LUT1

LUT1

SSD1675A_BORDER_WAVEFORM_VDB_GS_TRANSITION_LUT2

LUT2

SSD1675A_BORDER_WAVEFORM_VDB_GS_TRANSITION_LUT3

LUT3

Configuration

ssd1675a_config_t

Configuration for ssd1675a.

See also

eglib_Init().

coordinate_t width

Display width.

coordinate_t height

Display height.

uint16_t mux_gate_lines

MUX Gate lines setting (POR=296)

enum ssd1675a_first_output_gate first_output_gate

First output Gate.

enum ssd1675a_scanning_order_of_gate_driver scanning_order_of_gate_driver

Scanning order of gate driver.

enum ssd1675a_tb tb

TB

enum ssd1675a_gate_driving_voltage gate_driving_voltage

Gate driving voltage

enum ssd1675a_source_driving_voltage_vsh source_driving_voltage_vsh1

Source driving voltage VSH1

enum ssd1675a_source_driving_voltage_vsh source_driving_voltage_vsh2

Source driving voltage VSH2

enum ssd1675a_source_driving_voltage_vsl source_driving_voltage_vsl

Source driving voltage VSL

uint16_t gate_scan_start_position

Gate scan start position from 0 to 295 (POR=0)

uint8_t display_update_control2

Display update control 2

enum ssd1675a_vcom_register vcom_register

VCOM Register

ssd1675a_lut_t * lut_register

LUT register (70 bytes)

uint8_t dummy_line_period

Dummy line period in terms of TGate

uint8_t gate_line_width

Gate line width (TGate) (POR=0x0a)

enum ssd1675a_border_waveform_vdb_option border_waveform_vdb_option

Border Waveform for VBD Option

enum ssd1675a_border_waveform_vdb_fix_level border_waveform_vdb_fix_level

Border Waveform for VBD Fix Level

enum ssd1675a_border_waveform_vdb_gs_transition border_waveform_vdb_gs_transition

Border Waveform for VBD GS Transition

uint8_t analog_block_control

Analog block control (POR=0x54)

uint8_t digital_block_control

Digital block control (POR=0x3b)

Pre-baked configurations

ssd1675a_config_t ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module

Configuration for BuyDisplay Red 2.9” inch e-Ink Display Module 296x128. Should also work with Yellow 2.9” e-Paper Display Module 296x128 for Arduino,Raspberry Pi <https://www.buydisplay.com/yellow-2-9-inch-e-paper-display-module-296x128-for-arduino-raspberry-pi-1>_.

Values extracted from BuyDisplay’s provided example code.

ssd1675a_config_t ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update

Variant of ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module but with custom voltages and LUT for ~3x faster update (~6s instead of ~18s).

ssd1675a_config_t ssd1675a_config_buydisplay_black_2_9_inch_e_ink_display_module

Configuration for Black 2.9” inch e-Paper Display Module for Arduino,Raspberry Pi.

Values extracted from BuyDisplay’s provided example code. Unfortunately, BuyDisplay example code does not provide LUT for this BW display (only for BWR/BWR), but ssd1675a_lut_bw_adafruit seems to work just fine.

See also

ssd1675a_writeLut(), ssd1675a_lut_bw_adafruit and ssd1675a_lut_bw_partial.

Driver

const display_t ssd1675a

SSD1675A display driver.

See also

eglib_Init().

See also

Datasheet.

Functions

These functions can be used exclusively with eglib_t initialized with ssd1675a.

ssd1675a_lut_t ssd1675a_lut_bw_adafruit

Full update LUT for Adafruit_CircuitPython_SSD1675 <https://github.com/adafruit/Adafruit_CircuitPython_SSD1675>_.

This driver is for a different controller SSD1675, but the LUT should be compatible with similar BW displays.

ssd1675a_lut_t ssd1675a_lut_bw_partial

Partial update LUT for ssd1675a_config_buydisplay_black_2_9_inch_e_ink_display_module.

This fast screen update causes no flickering, at the expense of image ghosting.

Warning: doing repeated partial updates without issuing full updates once in a while will permanently polarize the display causing permanent damage as image burn in!

void ssd1675a_writeLut(eglib_t * eglib, ssd1675a_lut_t * lut)

Set LUT.

Parameters
  • lut – LUT register (70 bytes).

Examples

4-Wire SPI

#include <eglib.h>
#include <eglib/hal/four_wire_spi/libopencm3_stm32f4.h>
#include <eglib/display/frame_buffer.h>
#include <eglib/display/ssd1675a.h>
#include <stdio.h>
#include <libopencm3/stm32/rcc.h>
#include <libopencm3/stm32/gpio.h>
#include <libopencm3/stm32/spi.h>

int main(void) {
	eglib_t eglib;
	eglib_t *eglib_ssd1675a;

	frame_buffer_config_t frame_buffer_config;

	four_wire_spi_libopencm3_stm32f4_config_t  four_wire_spi_libopencm3_stm32f4_config = {
		// rst
		.rcc_rst = RCC_GPIOA,
		.port_rst = GPIOA,
		.gpio_rst = GPIO4,
		// busy
		.rcc_busy = RCC_GPIOB,
		.port_busy = GPIOB,
		.gpio_busy = GPIO2,
		// dc
		.rcc_dc = RCC_GPIOA,
		.port_dc = GPIOA,
		.gpio_dc = GPIO3,
		// cs
		.rcc_cs = RCC_GPIOA,
		.port_cs = GPIOA,
		.gpio_cs = GPIO2,
		// spi
		.rcc_spi = RCC_SPI1,
		.spi = SPI1,
		// sck
		.rcc_sck = RCC_GPIOA,
		.port_sck = GPIOA,
		.gpio_sck = GPIO5,
		// mosi
		.rcc_mosi = RCC_GPIOA,
		.port_mosi = GPIOA,
		.gpio_mosi = GPIO7,
	};

	rcc_clock_setup_pll(&rcc_hse_25mhz_3v3[RCC_CLOCK_3V3_84MHZ]);

	eglib_Init_FrameBuffer(
		&eglib, &frame_buffer_config,
		&four_wire_spi_libopencm3_stm32f4, &four_wire_spi_libopencm3_stm32f4_config,
		&ssd1675a, &ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update
	);

	eglib_SetIndexColor(&eglib, 0, 255, 0, 0);
	eglib_DrawLine(&eglib,0, 0, ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update.width-1, ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update.height-1);
	eglib_DrawLine(&eglib,0, ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update.height-1, ssd1675a_config_buydisplay_red_2_9_inch_e_ink_display_module_fast_update.width-1, 0);

	eglib_SetIndexColor(&eglib, 0, 255, 255, 255);
	eglib_SetFont(&eglib, &font_Adobe_Helvetica_14px);
	eglib_DrawText(&eglib, 10, 14, "eglib");

	eglib_FrameBuffer_Send(&eglib);
	while(eglib_Refresh(&eglib));
}