《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容 。本期推荐的是一个功能强大的串口工具 。支持Lua自动化处理、串口调试、串口监听、串口曲线、TCP测试、MQTT测试、编码转换、乱码恢复等功能 。
功能列表特色功能示范
使用Lua脚本提前处理待发送的数据
return uartData.."rn"
return uartData:fromHex()
【功能强大的串口工具,抓紧收藏!】此脚本可将形如30313233发送数据,处理为0123的结果
json = require("JSON")t = uartData:split(",")return json:encode({key1 = t[1],key2 = t[2],key3 = t[3],})
此脚本可将形如a,b,c发送数据,处理为{“key1″:”a”,”key2″:”b”,”key3″:”c”}的结果 。

文章插图
独立的Lua脚本自动处理串口收发
右侧的Lua脚本调试区域,可直接运行你写的串口测试脚本好爱自动答题脚本,如软件自带的:
--注册串口接收函数uartReceive = function (data)log.info("uartReceive",data)sys.publish("UART",data)--发布消息end--新建任务,等待接收到消息再继续运行sys.taskInit(function()while true dolocal _,udata = https://www.30zx.com/sys.waitUntil("UART")--等待消息log.info("task waitUntil",udata)local sendResult = apiSendUartData("ok!")--发送串口消息log.info("uart send",sendResult)endend)--新建任务 , 每休眠1000ms继续一次sys.taskInit(function()while true dosys.wait(1000)--等待1000mslog.info("task wait",os.time())endend)--1000ms循环定时器sys.timerLoopStart(log.info,1000,"timer test")甚至你可以利用xlua框架的特性好爱自动答题脚本,调用C#接口完成任何你想做的事情
request = CS.System.Net.WebRequest.Create("http://example.com")request.ContentType = "text/html;charset=UTF-8";request.Timeout = 5000;--超时时间request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Vivaldi/2.2.1388.37";response = request:GetResponse():GetResponseStream()myStreamReader = CS.System.IO.StreamReader(response, CS.System.Text.Encoding.UTF8);print(myStreamReader:ReadToEnd())--打印获取的body内容myStreamReader:Close()response:Close()使用此功能,你可以完成大部分的自动化串口调试操作 。
示例图
本文到此结束,希望对大家有所帮助!
猜你喜欢
- C盘爆满,该怎么快速清除?为你节省大量空间!
- C盘满了解决方案2-不知道清理哪些文件怎么办?
- 帝豪1.5手动豪华版全款落地价大概多少钱?
- 最高效的office插件有哪些?
- 世界四大博物馆排名 故宫博物院进前三 第一收集达八百多万件藏品
- 世界十大高的山 玛纳斯鲁峰上榜,最低也超八千米
- 避孕很重要,这几种避孕对女性身体伤害小,女性要记住
- 慢性前列腺炎,从寒论治,一张温阳散寒方,扫除一身湿与寒
- 类似白掌的竽类花卉都有哪些?
