mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2026-11-09 20:45:41 +08:00
Merge pull request #5289 from mysterywolf/lvgl
[stm32l475] update lvgl driver
This commit is contained in:
9 files changed
+189
-497
No files matched your search
@@ -121,38 +121,7 @@ CONFIG_FINSH_ARG_MAX=10
|
||||
#
|
||||
# Device virtual file system
|
||||
#
|
||||
CONFIG_RT_USING_DFS=y
|
||||
CONFIG_DFS_USING_WORKDIR=y
|
||||
CONFIG_DFS_FILESYSTEMS_MAX=2
|
||||
CONFIG_DFS_FILESYSTEM_TYPES_MAX=2
|
||||
CONFIG_DFS_FD_MAX=16
|
||||
# CONFIG_RT_USING_DFS_MNTTABLE is not set
|
||||
CONFIG_RT_USING_DFS_ELMFAT=y
|
||||
|
||||
#
|
||||
# elm-chan's FatFs, Generic FAT Filesystem Module
|
||||
#
|
||||
CONFIG_RT_DFS_ELM_CODE_PAGE=437
|
||||
CONFIG_RT_DFS_ELM_WORD_ACCESS=y
|
||||
# CONFIG_RT_DFS_ELM_USE_LFN_0 is not set
|
||||
# CONFIG_RT_DFS_ELM_USE_LFN_1 is not set
|
||||
# CONFIG_RT_DFS_ELM_USE_LFN_2 is not set
|
||||
CONFIG_RT_DFS_ELM_USE_LFN_3=y
|
||||
CONFIG_RT_DFS_ELM_USE_LFN=3
|
||||
CONFIG_RT_DFS_ELM_LFN_UNICODE_0=y
|
||||
# CONFIG_RT_DFS_ELM_LFN_UNICODE_1 is not set
|
||||
# CONFIG_RT_DFS_ELM_LFN_UNICODE_2 is not set
|
||||
# CONFIG_RT_DFS_ELM_LFN_UNICODE_3 is not set
|
||||
CONFIG_RT_DFS_ELM_LFN_UNICODE=0
|
||||
CONFIG_RT_DFS_ELM_MAX_LFN=255
|
||||
CONFIG_RT_DFS_ELM_DRIVES=2
|
||||
CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
|
||||
# CONFIG_RT_DFS_ELM_USE_ERASE is not set
|
||||
CONFIG_RT_DFS_ELM_REENTRANT=y
|
||||
CONFIG_RT_DFS_ELM_MUTEX_TIMEOUT=3000
|
||||
CONFIG_RT_USING_DFS_DEVFS=y
|
||||
# CONFIG_RT_USING_DFS_ROMFS is not set
|
||||
# CONFIG_RT_USING_DFS_RAMFS is not set
|
||||
# CONFIG_RT_USING_DFS is not set
|
||||
|
||||
#
|
||||
# Device Drivers
|
||||
@@ -174,17 +143,11 @@ CONFIG_RT_USING_PIN=y
|
||||
# CONFIG_RT_USING_ADC is not set
|
||||
# CONFIG_RT_USING_DAC is not set
|
||||
# CONFIG_RT_USING_PWM is not set
|
||||
CONFIG_RT_USING_MTD_NOR=y
|
||||
# CONFIG_RT_USING_MTD_NOR is not set
|
||||
# CONFIG_RT_USING_MTD_NAND is not set
|
||||
# CONFIG_RT_USING_PM is not set
|
||||
# CONFIG_RT_USING_RTC is not set
|
||||
CONFIG_RT_USING_SDIO=y
|
||||
CONFIG_RT_SDIO_STACK_SIZE=512
|
||||
CONFIG_RT_SDIO_THREAD_PRIORITY=15
|
||||
CONFIG_RT_MMCSD_STACK_SIZE=1024
|
||||
CONFIG_RT_MMCSD_THREAD_PREORITY=22
|
||||
CONFIG_RT_MMCSD_MAX_PARTITION=16
|
||||
# CONFIG_RT_SDIO_DEBUG is not set
|
||||
# CONFIG_RT_USING_SDIO is not set
|
||||
# CONFIG_RT_USING_SPI is not set
|
||||
# CONFIG_RT_USING_WDT is not set
|
||||
# CONFIG_RT_USING_AUDIO is not set
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -81,27 +81,6 @@
|
||||
|
||||
/* Device virtual file system */
|
||||
|
||||
#define RT_USING_DFS
|
||||
#define DFS_USING_WORKDIR
|
||||
#define DFS_FILESYSTEMS_MAX 2
|
||||
#define DFS_FILESYSTEM_TYPES_MAX 2
|
||||
#define DFS_FD_MAX 16
|
||||
#define RT_USING_DFS_ELMFAT
|
||||
|
||||
/* elm-chan's FatFs, Generic FAT Filesystem Module */
|
||||
|
||||
#define RT_DFS_ELM_CODE_PAGE 437
|
||||
#define RT_DFS_ELM_WORD_ACCESS
|
||||
#define RT_DFS_ELM_USE_LFN_3
|
||||
#define RT_DFS_ELM_USE_LFN 3
|
||||
#define RT_DFS_ELM_LFN_UNICODE_0
|
||||
#define RT_DFS_ELM_LFN_UNICODE 0
|
||||
#define RT_DFS_ELM_MAX_LFN 255
|
||||
#define RT_DFS_ELM_DRIVES 2
|
||||
#define RT_DFS_ELM_MAX_SECTOR_SIZE 512
|
||||
#define RT_DFS_ELM_REENTRANT
|
||||
#define RT_DFS_ELM_MUTEX_TIMEOUT 3000
|
||||
#define RT_USING_DFS_DEVFS
|
||||
|
||||
/* Device Drivers */
|
||||
|
||||
@@ -112,13 +91,6 @@
|
||||
#define RT_SERIAL_USING_DMA
|
||||
#define RT_SERIAL_RB_BUFSZ 64
|
||||
#define RT_USING_PIN
|
||||
#define RT_USING_MTD_NOR
|
||||
#define RT_USING_SDIO
|
||||
#define RT_SDIO_STACK_SIZE 512
|
||||
#define RT_SDIO_THREAD_PRIORITY 15
|
||||
#define RT_MMCSD_STACK_SIZE 1024
|
||||
#define RT_MMCSD_THREAD_PREORITY 22
|
||||
#define RT_MMCSD_MAX_PARTITION 16
|
||||
|
||||
/* Using USB */
|
||||
|
||||
|
||||
@@ -2,14 +2,14 @@ from building import *
|
||||
import os
|
||||
|
||||
cwd = GetCurrentDir()
|
||||
src = Glob('*.c')
|
||||
src = ['drv_lcd.c']
|
||||
CPPPATH = [cwd]
|
||||
|
||||
if GetDepend(['BSP_USING_LCD_QRCODE']):
|
||||
src = src + Glob('lcd_qrcode.c')
|
||||
src = src + ['lcd_qrcode.c']
|
||||
|
||||
if GetDepend(['BSP_USING_LCD_SAMPLE']):
|
||||
src = src + Glob('demo/lcd_sample.c')
|
||||
src = src + ['demo/lcd_sample.c']
|
||||
|
||||
group = DefineGroup('Drivers', src, depend = ['BSP_USING_SPI_LCD'], CPPPATH = CPPPATH)
|
||||
|
||||
|
||||
@@ -16,7 +16,9 @@
|
||||
#include <drv_gpio.h>
|
||||
#include <drv_spi.h>
|
||||
#include "drv_lcd.h"
|
||||
#ifndef BSP_USING_LVGL
|
||||
#include "drv_lcd_font.h"
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
#define DBG_TAG "drv.lcd"
|
||||
#define DBG_LVL DBG_INFO
|
||||
@@ -25,9 +27,11 @@
|
||||
#define LCD_PWR_PIN GET_PIN(B, 7)
|
||||
#define LCD_DC_PIN GET_PIN(B, 4)
|
||||
#define LCD_RES_PIN GET_PIN(B, 6)
|
||||
#define LCD_CLEAR_SEND_NUMBER 5760 /* 240*240/10 */
|
||||
|
||||
#ifndef BSP_USING_LVGL
|
||||
#define LCD_CLEAR_SEND_NUMBER 5760 /* 240*240/10 */
|
||||
rt_uint16_t BACK_COLOR = WHITE, FORE_COLOR = BLACK;
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
static struct rt_spi_device *spi_dev_lcd;
|
||||
|
||||
@@ -86,6 +90,7 @@ static rt_err_t lcd_write_data(const rt_uint8_t data)
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef BSP_USING_LVGL
|
||||
static rt_err_t lcd_write_half_word(const rt_uint16_t da)
|
||||
{
|
||||
rt_size_t len;
|
||||
@@ -106,6 +111,7 @@ static rt_err_t lcd_write_half_word(const rt_uint16_t da)
|
||||
return RT_EOK;
|
||||
}
|
||||
}
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
static void lcd_gpio_init(void)
|
||||
{
|
||||
@@ -214,6 +220,7 @@ static int rt_hw_lcd_init(void)
|
||||
}
|
||||
INIT_DEVICE_EXPORT(rt_hw_lcd_init);
|
||||
|
||||
#ifndef BSP_USING_LVGL
|
||||
/**
|
||||
* Set background color and foreground color
|
||||
*
|
||||
@@ -227,6 +234,7 @@ void lcd_set_color(rt_uint16_t back, rt_uint16_t fore)
|
||||
BACK_COLOR = back;
|
||||
FORE_COLOR = fore;
|
||||
}
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
void lcd_display_on(void)
|
||||
{
|
||||
@@ -281,6 +289,7 @@ void lcd_address_set(rt_uint16_t x1, rt_uint16_t y1, rt_uint16_t x2, rt_uint16_t
|
||||
lcd_write_cmd(0x2C);
|
||||
}
|
||||
|
||||
#ifndef BSP_USING_LVGL
|
||||
/**
|
||||
* clear the lcd.
|
||||
*
|
||||
@@ -424,6 +433,8 @@ void lcd_fill(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_ui
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
|
||||
/**
|
||||
* full color array on the lcd.
|
||||
@@ -438,7 +449,7 @@ void lcd_fill(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_ui
|
||||
*/
|
||||
void lcd_fill_array(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_uint16_t y_end, void *pcolor)
|
||||
{
|
||||
rt_uint32_t size = 0, size_remain = 0;
|
||||
rt_uint32_t size = 0;
|
||||
|
||||
size = (x_end - x_start + 1) * (y_end - y_start + 1) * 2;
|
||||
lcd_address_set(x_start, y_start, x_end, y_end);
|
||||
@@ -446,6 +457,7 @@ void lcd_fill_array(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end,
|
||||
rt_spi_send(spi_dev_lcd, pcolor, size);
|
||||
}
|
||||
|
||||
#ifndef BSP_USING_LVGL
|
||||
/**
|
||||
* display a line on the lcd.
|
||||
*
|
||||
@@ -856,3 +868,5 @@ rt_err_t lcd_show_image(rt_uint16_t x, rt_uint16_t y, rt_uint16_t length, rt_uin
|
||||
|
||||
return RT_EOK;
|
||||
}
|
||||
|
||||
#endif /* BSP_USING_LVGL */
|
||||
@@ -5,8 +5,8 @@
|
||||
*
|
||||
* Change Logs:
|
||||
* Date Author Notes
|
||||
* 2018-08-14 flybreak the first version
|
||||
* 2018-09-18 balanceTWK add sleep mode function
|
||||
* 2018-08-14 flybreak the first version
|
||||
* 2018-09-18 balanceTWK add sleep mode function
|
||||
*/
|
||||
|
||||
#ifndef __DRV_LCD_H__
|
||||
@@ -14,14 +14,10 @@
|
||||
|
||||
#include <rtthread.h>
|
||||
|
||||
#ifdef PKG_USING_QRCODE
|
||||
#include <qrcode.h>
|
||||
#endif
|
||||
|
||||
#define LCD_W 240
|
||||
#define LCD_H 240
|
||||
|
||||
//POINT_COLOR
|
||||
#ifndef BSP_USING_LVGL
|
||||
#define WHITE 0xFFFF
|
||||
#define BLACK 0x0000
|
||||
#define BLUE 0x001F
|
||||
@@ -42,25 +38,25 @@
|
||||
#define GRAY240 0XF79E
|
||||
|
||||
extern rt_uint16_t BACK_COLOR, FORE_COLOR;
|
||||
|
||||
void lcd_clear(rt_uint16_t color);
|
||||
void lcd_address_set(rt_uint16_t x1, rt_uint16_t y1, rt_uint16_t x2, rt_uint16_t y2);
|
||||
void lcd_set_color(rt_uint16_t back, rt_uint16_t fore);
|
||||
|
||||
void lcd_draw_point(rt_uint16_t x, rt_uint16_t y);
|
||||
void lcd_draw_point_color(rt_uint16_t x, rt_uint16_t y, rt_uint16_t color);
|
||||
void lcd_draw_circle(rt_uint16_t x0, rt_uint16_t y0, rt_uint8_t r);
|
||||
void lcd_draw_line(rt_uint16_t x1, rt_uint16_t y1, rt_uint16_t x2, rt_uint16_t y2);
|
||||
void lcd_draw_rectangle(rt_uint16_t x1, rt_uint16_t y1, rt_uint16_t x2, rt_uint16_t y2);
|
||||
void lcd_fill(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_uint16_t y_end, rt_uint16_t color);
|
||||
void lcd_fill_array(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_uint16_t y_end, void *pcolor);
|
||||
void lcd_show_num(rt_uint16_t x, rt_uint16_t y, rt_uint32_t num, rt_uint8_t len, rt_uint32_t size);
|
||||
rt_err_t lcd_show_string(rt_uint16_t x, rt_uint16_t y, rt_uint32_t size, const char *fmt, ...);
|
||||
rt_err_t lcd_show_image(rt_uint16_t x, rt_uint16_t y, rt_uint16_t length, rt_uint16_t wide, const rt_uint8_t *p);
|
||||
#endif /* BSP_USING_LVGL */
|
||||
|
||||
void lcd_enter_sleep(void);
|
||||
void lcd_exit_sleep(void);
|
||||
void lcd_display_on(void);
|
||||
void lcd_display_off(void);
|
||||
|
||||
void lcd_address_set(rt_uint16_t x1, rt_uint16_t y1, rt_uint16_t x2, rt_uint16_t y2);
|
||||
void lcd_fill_array(rt_uint16_t x_start, rt_uint16_t y_start, rt_uint16_t x_end, rt_uint16_t y_end, void *pcolor);
|
||||
|
||||
#endif
|
||||
@@ -186,4 +186,4 @@ __exit:
|
||||
|
||||
return result;
|
||||
}
|
||||
#endif
|
||||
#endif /* BSP_USING_LCD_QRCODE */
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <rtconfig.h>
|
||||
|
||||
#ifdef PKG_USING_QRCODE
|
||||
#ifdef BSP_USING_LCD_QRCODE
|
||||
#include <rtdef.h>
|
||||
rt_err_t lcd_show_qrcode(rt_uint16_t x, rt_uint16_t y, rt_uint8_t version, rt_uint8_t ecc, const char *data, rt_uint8_t enlargement);
|
||||
#endif
|
||||
|
||||
Reference in new issue
Block a user