首页
学习
活动
专区
圈层
工具
发布

基于web页面开发串口程序界面---后台实现

tools.py专门是本程序中的串口操作

引入serial库

经测试,当使用软件创建的虚拟串口时,系统自带的serial库查询不到,所以这里同时引用了在网上找的一段代码list_ports_winreg.py,经测试可以查询到虚拟串口。

计算crc

得到本机的串口列表,以及以指定参数打开串口,关闭串口

writeText将用空格分隔的16进制数字表示的文本转换为对应的字节,然后写入串口,等待串口返回字节流。

checkText空格分隔的16进制数字表示的文本,由于后两位表示crc校验结果,检查是否和将本身计算得到的crc一致。

dictParse字典定义的是根据每种业务类型名称,找到将字节数组转换为其字符串表示的函数

dictReverse和dictParse相反,根据业务类型名称,找到由其字符串表示转换为字节数组的函数

比如对于['14', '09', '0e', '0f', '33', '00']文本表示的16进制数组,parseTIME_HEX将其转换为'2020-09-14 15:51:00'的字符串

相反,对于'2020-09-14 15:51:00',reverseTIME_HEX将其转换为['14', '09', '0e', '0f', '33', '00']文本表示的16进制数组

parseText将文本表示的16进制数组,根据指定的格式,转换为对应的业务含义数组

比如当text参数为下图hexes时

formats为下图params时,

时,parseText得到的结果是下图data

返回到页面上就是

相反reverseRecord将字符串表示的业务含义的数组转换为文本表示的16进制数组。

下一篇
举报
领券