一、概述
本文主要讲解大彩串口屏如何实现串口更新菜单选项。本例使用文本控件、按钮控件、数据记录控件结合Lua脚本来实现下拉菜单的功能。同时,利用Dacai协议的指令,通过数据记录控制来更新菜单选项。
二、适用范围
本文适用于大彩串口屏M系列、IoT型、F系列等支持Lua脚本的机型。
三、实施方法
3.1 接口配置
本例主要使用按钮控件、文本控件和数据记录控件来实现功能。相应的接口配置如图3-1所示。
图3-1 接口配置
3.2 控制配置
文本控件,主要用于显示菜单选项中最终选择的选项。文本控件的输入方式可以设置为用户主机输入。相应的属性如图3-2所示。
图3-2 文本控件属性
图3-3 按钮控件属性
数据记录控件主要用来代替菜单控件的显示。通过选择相应的选项,最终选择的选项将显示在文本控件中。相应的属性如图3-4所示。
图3-4 数据记录控件属性
3.3 实施步骤
3.3.1 下拉菜单功能
下拉菜单的功能主要是通过Lua脚本实现的。实现原理是通过按钮控件触发下拉菜单选项的显示。通过数据记录控件的选择操作,通过控件通知函数on_control_notify(screen, control, value)触发回调。实现读取数据记录控件选中的选项,然后将读取的选项显示在文本控件中。对应的Lua脚本代码如图3-5所示。
图3-5 Lua脚本代码
更新串口指令的主要步骤是:先清除原来的菜单选项,然后重新更新需要显示的选项。相应的操作就是通过串口向屏幕发送相应的指令。对于上述两步的实现,使用的指令包括清除记录数据和添加多行记录。清除记录数据的说明参见图3-6。
图3-6 清除记录数据命令
添加多条记录指令意味着用一条指令更新多个选项的显示。例如:将里面的选项更新为对应的电压参数。相应说明参见图3-7。
图3-7 添加多条记录指令
通过串口发送指令更新显示选项,并可通过按钮实现下拉菜单功能。将里面的选项更新为对应的电压参数,对应的调试效果如图3-8所示。
图3-8 调试效果
4. 总结
本例主要结合数据记录控件可以通过串口灵活更新的特点,直接用数据记录控件代替菜单控件。同时使用一个Lua脚本来处理按钮控件的下拉菜单的功能,并且可以将选中的选项显示为文本控件。通过数据记录控件灵活的更新功能以及Lua脚本的逻辑应用,可以有效实现串口更新菜单选项的功能。