我是靠谱客的博主 大胆胡萝卜,最近开发中收集的这篇文章主要介绍ESP32 LVGL GUI开发 idf.py menuconfig 添加新的触摸芯片菜单一、添加驱动芯片的.c源文件包含二、添加idf.py menuconfig菜单项三、添加驱动文件下载验证,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

LVGL已经集成了非常多的液晶与触摸芯片支持,配置中选择对应芯片配置一下即可,非常方便,但开发中还会遇到其它没有添加到menuconfig中的芯片。

由于esp32引脚非常少,所以找到一款IIC接口的4线电阻触摸芯片控制器NS2009,记录一下怎么添加到menuconfig中

NS2009是一款带I2C接口的4线制电阻式触摸屏控制芯片

12位分辨率A D转换器。

可测量手指在触摸屏上的压力。

2.0-5V宽电压。

一、添加驱动芯片的.c源文件包含

打开LVGL驱动触摸驱动目录中的CMake文件,componentslvgl_esp32_driverslvgl_touchCMakeLists.txt

在# Include only the source file of the selected display controller.下面添加你的新驱动芯片,按原有的格式添加即可,我这里添加的是NS2009 IIC总线4线电阻屏触摸控制器

二、添加idf.py menuconfig菜单项

打开LVGL驱动触摸驱动目录中的Kconfig文件,componentslvgl_esp32_driverslvgl_touchKconfig

在config LVGL_TOUCH_CONTROLLER下添加一行新的驱动芯片,如下图,我添加的是NS2009,序号往上加即可。

同文件中继续添加菜单显示选择项,如下图,我添加的NS2009是IIC接口,所以按FT6X06的配置即可,配置为I2C接口

相同文件下,接着添加配置对应IIC端口选择菜单和XY轴调换菜单,X轴翻转,Y轴翻转菜单,按FT6X06的配置修改即可

三、添加驱动文件下载验证

在工程路径下执行idf.py menuconfig命令

配置界面进入Component config → LVGL Touch controller → Select a touch panel controller model.   触摸芯片选择菜单中,如下图,发现已经有NS2009选项了,我们选中它回车键

发现下面的菜单变成了I2C接口选择和引脚选择还有触摸配置菜单可以配置XY轴调换,X轴翻转,Y轴翻转

保存退出菜单,返回到VSCode中,打开项目根目录中的sdkconfig文件,发现LVGL Touch controller配置全部变为NS2009的配置了

接下来把componentslvgl_esp32_driverslvgl_touch中的ft6x36.c和.h文件复制一份,修改名称为NS2009.c.h

修改touch_driver.c 和.h文件。touch_driver.h文件添加NS2009配置定义包含头文件。touch_driver.c修改LVGL的触摸初始化和触摸读取的接口函数NS2009_init,NS2009_read(drv, data),在NS2009.C要实现这两个函数

下载测试,手指越用力,压力读值越小

最后

以上就是大胆胡萝卜为你收集整理的ESP32 LVGL GUI开发 idf.py menuconfig 添加新的触摸芯片菜单一、添加驱动芯片的.c源文件包含二、添加idf.py menuconfig菜单项三、添加驱动文件下载验证的全部内容,希望文章能够帮你解决ESP32 LVGL GUI开发 idf.py menuconfig 添加新的触摸芯片菜单一、添加驱动芯片的.c源文件包含二、添加idf.py menuconfig菜单项三、添加驱动文件下载验证所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部