当前位置:首页 > 关注 > > 正文

天天观察:一款强大的串口调试工具

来源:面包芯语    时间:2023-06-25 08:27:35

扫描关注一起学嵌入式,一起学习,一起成长

LLCOM是一个可运行lua脚本的高自由度串口调试工具。


(相关资料图)

下载

https://llcom.papapoi.com/llcom.zip

https://ci.appveyor.com/project/chenxuuu/llcom/build/artifacts

所有正式版本(复制到浏览器打开):

https://github.com/chenxuuu/llcom/releases/latest

功能列表

•集成串口监听功能,可监听其他软件的串口通信数据

特色功能示范

使用Lua脚本提前处理待发送的数据

1.结尾加上换行回车

returnuartData.."\r\n"

1.发送16进制数据

returnuartData:fromHex()

此脚本可将形如30313233发送数据,处理为0123的结果

1.更多玩法等你发现

json=require("JSON")t=uartData:split(",")returnjson: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()whiletruedolocal_,udata=sys.waitUntil("UART")--等待消息log.info("taskwaitUntil",udata)localsendResult=apiSendUartData("ok!")--发送串口消息log.info("uartsend",sendResult)endend)--新建任务,每休眠1000ms继续一次sys.taskInit(function()whiletruedosys.wait(1000)--等待1000mslog.info("taskwait",os.time())endend)--1000ms循环定时器sys.timerLoopStart(log.info,1000,"timertest")

甚至你可以利用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(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/71.0.3578.98Safari/537.36Vivaldi/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()

使用此功能,你可以完成大部分的自动化串口调试操作。

接口文档

接口文档(复制到浏览器打开):

https://github.com/chenxuuu/llcom/blob/master/LuaApi.md

觉得文章不错,点击“分享”、“赞”、“在看” 呗!

关键词:

精心推荐

X 关闭

X 关闭