社区导航

 

搜索
查看: 816|回复: 4

[原创] ESP32-S2开发之坑(3)--移植littlevgl

[复制链接]

1021

TA的帖子

6

TA的资源

版主

Rank: 6Rank: 6

发表于 2020-5-15 22:27 | 显示全部楼层 |阅读模式

       littlevgl获取 按以下readme说明进行获取  https://github.com/littlevgl/lv_port_esp32

     esp32s2移植

port分支是针对esp32,楼主一开始觉得esp32s2spi外设应该与esp32一样,接口按理应该完全兼容,所以试下改变target,然后menuconfig配置下即可,没料完全不能用!!不得已就开始自己移植。

首先先把编译目标切换到esp32s2,也就是idf.py set-target esp32s2,进行切换。

image-20200515223152-1.png

image-20200515223152-2.png

再者配置下menuconfigidf.py menuconfig

image-20200515223152-3.png

 

image-20200515223152-4.png

使用的flash容量为4MB,由原来的2MB改为4MB

image-20200515223152-5.png

再来配置component config

image-20200515223152-6.png

看下ESP32S2-specific,主要配置主频,以及配置外部psram作为内存管理

image-20200515223152-7.png

Psram配置

image-20200515223152-8.png

image-20200515223152-9.png

       如此也就完成了配置工作,我们开始idf.py bulid,编译过程中有些许错误,楼主忘了截图,如有坛友有编译问题的,可以回帖看下能否解决。

 

 



回复

使用道具 举报

1021

TA的帖子

6

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2020-5-15 22:28 | 显示全部楼层
本帖最后由 RCSN 于 2020-5-15 22:40 编辑

编译完成后,烧录到板子上,idf.py –p /dev/ttyUSB0 flash,烧录进入后发现系统一直复位,提示如下

image-20200515222800-1.png

 

 

搜索后,发现lgvl使用的esp32中,显示线程用了第二个核心,而其他调度则用了第一个核心。而esp32s2是单核,我们需要改动下一下,显示都用单核。

 

 

image-20200515222800-2.png

 

 

 

 

image-20200515222800-3.png

 

 

       烧录进去后发现显示完全不对,主要是没有显示相关图标,只显示一堆重叠颜色,而刷到esp32板子上则正常,我试着单纯循环一个像素刷红蓝绿则正常,但是刷一整张图片不正常,后来查看到的是,lgvl使用的驱动,描点函数使用的spi类似轮询方式发送,而不是使用的DMA发送。

 

 

image-20200515222800-4.png

 

 

       对此我去对比了下两个芯片的用户手册,发现esp32s2的手册极其不全,并且spi并没有介绍其外设,而esp32则很详细,这让我不得不怀疑两者的寄存器并不相同。好在与esp32s2的手册的DMA有对spi进行收发描述,而且esp-idfexample也有对esp32s2DMA收发例子。如此可以进行移植。

 

 

image-20200515222800-5.png

 

 

 

 

image-20200515222800-6.png

 

 

 

image-20200515222800-7.png

 

 

       如此我就在disp-spi.c中做了esp32esp32s2的适配驱动,目前只支持ILI9431

 

 

image-20200515222800-8.png

 

 

       lgvl真正底层描点函数,这里使用类framerbuffer传输。

 

 

image-20200515222800-9.png

 

 

 

image-20200515222800-10.png

 

 

image-20200515222800-11.png

 

 

 

image-20200515222800-12.png

 

 

       编译烧录到板子后,demo一切正常,效果如下,esp32s2刷屏效果还是可以,特别是使用DMA后,在窗口切换中,没有明显的拉窗效果

 

 

 

image-20200515222800-13.png

 

 

 

 

TIM图片20200515222308.gif

 

 

 

 

 

 

 



回复

使用道具 举报

1万

TA的帖子

14

TA的资源

版主

Rank: 6Rank: 6

测评达人

发表于 2020-5-15 22:32 | 显示全部楼层

效果不错👍



回复

使用道具 举报

298

TA的帖子

1

TA的资源

版主

Rank: 6Rank: 6

发表于 2020-5-16 09:12 | 显示全部楼层

搞个gameboy 啊

 

点评

游戏机不玩,github一堆,可以自己移植  详情 回复 发表于 2020-5-16 09:29


回复

使用道具 举报

1021

TA的帖子

6

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2020-5-16 09:29 | 显示全部楼层

游戏机不玩,github一堆,可以自己移植



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 1/8 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-5-29 12:23 , Processed in 0.199040 second(s), 25 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表