本文说明如何在 Luban-Lite SDK 中,将衡山派 D133EBS 开发板适配到晶尚 JYY070BD35L27A2-40 7 寸 LVDS 屏,并运行 1024×600 的 LVGL Demo Hub。
7inch LVDS屏幕链接:【点击跳转🚀】
可以从百度网盘中直接下载
HsPi-D133EBS_JS_JYY070_7inch-LVDS_20260723-1816.img镜像文件,直接烧录到板子上就可以使用。
适用配置:
target/configs/d13x_JLC_rt-thread_helloworld_defconfig1. 屏幕关键参数
| 项目 | 配置值 | 说明 |
|---|---|---|
| 分辨率 | 1024×600 | 规格书原生分辨率 |
| LVDS连接 | Single Link 0 | D133 DE V1.1 使用 Link 0 |
| LVDS格式 | JEIDA-24 | 本屏实机验证可用 |
| 屏端位宽 | 8 bit/RGB,共24 bit | SELB=0;开发板 R37 将 SELB 下拉到 GND |
| 像素时钟 | 51 MHz | 规格书典型值 51.2 MHz,Kconfig单位为整数 MHz |
| 水平有效区 | 1024 | HACTIVE |
| 水平后肩 | 136 | 规格书的160包含24个同步周期,因此为160−24 |
| 水平同步 | 24 | HSW |
| 水平前肩 | 160 | HFP |
| 垂直有效区 | 600 | VACTIVE |
| 垂直后肩 | 21 | 规格书的23包含2个同步行,因此为23−2 |
| 垂直同步 | 2 | VSW |
| 垂直前肩 | 12 | VFP |
| 帧缓冲格式 | RGB565 | 与 LVGL 16-bit 色深一致 |
| LVGL资源 | assets/1024x600 | 避免480×272背景只显示在屏幕中央 |
最终时序为:
Htotal = 1024 + 136 + 24 + 160 = 1344
Vtotal = 600 + 21 + 2 + 12 = 635
刷新率 = 51,000,000 / 1344 / 635 ≈ 59.76 Hz2
3
注意:规格书中的
THBP=160和TVBP=23包含同步脉宽,不能直接填入 SDK 的HBP和VBP,否则总周期会变成错误的 1368×637。
2. 准备构建环境
拉取SDK:
git clone --depth=1 https://gitee.com/lcsc/luban-lite.git进入 SDK:
cd /path/to/luban-lite3. 选择工程配置
双击 win_env.bat 文件,打开命令行。
使用 SCons执行:
scons --list-def
scons --apply-def=d13x_JLC_rt-thread_helloworld_defconfig2
选择完成后可检查:
cat .defconfig预期输出:
d13x_JLC_rt-thread_helloworld4. 使用 menuconfig 配置屏幕
启动配置界面:
scons --menuconfig4.1 选择 LVGL 与资源目录
进入 Application options:
LVGL (official) = y
Select LVGL Version = LVGL V9
ArtInChip LVGL demo = y
select LVGL demo = LVGL demo hub2
3
4
在文件系统镜像配置中选择:
Using File System Image 0 = y
Select File System Type = FATFS
Data Directory = packages/artinchip/lvgl-ui/aic_demo/demo_hub/assets/1024x600
Image Name = rodata.fatfs
auto calculate image size = y2
3
4
5
LVGL和帧缓冲色深保持一致:
LV_COLOR_DEPTH = 164.2 选择 LVDS 显示接口
从 menuconfig 顶层进入:
Display Parameter设置:
Display Support = y
select Display interface = Display LVDS interface
LVDS interface options
lvds mode = jeida-24
lvds link mode = single link 0
select framebuffer format = rgb565
Support double framebuffer = y
framebuffer rotation degree = 02
3
4
5
6
7
8
选择 JEIDA-24 后,Kconfig应自动生成:
CONFIG_AIC_LVDS_JEIDA_24BIT=y
CONFIG_AIC_LVDS_MODE=12
驱动真正使用的是 CONFIG_AIC_LVDS_MODE。如果手工编辑 defconfig,只修改 AIC_LVDS_JEIDA_24BIT 而遗留 AIC_LVDS_MODE=0,硬件仍会输出 VESA-24,表现为 绿色色块、颜色错误和严重色阶断层。因此建议通过 menuconfig 修改,并在构建前检查 这两个配置值。
4.3 配置面板与时序
继续进入 Display Panels:
ArtInChip Panel Drivers = ArtInChip SIMPLE panel在 display timing of simple panel 中填写:
pixelclock in MHZ = 51
hactive = 1024
vactive = 600
hback-porch = 136
hfront-porch = 160
hsync-len = 24
vback-porch = 21
vfront-porch = 12
vsync-len = 22
3
4
5
6
7
8
9
背光配置沿用衡山派硬件连接:
panel backlight control = pwm
pwm backlight channel = 2
default brightness level = 802
3
5. 保存并写入 defconfig
在 menuconfig 中选择 Save,保存到默认的 .config,然后退出。Luban-Lite 的 scons --menuconfig 在退出后会自动将 .config 写回当前方案:
target/configs/d13x_JLC_rt-thread_helloworld_defconfig正常使用 menuconfig 或 scons --menuconfig 时无需手工复制 .config。可通过下面的 命令确认目标 defconfig 已发生变化:
git diff -- target/configs/d13x_JLC_rt-thread_helloworld_defconfig保存后重新加载一次,确保 .config、rtconfig.h 和 defconfig 完全同步:
scons --apply-def=d13x_JLC_rt-thread_helloworld_defconfig构建前建议执行以下检查:
rg 'AIC_LVDS_(NS|JEIDA|MODE|LINK)' .config rtconfig.h
rg 'PANEL_(PIXELCLOCK|HACTIVE|VACTIVE|HBP|HFP|HSW|VBP|VFP|VSW)' .config rtconfig.h
rg 'AIC_FS_IMAGE_DIR_0|LV_COLOR_DEPTH|AICFB_(RGB565|FORMAT)' .config rtconfig.h2
3
关键结果应包含:
CONFIG_AIC_FS_IMAGE_DIR_0="packages/artinchip/lvgl-ui/aic_demo/demo_hub/assets/1024x600"
CONFIG_LV_COLOR_DEPTH=16
CONFIG_AIC_LVDS_JEIDA_24BIT=y
CONFIG_AIC_LVDS_MODE=1
CONFIG_AIC_LVDS_LINK_MODE=0
CONFIG_AICFB_RGB565=y
CONFIG_AICFB_FORMAT=0x0e2
3
4
5
6
7
6. 编译固件
直接使用 SCons 编译:
scons -j8构建成功时会看到:
Luban-Lite is built successfully最终烧录镜像位于:
output/d13x_JLC_rt-thread_helloworld/images/d13x_JLC_v1.0.0.img如果 Bootloader 阶段也需要显示正确的 LVDS 画面,应通过 bm 对 d13x_JLC_baremetal_bootloader_defconfig 重复设置 LVDS模式和面板时序。当前运行时 LVGL适配只要求修改 RT-Thread 应用 defconfig。
7. 烧录后的检查顺序
- 背景应铺满1024×600画面,不应只显示在中央480×272区域。
- 深蓝背景不应出现大面积绿色色块;若出现,首先检查运行镜像中的
CONFIG_AIC_LVDS_MODE是否为1。 - 检查文字和图标边缘是否稳定,确认没有跳动、随机亮点或横向噪声。
- 如果颜色正确但渐变仍有轻微色阶,这是 RGB565 的正常限制。升级到32-bit帧缓冲 会明显增加内存占用;D133EBS只有8 MiB PSRAM,启用双缓冲时需先评估内存。
- 屏幕规格书要求
VGL=-8.0V,允许范围为-8.5~-7.5V;开发板原理图默认约为-6V。长期使用前建议实测屏幕35脚 VGL,并按屏幕规格调整硬件分压。
8. 本次适配相对默认配置的变化
Demo Hub资源:480×272 -> 1024×600
显示接口:并行RGB -> Single Link LVDS
LVDS格式:JEIDA-24,MODE=1
面板分辨率:480×272 -> 1024×600
像素时钟:12 MHz -> 51 MHz
水平参数:HBP/HFP/HSW = 136/160/24
垂直参数:VBP/VFP/VSW = 21/12/2
旋转:原RGB接口的90°数据配置 -> LVDS framebuffer 0°2
3
4
5
6
7
8