linux cpu占用率如何看
295
2022-09-03
1317_使用pyserial通过python读取串口数据显示的同时记录log文件
全部学习汇总: GreyZhang/g_serial: Some serial learning notes which may be usefull in embedded system debugging. (github.com)
前面,已经借助于pyserial实现了串口信息的读取以及显示。其实,增加一个log文件的记录也是很简单的事情了。如果只是增加最原始的log信息,那么直接用一个文件记录一下就可以了。这里,我实现了一个简单的尝试。
在设计的时候,我没有一次打开文件之后就全都尝试写,而是采用了不断打开文件追加的方式。因为,使用其他的串口工具的时候我也有一些查看log文件的尝试,我觉得log文件如果能够不断刷新,不断看到新的数据也是很好的。
这样,在不断记录的同时我们可以借助于VS Code等加载刷新比较迅速的编辑器来看记录的内容。
我之前使用Arduino的串口监控工具频次特别多,一者是因为我接触到的串口监控工具可能本来就不是很多,另一方面则是Arduino的串口监控工具其实已经完全满足了我个人的需求。这样,我也就没有其他的驱动力去寻找使用更多的工具了。我用Arduino的串口监控工具很重要的一点在于它支持时间戳信息的展示,这样,对于我去理解软件执行的动作时序间隔是很有帮助的。如果,log文件里面有这样的信息,那么这也是很好的。
我也用过putty这个开源软件,用了挺长的时间。也用来记录过log,比较方便。但是使用这个工具令我不是很满意的一点就是log文件里面不方便增加时间戳信息。我看了网上的说明,解释说这样的功能不好做。但是,网站上给出了另外一种解决方案。我没有去研究为什么不好做,或许在某些场景之下,这样的实现是有挑战度的。但是对我来说,我需要的数据量不大,或许也不是很快,简单读取一下系统时间作为参考就非常好用了。
为此,做了上面的设计。
当然,这个只是随手一写,这个设计也不是很好。主要的问题点就是重复代码很多,其实,时间戳的处理可以孤立成一个专门的函数。但是,简单的测试或者临时用用,在代码这么简单的情况下,这么用着也是可以的。这里,我不仅增加了一个写入,也增加了一个print的过程。其实也很简单,我想在print的过程中也看到类似Arduino串口监控工具的效果。
这样,打印显示的效果就有了。
再看一下log信息,基本上也符合我期望的效果。这样的功能,后期如果集成到我的开发工作流中,对我的工作效率以及质量还是会有一些帮助的。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~