[feat][lcd] add st7789v support, demo used sipeed m1sdock

This commit is contained in:
jzlv 2022-12-08 11:07:16 +08:00
parent 223589e8d9
commit 9ad915ef1f
7 changed files with 620 additions and 56 deletions

View file

@ -49,16 +49,35 @@ void lv_log_print_g_cb(const char *buf)
printf("[LVGL] %s", buf);
}
/**
* @brief spi gpio init
*
* Please modify lcd pin: cs/dc/clk/mosi with your own board. Default spi mapping is for BL808.
* Default lcd type is st7789v with 240 * 280
*/
static void gpio_init(void)
{
struct bflb_device_s *gpio;
gpio = bflb_device_get_by_name("gpio");
/* lcd spi clk and data pin */
// bflb_gpio_init(gpio, GPIO_PIN_16, GPIO_FUNC_SPI0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
bflb_gpio_init(gpio, GPIO_PIN_17, GPIO_FUNC_SPI0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
// bflb_gpio_init(gpio, GPIO_PIN_18, GPIO_FUNC_SPI0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
/* lcd cs, see in bsp/common/lcd/spi/xxx_spi.h */
// bflb_gpio_init(gpio, GPIO_PIN_12, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
/* lcd dc, see in bsp/common/lcd/spi/xxx_spi.h */
// bflb_gpio_init(gpio, GPIO_PIN_13, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
/* lcd spi mosi */
bflb_gpio_init(gpio, GPIO_PIN_25, GPIO_FUNC_SPI0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
/* lcd spi clock */
bflb_gpio_init(gpio, GPIO_PIN_19, GPIO_FUNC_SPI0 | GPIO_ALTERNATE | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
/* backlight pin */
bflb_gpio_init(gpio, GPIO_PIN_11, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
bflb_gpio_set(gpio, GPIO_PIN_11);
/* reset pin */
bflb_gpio_init(gpio, GPIO_PIN_24, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_2);
bflb_gpio_set(gpio, GPIO_PIN_24);
}
int main(void)