在嵌入式工作中,在某些情况下查看单片机打印输出不是很方便,比如狭小的空间,室外测试等情况,为此,利用LVGL的各个控件,设计了一个便携式的串口助手。

lvgl移植使用也很简单,只需要配置对应的显示接口和输入接口,一般来讲,使用在屏幕上开窗的方式,比画点的方式帧速率提高很多倍,触摸输入方面,根据相应的端口配置相应的硬件层输出就可以啦!

lvgl使用C语言编写,因此可以运行在多个平台上,嵌入式,win、linux,所以我们可以在电脑上使用仿真器先绘制好图像,完了再移植到嵌入式上,需要注意界面与逻辑的分离,这样的话移植起来方便些,我首先在windows上绘制好大概的界面,最后界面大致如下图所示:

动画.gif

支持的功能:
波特率设置、hex显示选项、发送新行设置选项、接受数据显示、数据发送、单行数据发送与其他提高用户使用效率的选项

在这个设计中使用的控件都很简单,都是一些复选框、下拉框、按钮、文本框、表格等,使用起来非常简单,为了防止误触,文本数据输入时使用的是长按后可以数据输入。

移植到ESP32上,再写堆代码完成逻辑实现,为了提高用户使用效果,还添加了以下功能:
60秒无人操作进入深度休眠状态
在每次单行发送内的文本数据修改后,保存到flash中,下次上电后自动从flash内部读取,提高使用效率

代码文件上传到了公司内部的git服务器上:点击我下载查看