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