LibDriver ST7789
Loading...
Searching...
No Matches
driver_st7789_basic.h
Go to the documentation of this file.
1
36
37#ifndef DRIVER_ST7789_BASIC_H
38#define DRIVER_ST7789_BASIC_H
39
41
42#ifdef __cplusplus
43extern "C"{
44#endif
45
52
56#define ST7789_BASIC_DEFAULT_COLUMN 240
57#define ST7789_BASIC_DEFAULT_ROW 320
58#define ST7789_BASIC_DEFAULT_GAMMA_CURVE ST7789_GAMMA_CURVE_1
59#define ST7789_BASIC_DEFAULT_ACCESS (ST7789_ORDER_PAGE_TOP_TO_BOTTOM | \
60 ST7789_ORDER_COLUMN_LEFT_TO_RIGHT | \
61 ST7789_ORDER_PAGE_COLUMN_NORMAL | \
62 ST7789_ORDER_LINE_TOP_TO_BOTTOM | \
63 ST7789_ORDER_COLOR_RGB | \
64 ST7789_ORDER_REFRESH_LEFT_TO_RIGHT)
65#define ST7789_BASIC_DEFAULT_RGB_INTERFACE_COLOR_FORMAT ST7789_RGB_INTERFACE_COLOR_FORMAT_262K
66#define ST7789_BASIC_DEFAULT_CONTROL_INTERFACE_COLOR_FORMAT ST7789_CONTROL_INTERFACE_COLOR_FORMAT_16_BIT
67#define ST7789_BASIC_DEFAULT_BRIGHTNESS 0xFF
68#define ST7789_BASIC_DEFAULT_BRIGHTNESS_BLOCK ST7789_BOOL_FALSE
69#define ST7789_BASIC_DEFAULT_DISPLAY_DIMMING ST7789_BOOL_FALSE
70#define ST7789_BASIC_DEFAULT_BACKLIGHT ST7789_BOOL_FALSE
71#define ST7789_BASIC_DEFAULT_COLOR_ENHANCEMENT ST7789_BOOL_TRUE
72#define ST7789_BASIC_DEFAULT_COLOR_ENHANCEMENT_MODE ST7789_COLOR_ENHANCEMENT_MODE_USER_INTERFACE
73#define ST7789_BASIC_DEFAULT_COLOR_ENHANCEMENT_LEVEL ST7789_COLOR_ENHANCEMENT_LEVEL_HIGH
74#define ST7789_BASIC_DEFAULT_CABC_MINIMUM_BRIGHTNESS 0x00
75#define ST7789_BASIC_DEFAULT_RAM_ACCESS ST7789_RAM_ACCESS_MCU
76#define ST7789_BASIC_DEFAULT_DISPLAY_MODE ST7789_DISPLAY_MODE_MCU
77#define ST7789_BASIC_DEFAULT_FRAME_TYPE ST7789_FRAME_TYPE_0
78#define ST7789_BASIC_DEFAULT_DATA_MODE ST7789_DATA_MODE_MSB
79#define ST7789_BASIC_DEFAULT_RGB_BUS_WIDTH ST7789_RGB_BUS_WIDTH_18_BIT
80#define ST7789_BASIC_DEFAULT_PIXEL_TYPE ST7789_PIXEL_TYPE_0
81#define ST7789_BASIC_DEFAULT_DIRECT_RGB_MODE ST7789_DIRECT_RGB_MODE_MEM
82#define ST7789_BASIC_DEFAULT_RGB_IF_ENABLE_MODE ST7789_RGB_IF_ENABLE_MODE_MCU
83#define ST7789_BASIC_DEFAULT_VSPL ST7789_PIN_LEVEL_LOW
84#define ST7789_BASIC_DEFAULT_HSPL ST7789_PIN_LEVEL_LOW
85#define ST7789_BASIC_DEFAULT_DPL ST7789_PIN_LEVEL_LOW
86#define ST7789_BASIC_DEFAULT_EPL ST7789_PIN_LEVEL_LOW
87#define ST7789_BASIC_DEFAULT_VBP 0x02
88#define ST7789_BASIC_DEFAULT_HBP 0x14
89#define ST7789_BASIC_DEFAULT_PORCH_NORMAL_BACK 0x0C
90#define ST7789_BASIC_DEFAULT_PORCH_NORMAL_FRONT 0x0C
91#define ST7789_BASIC_DEFAULT_PORCH_ENABLE ST7789_BOOL_FALSE
92#define ST7789_BASIC_DEFAULT_PORCH_IDEL_BACK 0x03
93#define ST7789_BASIC_DEFAULT_PORCH_IDEL_FRONT 0x03
94#define ST7789_BASIC_DEFAULT_PORCH_PART_BACK 0x03
95#define ST7789_BASIC_DEFAULT_PORCH_PART_FRONT 0x03
96#define ST7789_BASIC_DEFAULT_SEPARATE_FR ST7789_BOOL_FALSE
97#define ST7789_BASIC_DEFAULT_FRAME_RATE_DIVIDED ST7789_FRAME_RATE_DIVIDED_CONTROL_DIV_1
98#define ST7789_BASIC_DEFAULT_INVERSION_IDLE_MODE ST7789_INVERSION_IDLE_MODE_DOT
99#define ST7789_BASIC_DEFAULT_IDLE_FRAME_RATE 0x0F
100#define ST7789_BASIC_DEFAULT_INVERSION_PARTIAL_MODE ST7789_INVERSION_PARTIAL_MODE_DOT
101#define ST7789_BASIC_DEFAULT_IDLE_PARTIAL_RATE 0x0F
102#define ST7789_BASIC_DEFAULT_NON_DISPLAY_SOURCE_OUTPUT_LEVEL ST7789_NON_DISPLAY_SOURCE_OUTPUT_LEVEL_V63
103#define ST7789_BASIC_DEFAULT_NON_DISPLAY_AREA_SCAN_MODE ST7789_NON_DISPLAY_AREA_SCAN_MODE_NORMAL
104#define ST7789_BASIC_DEFAULT_NON_DISPLAY_FRAME_FREQUENCY ST7789_NON_DISPLAY_FRAME_FREQUENCY_EVERY
105#define ST7789_BASIC_DEFAULT_VGHS ST7789_VGHS_14P97_V
106#define ST7789_BASIC_DEFAULT_VGLS_NEGATIVE ST7789_VGLS_NEGATIVE_8P23
107#define ST7789_BASIC_DEFAULT_GATE_ON_TIMING 0x22
108#define ST7789_BASIC_DEFAULT_GATE_OFF_TIMING_RGB 0x07
109#define ST7789_BASIC_DEFAULT_GATE_OFF_TIMING 0x05
110#define ST7789_BASIC_DEFAULT_DIGITAL_GAMMA ST7789_BOOL_TRUE
111#define ST7789_BASIC_DEFAULT_VCOMS 1.625f
112#define ST7789_BASIC_DEFAULT_XMY ST7789_BOOL_FALSE
113#define ST7789_BASIC_DEFAULT_XBGR ST7789_BOOL_TRUE
114#define ST7789_BASIC_DEFAULT_XINV ST7789_BOOL_FALSE
115#define ST7789_BASIC_DEFAULT_XMX ST7789_BOOL_TRUE
116#define ST7789_BASIC_DEFAULT_XMH ST7789_BOOL_TRUE
117#define ST7789_BASIC_DEFAULT_XMV ST7789_BOOL_FALSE
118#define ST7789_BASIC_DEFAULT_XGS ST7789_BOOL_FALSE
119#define ST7789_BASIC_DEFAULT_VDV_VRH_FROM ST7789_VDV_VRH_FROM_CMD
120#define ST7789_BASIC_DEFAULT_VRHS 4.8f
121#define ST7789_BASIC_DEFAULT_VDV 0.0f
122#define ST7789_BASIC_DEFAULT_VCOMS_OFFSET 0.0f
123#define ST7789_BASIC_DEFAULT_INVERSION_SELECTION ST7789_INVERSION_SELECTION_DOT
124#define ST7789_BASIC_DEFAULT_FRAME_RATE ST7789_FRAME_RATE_60_HZ
125#define ST7789_BASIC_DEFAULT_LED_ON ST7789_BOOL_FALSE
126#define ST7789_BASIC_DEFAULT_LED_PWM_INIT ST7789_BOOL_FALSE
127#define ST7789_BASIC_DEFAULT_LED_PWM_FIX ST7789_BOOL_FALSE
128#define ST7789_BASIC_DEFAULT_LED_PWM_POLARITY ST7789_BOOL_FALSE
129#define ST7789_BASIC_DEFAULT_PWM_FREQUENCY ST7789_PWM_FREQUENCY_9P8_KHZ
130#define ST7789_BASIC_DEFAULT_AVDD ST7789_AVDD_6P8_V
131#define ST7789_BASIC_DEFAULT_AVCL_NEGTIVE ST7789_AVCL_NEGTIVE_4P8_V
132#define ST7789_BASIC_DEFAULT_VDS ST7789_VDS_2P3_V
133#define ST7789_BASIC_DEFAULT_COMMAND_2_ENABLE ST7789_BOOL_FALSE
134#define ST7789_BASIC_DEFAULT_POSITIVE_VOLTAGE_GAMMA {0xD0, 0x04, 0x0D, 0x11, 0x13, 0x2B, 0x3F, \
135 0x54, 0x4C, 0x18, 0x0D, 0x0B, 0x1F, 0x23}
136#define ST7789_BASIC_DEFAULT_NEGATIVA_VOLTAGE_GAMMA {0xD0, 0x04, 0x0C, 0x11, 0x13, 0x2C, 0x3F, \
137 0x44, 0x51, 0x2F, 0x1F, 0x1F, 0x20, 0x23}
138#define ST7789_BASIC_DEFAULT_GATE_LINE 320
139#define ST7789_BASIC_DEFAULT_FIRST_SCAN_LINE 0x00
140#define ST7789_BASIC_DEFAULT_GATE_SCAN_MODE ST7789_GATE_SCAN_MODE_INTERLACE
141#define ST7789_BASIC_DEFAULT_GATE_SCAN_DIRECTION ST7789_GATE_SCAN_DIRECTION_0_319
142#define ST7789_BASIC_DEFAULT_SPI2_LANE ST7789_BOOL_FALSE
143#define ST7789_BASIC_DEFAULT_COMMAND_TABLE_2 ST7789_BOOL_FALSE
144#define ST7789_BASIC_DEFAULT_SBCLK_DIV ST7789_SBCLK_DIV_3
145#define ST7789_BASIC_DEFAULT_STP14CK_DIV ST7789_STP14CK_DIV_6
146#define ST7789_BASIC_DEFAULT_SOURCE_EQUALIZE_TIME 0x11
147#define ST7789_BASIC_DEFAULT_SOURCE_PRE_DRIVE_TIME 0x11
148#define ST7789_BASIC_DEFAULT_GATE_EQUALIZE_TIME 0x08
149#define ST7789_BASIC_DEFAULT_PROGRAM_MODE ST7789_BOOL_FALSE
150
158uint8_t st7789_basic_init(void);
159
167uint8_t st7789_basic_deinit(void);
168
176uint8_t st7789_basic_clear(void);
177
185uint8_t st7789_basic_display_on(void);
186
194uint8_t st7789_basic_display_off(void);
195
209uint8_t st7789_basic_string(uint16_t x, uint16_t y, char *str, uint16_t len, uint32_t color, st7789_font_t font);
210
221uint8_t st7789_basic_write_point(uint16_t x, uint16_t y, uint32_t color);
222
235uint8_t st7789_basic_rect(uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint32_t color);
236
249uint8_t st7789_basic_draw_picture_16bits(uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint16_t *img);
250
254
255#ifdef __cplusplus
256}
257#endif
258
259#endif
driver st7789 interface header file
st7789_font_t
st7789 font size enumeration definition
uint8_t st7789_basic_draw_picture_16bits(uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint16_t *img)
basic example draw a 16 bits picture
uint8_t st7789_basic_rect(uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint32_t color)
basic example fill a rectangle
uint8_t st7789_basic_clear(void)
basic example clear
uint8_t st7789_basic_init(void)
basic example init
uint8_t st7789_basic_deinit(void)
basic example deinit
uint8_t st7789_basic_string(uint16_t x, uint16_t y, char *str, uint16_t len, uint32_t color, st7789_font_t font)
basic example draw a string
uint8_t st7789_basic_write_point(uint16_t x, uint16_t y, uint32_t color)
basic example write a point
uint8_t st7789_basic_display_off(void)
basic example display off
uint8_t st7789_basic_display_on(void)
basic example display on