嵌入式技术论坛
直播中

李军

7年用户 1234经验值
私信 关注
[问答]

STM32F407 ATK explorer移植LVGL运行报错如何解决?

移植下载到开发板直接打印找不到触屏驱动
2.jpg

回帖(8)

王强

2023-2-9 11:46:39
TP 驱动配置的不对吧
举报

李军

2023-2-9 11:46:47
直接用的4.1.1版本bsp,这个stm32F407-atk-exploere bsp已经适配了LVGL,不知道TP驱动配置要怎么改啊。
举报

李军

2023-2-9 11:46:53
在probe IIC设备的时候读取出来LCD的CID为0x1158,代码在这里进行比较的时候不匹配直接return错误导致加载touch tap驱动失败。难道LVGL只支持CID为 0x9147?这里的判断是多余的吧?
举报

王强

2023-2-9 11:47:01
这个TP 要开你用的哪个?你的LCD上有触摸吗?
举报

李军

2023-2-9 11:47:11
demo无法显示,这是为什么啊?
举报

李军

2023-2-9 11:47:17
请问在哪里选择开我自己的TP驱动,我在menuconfig没找到对应的配置?
举报

王强

2023-2-9 11:47:25
需要的话就自己在Kconfig 里加呗,并不是所有的BSP,拿过来就能正常的跑,要根据自己的硬件进行相应的适配
举报

李军

2023-2-9 11:47:58
总算是跑起来了,首先列一下我遇到的各种坑:
1、LCD的touch驱动无法正常probe;
2.jpg
首先在这里我使用的LCD的tp驱动芯片CID并不是9147,读取出来的是1158,我的这块LCD又是正点原子explorer一起配套买的,后面我尝试下载正点原子官方提供的综合程序程序,发现tuoch确实是有问题,我也搜了关于1158的tp驱动也没找到,后面想要不直接改正点原子里面判断cid的那块代码,直接改成cid是否等于1158,测试发现touch功能确实能用,那这不就简单了,直接更改bsp中的drv_touch_ft.c的这块代码。
2.jpg
2、demo无法执行无法显示
这里呢首先是bsp提供的这个lv_demo.c是无法直接用的,这里我们要改一下代码,整个流程就是:查找lcd设备->初始化lcd->执行demo程序->轮询调用lvgl的lv_task_handler函数,lv_task_handler会调用disp_flush这个函数去轮询刷新lcd屏幕。下面是我重新写的demo.c:
2.jpg
烧录后的lcd显示也正常触屏功能也正常,这里我也试了软件包里提供的music的那个demo也是能正常运行的。

2.jpg
举报

更多回帖

发帖
×
20
完善资料,
赚取积分