Tina-Linux -- 3. LVGL测试

Tina-Linux -- 3. LVGL测试

码农世界 2024-05-30 前端 88 次浏览 0个评论
  • 参考韦东山 – Tina_Linux_图形系统_开发指南

    Tina-linux lvgl 配置

    环境配置

    进入Tina-SDK根目录
    source build/envsetup.sh
    lunch XXX平台名称
    make menuconfig
    

    LVGL

    Gui --->
        Littlevgl --->
            < > lv_demo
            <*> lv_examples (lvgl官方demo)
            -*- lvgl-8.1.0 use sunxifb double buffer (使能双缓冲,解决撕裂问题)
            [*] lvgl-8.1.0 use sunxifb cache (使能fb cache)
            [ ] lvgl-8.1.0 use sunxifb g2d (使能G2D硬件加速)
            [ ] lvgl-8.1.0 use sunxifb g2d rotate (使能G2D硬件旋转)
            [ ] lvgl-8.1.0 use freetype (自动链接freetype)
            <*> lv_g2d_test (g2d接口测试用例)
            <*> lv_monitor (压力测试与数据监测软件)
            < > smartva
            < > smartva_ota
    
    • LVGL 源码路径

      tina/package/gui/littlevgl-8

      sunxig2d

      • 源码路径
        tina/package/gui/littlevgl-8/lv_drivers/display/sunxig2d.c
        

        sunximem

        • 源码路径
          tina/package/gui/littlevgl-8/lv_drivers/display/sunxigmem.c
          

          evdev

          • 源码路径
            tina/package/gui/littlevgl-8/lv_drivers/indev/evdev.c
            
            • 添加触摸屏控制

              在tina/package/gui/littlevgl-8/lv_examples/src/lv_drv_conf.h 中修改 EVDEV_NAME 为触摸屏的 event 节点

              #ifndef USE_EVDEV
              #  define USE_EVDEV           1
              #endif
              #ifndef USE_BSD_EVDEV
              #  define USE_BSD_EVDEV       0
              #endif
              #if USE_EVDEV || USE_BSD_EVDEV
              #  define EVDEV_NAME   "/dev/input/event2"        /*You can use the "evtest" Linux tool to get the list of devices and test them*/
              #  define EVDEV_SWAP_AXES         0               /*Swap the x and y axes of the touchscreen*/
              

              其中 event可以在 开发板 linux 中使用 cat /dev/input/event确认是否正确

              编译测试

              编译

              • 以上修改完成后,按照正常编译流程编译
                ~:source build/envsetup.sh
                ~:lunch 4
                ~:make -j32 V=s
                编译完成后打包镜像
                ~:pack
                
                • 注意:pack 打包镜像时,有可能遇到 dl 包过大的错误如下:

                  这是因为内核编译开启了 lvgl 的包,导致编译生成的 rootfs.fex 包大于设定的最大尺寸限制。需要修改一下最大尺寸设置,修改路径如下:

                  tina-d1-h/device/config/chips/t113/configs/100ask/sys_partition.fex : 
                  [partition]
                      name         = rootfs
                      size         = 74800
                      downloadfile = "rootfs.fex"
                      user_type    = 0x8000
                  

                  修改后执行 pack 即可

                  测试

                  将新生成的 img 镜像烧录到开发板,进入系统后执行指令如下:

                  ~:lv_examples 0	(lv_demo_widgets)
                  ~:lv_examples 1  (lv_demo_music)
                  ~:lv_examples 2  (lv_demo_benchmark)
                  ~:lv_examples 3  (lv_demo_keypad_encoder)
                  ~:lv_examples 4  (lv_demo_stress)
                  ~:lv_monitor
                  

转载请注明来自码农世界,本文标题:《Tina-Linux -- 3. LVGL测试》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,88人围观)参与讨论

还没有评论,来说两句吧...

Top