anyuianyui
anyui
anyui-LIVE
反馈问题
  • English
  • 简体中文
anyui
anyui-LIVE
反馈问题
  • English
  • 简体中文
  • 介绍

    • 介绍
  • 快速开始

    • 快速开始
  • 工作区

    • 工作区
  • 编辑器

    • 概览
    • 工具栏
    • 导航器
    • 检查器
    • 状态栏
    • 设置
    • 画布
    • 预览
  • 主题

    • 图片
    • 字体
    • 布局
    • 动态 LVGL 版本
    • 覆盖屏幕尺寸
    • 代码生成
    • 移植

移植将生成的 anyui-LIVE 输出迁移到目标设备,或将其集成到现有项目中。本指南介绍迁移、移植以及与其他系统的集成。

概述

anyui-LIVE 专注于 UI 设计,生成的 UI 代码被设计为独立于特定硬件和开发工具(如 Keil)。生成代码可迁移到任何满足 LVGL 要求的目标设备。

被移植的输出参见代码生成指南,其依赖的代码参见图片指南与字体指南。

移植流程

UI 代码

所有 UI 代码生成在 {root}/generated 目录中,包括界面实现和转换后的资源(图片、字体、Lottie)。移植时:

  1. 将 generated 代码复制到你的项目中。
  2. 调用 setupUI() 初始化 UI。
  3. 为目标工具链编译项目。

此代码为自动生成,不应手动修改。

lv_conf.h

维护一份设备专属的 lv_conf.h 副本,至少包含以下配置:

/** 必需配置 */
#define LV_HOR_RES_MAX (?) // 水平分辨率
#define LV_VER_RES_MAX (?) // 垂直分辨率
#define LV_COLOR_DEPTH 16
/* 可用于 lv_mem_alloc() 的内存大小,单位字节(>= 2kB) */
#define LV_MEM_SIZE (?) // 内存大小(字节)

/** 按需的可选配置 */
#define LV_USE_LOG 1 // 启用日志

#define LV_USE_FS_STDIO 1 // 启用文件系统
#define LV_USE_PNG 1 // 启用 PNG 解码器
#define LV_USE_JPEG 1 // 启用 JPEG 解码器
#define LV_USE_BMP 1 // 启用 BMP 解码器
#define LV_USE_GIF 1 // 启用 GIF 解码器

#define LV_USE_BTN 1 // 启用按钮
#define LV_USE_IMG 1 // 启用图片
#define LV_USE_LABEL 1 // 启用标签
// 按需添加其他组件

/** 设备专属排除项 */
//#define USE_SIMULATOR

与外部系统集成

生成代码可与现有嵌入式项目集成:

  • 应用入口 - 在 LVGL 初始化后,从 main() 调用 setupUI()。
  • 通信 - 通过自定义处理器处理来自 UI 的命令。

相关指南

  • 字体 - 移植中包含的字体资源。
  • 工作区 - 生成的文件夹。
  • 概览 - 被移植的界面。
  • 代码生成 - 生成的输出与入口点。
Prev
代码生成