我正在寻找一种将代表十六进制值的ascii数据转换为二进制文件的方法。 详细地说,通过将十六进制值转换为字符串来记录与连接的设备(在本例中为GPS接收器)的串行端口上的所有通信。 我正在寻找的是一种将此数据转换回二进制数据的方法。 基本上,我可以在运行的HxD编辑器中执行此操作,并越过从日志提取的字符串。 HxD representation of 2 line logged
我想做的是能够在命令行上执行此操作,而无需手动将测试复制/粘贴到十六进制编辑器。
行始终以B562开头,后接值,例如06,在这种情况下,其输出(以字符串表示)应为'µb'。
作为一个示例,我正在编辑一个文件,其中包含要转换的数据,以及由HxD编辑器编写的结果文件。可以使用u.blox.com提供的称为u-center的工具打开并重播此生成的文件。它显示了正在记录的卫星信息... 输入文件log01.ublox.tmp 输出文件log01.ubx
感谢您的支持。 -Wasili
答案 0 :(得分:1)
您可以使用以下命令将代表十六进制值的ASCII转换为二进制数据:
xxd -r -ps log01.ublox.tmp output.ubx