# exEasyUI 演示 ## 一、功能模块介绍 ### 1.1 核心主程序模块 1. **main.lua** - 主程序入口,负责系统初始化和任务调度 2. **ui_main.lua** - exeasyui 主程序,负责执行exeasyui的任务调度 ### 1.2 显示页面模块 1. **home_page.lua** - 主页模块,提供应用入口和导航功能 2. **component_page.lua** - UI 组件演示模块 3. **default_font_page.lua** - 默认字体演示模块 4. **gtfont_page.lua** - GTFont 矢量字体演示模块 5. **hzfont_page.lua** - HZFont 矢量字体演示模块 ### 1.3 硬件驱动模块 1. **hw_default_font_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和默认字体驱动模块,使用内置 12 号点阵字体 2. **hw_gtfont_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和GTFont 矢量字库驱动模块 3. **hw_hzfont_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和HZFont 矢量字体驱动模块(开发中) 4. **hw_customer_font_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和自定义外部字体驱动模块(开发中) 当前演示的exeasyui V1.7.0版本还不支持同时启用多种字体,仅支持选择一种字体初始化,同时启用多种字体功能正在开发中 ## 二、演示效果
主页
组件演示页
默认字体页
GTFont页




## 三、演示硬件环境 ### 3.1 硬件清单 - Air8101 核心板 × 1 - AirLCD_1020 触摸配件板 × 1 - GTFont 矢量字库,使用的是 AirFONTS_1000 配件板 × 1 - 双排40PIN的双头线 x 1 - 母对母杜邦线 × 6,杜邦线太长的话,会出现 spi 通信不稳定的现象; - TYPE-C 数据线 × 1 - Air8101 核心板和 AirLCD_1020配件板以及AirFONTS_1000 配件板的硬件接线方式为 - Air8101 核心板通过 TYPE-C USB 口供电(核心板背面的功耗测试开关拨到 OFF 一端,正面开关打到 3.3V 一端),此种供电方式下,vbat 引脚为 3.3V,可以直接给 AirLCD_1020配件板和AirFONTS_1000 配件板供电; - 为了演示方便,所以 Air8101 核心板上电后直接通过 vbat 引脚给 AirLCD_1020配件板和AirFONTS_1000 配件板提供了 3.3V 的供电; - 客户在设计实际项目时,一般来说,需要通过一个GPIO来控制LDO给LCD和TP供电,这样可以灵活地控制供电,可以使项目的整体功耗降到最低; - 核心板和配件板之间配备了双排40PIN的双头线,可以参考下表很方便地连接双方各自的40个管脚,插入或者拔出双头线时,要慢慢的操作,防止将排针折弯; ### 3.2 接线配置 #### 3.2.1 LCD 显示屏接线
Air8101核心板
AirLCD_1020配件板
gnd
GND
vbat
VCC
42/R0
RGB_R0
40/R1
RGB_R1
43/R2
RGB_R2
39/R3
RGB_R3
44/R4
RGB_R4
38/R5
RGB_R5
45/R6
RGB_R6
37/R7
RGB_R7
46/G0
RGB_G0
36/G1
RGB_G1
47/G2
RGB_G2
35/G3
RGB_G3
48/G4
RGB_G4
34/G5
RGB_G5
49/G6
RGB_G6
33/G7
RGB_G7
50/B0
RGB_B0
32/B1
RGB_B1
51/B2
RGB_B2
31/B3
RGB_B3
52/B4
RGB_B4
30/B5
RGB_B5
53/B6
RGB_B6
29/B7
RGB_B7
28/DCLK
RGB_DCLK
54/DISP
RGB_DISP
55/HSYN
RGB_HSYNC
56/VSYN
RGB_VSYNC
57/DE
RGB_DE
14/GPIO8
LCD_BL
13/GPIO9
LCD_RST
8/GPIO5
LCD_SDI
9/GPIO6
LCD_SCL
68/GPIO12
LCD_CS
75/GPIO28
TP_RST
10/GPIO7
TP_INT
12/U1TX
TP_SCL
11/U1RX
TP_SDA
#### 3.2.2 GTFont 字库接线
Air8101 核心板AirFONTS_1000配件板
66/GPIO3CS
67/GPIO4MOSI
8/GPIO5MISO
65/GPIO2CLK
vbatVCC
#### 3.2.3 接线图 ![](https://docs.openLuat.com/cdn/image/Air8101_AirLCD_1020_AirFONTS_1000接线图.jpg) ## 四、演示软件环境 ### 4.1 开发工具 - [Luatools下载调试工具](https://docs.openluat.com/air8101/luatos/common/download/) - 固件烧录和代码调试 ### 4.2 内核固件 - [点击下载Air8101最新版本内核固件](https://docs.openluat.com/air8101/luatos/firmware/),demo所使用的是LuatOS-SoC_V1006_Air8101 1号固件 ## 五、演示核心步骤 ### 5.1 硬件准备 1. 按照硬件接线表连接所有设备 2. 如使用 GTFont,需要连接 AirFONTS_1000 配件板 3. 通过 TYPE-C USB 口供电 4. 检查所有接线无误 ### 5.2 软件配置 在 `main.lua` 中配置系统参数: ```lua -- 必须加载才能启用exeasyui的功能 ui = require("exeasyui") -- 加载lcd、tp和字库驱动管理功能模块,有以下四种: -- 1、使用lcd内核固件中自带的12号中文字体的hw_default_font_drv,并按lcd显示驱动配置和tp触摸驱动配置进行初始化 -- 2、使用hzfont核心库驱动内核固件中支持的软件矢量字库的hw_hzfont_drv.lua,并按lcd显示驱动配置和tp触摸驱动配置进行初始化 -- 3、使用gtfont核心库驱动AirFONTS_1000矢量字库配件板的hw_gtfont_drv.lua,并按lcd显示驱动配置和tp触摸驱动配置进行初始化 -- 4、使用自定义字体的hw_customer_font_drv(目前开发中) -- 最新情况可查看模组选型手册中对应型号的固件列表内,支持的核心库是否包含lcd、tp、12号中文、gtfont、hzfont,链接https://docs.openluat.com/air780epm/common/product/ -- 目前exeasyui V1.7.0版本支持使用已经实现的四种功能中的一种进行初始化,同时支持多种字体初始化功能正在开发中 require("hw_default_font_drv") -- require("hw_hzfont_drv")开发中 -- require("hw_gtfont_drv") -- require("hw_customer_font_drv")开发中 -- 加载exeassyui扩展库实现的用户界面功能模块 -- 实现多页面切换、触摸事件分发和界面渲染功能 -- 包含主页、组件演示页、默认字体演示页、HZfont演示页、GTFont演示页和自定义字体演示页 require("ui_main") ``` ### 5.3 屏幕参数配置 在对应的驱动文件中根据实际硬件调整硬件参数: - **hw_default_font_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和默认字体驱动模块,使用内置 12 号点阵字体 - **hw_gtfont_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和GTFont 矢量字库驱动模块 - **hw_hzfont_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和HZFont 矢量字体驱动模块(开发中) - **hw_customer_font_drv.lua** - lcd显示驱动配置、tp触摸驱动配置和自定义外部字体驱动模块(开发中) ### 5.4 软件烧录 1. 使用 Luatools 烧录对应型号的最新内核固件 2. 下载并烧录本项目所有脚本文件 3. 将图片文件随脚本文件一起烧录到脚本分区 4. 设备自动重启后开始运行 5. [点击查看Luatools 下载和详细使用](https://docs.openluat.com/air8101/common/Luatools/) ### 5.5 功能测试 #### 5.5.1 主页面操作 1. 设备启动后显示主页面,包含四个功能按钮 2. 查看系统标题和版本信息 3. 点击各功能按钮进入对应演示页面 #### 5.5.2 组件演示页面 1. 测试进度条组件的动态更新 2. 在输入框中输入文本测试 3. 点击按钮查看打印日志 4. 操作复选框查看状态变化 5. 体验消息框的弹出和按钮响应 6. 使用下拉框选择选项 7. 查看图片轮播效果(如有图片文件) #### 5.5.3 字体演示页面 1. **默认字体页**:查看固定 12 号字体的颜色和中英文显示 2. **GTFont 页**:体验多尺寸矢量字体显示效果 3. 在各页面使用返回按钮回到主页 ### 5.6 预期效果 - **系统启动**:正常初始化,显示主页面 - **页面切换**:流畅的页面过渡效果 - **组件交互**:所有 UI 组件响应灵敏 - **字体显示**:各字体页面正常显示,动态调整功能正常 - **触摸操作**:准确的触摸定位和事件响应 ### 5.7 故障排除 1. **显示异常**:检查 LCD 接线,确认对应驱动文件中的硬件参数正确 2. **触摸无响应**:检查 I2C 接线,确认触摸芯片型号配置正确 3. **字体显示异常**:确认选择的字体驱动与硬件匹配 4. **图片无法显示**:确认图片文件已正确烧录到指定路径 5. **系统卡顿**:调整 `ui_main.lua` 中的sys.wait(time)刷新率参数 ## 六、扩展开发 本演示 demo 所有接口都在 [exeasyUI UI 扩展库](https://docs.openluat.com/osapi/ext/exeasyui/)内有详细说明,如需实现更丰富的自定义功能可按接口说明实现。