LVGL移植到AM335x+Linux系统

LVGL移植到AM335x+Linux系统

1. 概述

本文档详细介绍如何将LVGL 8.3版本移植到基于AM335x处理器的Linux系统中,包括LVGL库的配置、tslib触摸驱动的移植以及示例应用的编译运行。整个项目使用CMake作为构建系统。

1.1 开发环境

  • 硬件平台:AM335x处理器
  • 操作系统:Linux
  • LVGL版本:8.3
  • 构建工具:CMake 3.16+
  • 交叉编译工具链:arm-arago-linux-gnueabi-gcc 4.5.3
  • 项目源码:https://gitcode.com/am335xt3/lvgl

PS: LVGL移植基于lv_port_linux v8.3源码,原项目构建工具是Makefile,本项目使用cmake构建。

2. 交叉编译环境配置

2.1 工具链配置

项目使用arm-arago-linux-gnueabi工具链进行交叉编译。在toolchain.cmake中配置如下:

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)

set(CMAKE_C_COMPILER /opt/am335xt3-cross-devkit/bin/arm-arago-linux-gnueabi-gcc)
set(CMAKE_CXX_COMPILER /opt/am335xt3-cross-devkit/bin/arm-arago-linux-gnueabi-g++)
set(CMAKE_ASM_COMPILER /opt/am335xt3-cross-devkit/bin/arm-arago-linux-gnueabi-as)

2.2 编译选项

在toolchain.cmake中设置了必要的编译标志:

set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -g -rdynamic -g0 -Wall -Wshadow -Wundef -Wmissing-prototypes -Wall -Wextra -Wno-unused-function -Wno-error=strict-prototypes -Wpointer-arith -fno-strict-aliasing ...")

3. LVGL配置与编译

3.1 LVGL配置

  1. 配置lv_conf.h文件:

    • 设置显示缓冲区大小
    • 配置色彩深度(LV_COLOR_DEPTH)
    • 启用需要的功能模块(log,虚拟键盘,文件系统等)
  2. 配置显示驱动:

    • 使用fbdev作为显示驱动
    • 配置正确的显示分辨率和颜色格式,比如分辨率是480*272:
    // 初始化并注册显示驱动
    lv_disp_drv_init(&disp_drv);
    disp_drv.draw_buf = &disp_buf;
    disp_drv.flush_cb = fbdev_flush;
    disp_drv.hor_res = 480;
    disp_drv.ver_res = 272;
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值