【Qt串口调试助手】1.4 - 16进制接收/发送

 

作为串口调试助手,16进制显示当然是必备功能。

参考文章:QString、QByteArray 16进制转换

GitHub源码:Qt串口调试助手下载

16进制接收

添加两个复选框,"16进制接收","16进制发送"。

由于我的接收策略为 仅对刚接收到的串口数据进行显示,没有自建的全局缓冲区,以调高效率。于是接收部分的16进制显示转换,要分为3个部分:

  • 1. 根据 "16进制接收" 复选框的值,选择性的将每次新接收到的数据,进行16进制显示转换。

  • 2. 勾选 "16进制接收" 复选框时,将先前接收到的asc2显示部分,全部转换为16进制显示。

  • 3. 取消勾选 "16进制接收" 复选框时,将接收区的16进制显示,全部转换为 asc2显示。

16进制发送

发送同理,一样分为3个部分:

  • 1. 根据 "16进制发送" 复选框的值,选择性的将发送区的数据,从16进制显示转换为 asc2的 QByteArray,再串口发送出去。

  • 2. 勾选 "16进制发送" 复选框时,将发送区的asc2显示部分,全部转换为16进制显示。

  • 3. 取消勾选 "16进制发送" 复选框时,将发送区的16进制显示部分,全部转换为 asc2显示。

运行现象

16进制和asc2可随意相互转换,无任何进制错误出现。

GitHub源码:Qt串口调试助手下载

猜你喜欢

转载自blog.csdn.net/Mark_md/article/details/109050581