做网页链接网站,威县做网站多少钱,泉州网站建设方案外包,wordpress发帖提示升级vip写在最前面
屏幕型号 DC10600M070 IDE VisualTFT#xff08;官方#xff09; VSCode#xff08;lua编程#xff09; 用之前看一下官方那个1小时的视频教程就大概懂控件怎么用了#xff0c;用官方的软件VisualTFT很简单 本文只是简单记录遇到的一些坑 lua编辑器
VisualTF…写在最前面
屏幕型号 DC10600M070 IDE VisualTFT官方 VSCodelua编程 用之前看一下官方那个1小时的视频教程就大概懂控件怎么用了用官方的软件VisualTFT很简单 本文只是简单记录遇到的一些坑 lua编辑器
VisualTFT是有lua编辑器的在【工具】那里点开【lua编辑器】就可以进入使用其他编辑器之前也好好看一下官方的这段注释。 官方编辑器打字有种奇妙的卡顿感我用的vscode不会。 VisualTFT生成工程的lua脚本的编码是 GB2312使用其他编辑器的时候注意以这个编码打开这样中文注释就不会乱码了。 顺便如果要编写一些简单的LUA测试小脚本推荐使用在线工具https://c.runoob.com/compile/66/ 菜鸟教程的这个很好用。vscode好像我试过print输出有问题查了下要改配置还挺麻烦遂放弃。
Lua数组 如何从0开始索引
因为屏幕脚本用Lua脚本写的写的就现学了lua脚本语言很简单和python差不多但是lua最大的一个坑是他的默认数组索引是从1开始的不是从0开始然后屏幕厂商给的api要用到的数组索引全是从0开始的。刚开始学的时候没注意以为数组都是0开始坑死我了讨厌lua
默认创建的数组 索引从1开始以下测试脚本使用在线工具编写
print(Hello World!)
local a {1, 2}
for i0, 3, 1 doprint(i)print(a[i])
end
-- 输出
Hello World!
0
nil
1
1
2
2创建从0开始的数组
print(Hello World!)
local a {[0]1, 2}
for i0, 2, 1 doprint(i)print(a[i])
end
-- 输出
Hello World!
0
1
1
2
2
nil通用列表控件显示彩色文字
官方的叫法是数据记录控件我这边通称列表了 因为项目需要记录报警信息但是官方提供的告警记录控件不符合需求给的列表控件文字只能显示为1个颜色就是说你改成红色文字列表里所有文字都是红的不能像告警一样一行显示红色一行显示蓝色。但是告警记录控件可记录的内容受到的限制很大。 告警控件如下图选择列表控件然后更改【记录类型】就可以最后想出来的解决办法也没完全解决是使用列表显示ICON图标【详见官方的】图标使用官方VisualTFT的图标生成工具生成的。而且图标显示的内容是固定的就是在列表里显示图片所以只用来显示内容不变的文本比如“xx事件”像数值这种动态变化的文本就还是只能使用列表默认的颜色来显示。 效果如下样例数据随便写的
列表控件的上限
咨询屏幕厂商得到的数据列表预留的空间不能超过131072【型号 DC10600M070】否则列表内容将不能正常在屏幕上显示在电脑上模拟没问题用屏幕的时候会直接列表为空。 单个表的预留空间 单条记录大小*最大记录数 我基本上使用record_add这个api添加列表记录 该API的格式是record_add(screen_id, control_id, str)str使用英文分号分隔开表示为不同列的内容。测试后发现单条记录大小大概等于这个str字符串的长度不确定如果你单条记录大小设置的太小的话小于str的长度可能会出现最后几列内容为空的情况。
串口通信测试/虚拟串口
使用虚拟串口Virtual Serial Port Driver可以在本机上对虚拟串口屏的通信进行测试官方有提供这个软件的安装包。 打开选择想要用的两个串口号点【Add pair】就可以添加了添加成功在左边列表可以看到上面的是真实的物理串口这里使用给的是COM2和COM5两个端口号。 用visualTFT运行虚拟串口然后进行串口配置并且点击【打开串口】串口号选择刚刚配置的端口号的其中一个COM2就可以了。 另外开一个串口软件这里使用sscom串口号选择配置的另外一个虚拟串口COM5波特率与刚刚配置的虚拟串口屏的波特率一致就可以。
关于曲线
官方给了两种曲线控件都不符合需求。。。 然后自己画了就用两点间直线连接的老方法就用draw_line这个接口函数。 这个功能折磨了我一个月最后效果还不错。 曲线测试没啥好看的