17#ifndef __VSF_DISP_MIPI_SPI_LCD_H__
18#define __VSF_DISP_MIPI_SPI_LCD_H__
24#if VSF_USE_UI == ENABLED && VSF_DISP_USE_MIPI_SPI_LCD == ENABLED
29#if defined(__VSF_DISP_MIPI_SPI_LCD_CLASS_IMPLEMENT)
30# define __VSF_CLASS_IMPLEMENT__
43#if VSF_HAL_USE_SPI != ENABLED
44# error "need VSF_HAL_USE_SPI"
47#ifndef VSF_DISP_MIPI_SPI_LCD_SUPPORT_HARDWARE_RESET
48# define VSF_DISP_MIPI_SPI_LCD_SUPPORT_HARDWARE_RESET ENABLED
51#ifndef VSF_DISP_MIPI_SPI_LCD_USING_VSF_GPIO
52# define VSF_DISP_MIPI_SPI_LCD_USING_VSF_GPIO ENABLED
55#define VSF_DISP_MIPI_SPI_LCD_SPI_8BITS_MODE 0
56#define VSF_DISP_MIPI_SPI_LCD_SPI_9BITS_MODE 1
58#ifndef VSF_DISP_MIPI_SPI_LCD_SPI_MODE
59# define VSF_DISP_MIPI_SPI_LCD_SPI_MODE VSF_DISP_MIPI_SPI_LCD_SPI_8BITS_MODE
62#if (VSF_DISP_MIPI_SPI_LCD_SPI_MODE != VSF_DISP_MIPI_SPI_LCD_SPI_8BITS_MODE)\
63 && (VSF_DISP_MIPI_SPI_LCD_SPI_MODE != VSF_DISP_MIPI_SPI_LCD_SPI_9BITS_MODE)
64# error "vsf_disp_mipi_spi_lcd: error spi mode"
67#if VSF_DISP_MIPI_SPI_LCD_SPI_MODE == VSF_DISP_MIPI_SPI_LCD_SPI_9BITS_MODE
68# error "TODO: support 9bit spi mode"
132#define VSF_DISP_MIPI_SPI_LCD_INITSEQ(__LCD_SEQ, __PIXEL_FORMAT, __MODE, ...) \
133 VSF_DISP_MIPI_LCD_INITSEQ(__LCD_SEQ, \
134 MIPI_DCS_CMD_SET_ADDRESS_MODE(__MODE), \
135 MIPI_DCS_CMD_SET_PIXEL_FORMAT(__PIXEL_FORMAT), \
139#define VSF_DISP_MIPI_SPI_LCD_REFRESH_SEQ_LEN \
140 (1 + 1 + 4) + (1 + 1 + 4) + (1 + 1 + 4 + 4)
145#define VSF_DISP_ST7789V_SPI_INITSEQ(__PIXEL_FORMAT, __MODE, ...) \
146 VSF_DISP_MIPI_SPI_LCD_INITSEQ(VSF_DISP_MIPI_LCD_ST7789V_BASE, \
147 __PIXEL_FORMAT, __MODE, \
160#if VSF_DISP_MIPI_SPI_LCD_USING_VSF_GPIO == ENABLED
Definition vsf_disp.h:151
Definition vsf_disp_mipi_spi_lcd.h:153
Definition vsf_disp.h:176
#define vsf_class(__name)
Definition ooc_class.h:48
unsigned short uint16_t
Definition stdint.h:7
unsigned uint32_t
Definition stdint.h:9
unsigned char uint8_t
Definition stdint.h:5
Definition vsf_disp.h:146
Definition vsf_template_gpio.h:720
SPI instance structure, used for SPI Multi Class support, not needed in non Multi Class mode.
Definition vsf_template_spi.h:766
bool vsf_disp_mipi_spi_lcd_wait_te_line_ready(vk_disp_mipi_spi_lcd_t *disp_mipi_spi_lcd)
Definition vsf_disp_mipi_spi_lcd.c:104
#define VSF_DISP_MIPI_SPI_LCD_REFRESH_SEQ_LEN
Definition vsf_disp_mipi_spi_lcd.h:139
const vk_disp_drv_t vk_disp_drv_mipi_spi_lcd
Definition vsf_disp_mipi_spi_lcd.c:90
void vsf_disp_mipi_te_line_ready(vk_disp_mipi_spi_lcd_t *disp_mipi_spi_lcd)
Definition vsf_disp_mipi_spi_lcd.c:98