我有一个嵌入式微控制器系统,它通过 uart 与我的计算机通信,在这个开发点上应该自己发送有效数据。我已经触发了对这个设备的“扫描”,它的作用就是将它读取的数据自动发送到主机设备。我现在有一个包含原始十六进制数据值的文本文件,可以进行处理。我正在发送以 0x54 开头并以 0x55 结尾的数据包,它们有 4 个(仪器每次“读取”4 个数据包)。一个数据包在 0x54 之后包含两个“标识符”字节,然后是一堆 6 个字节的数据,每个数据包总共 10 个字节。根据数据包标识符,其中的数据可以是浮点数或整数。
我基本上想设计一个命令行程序,它接收一个包含所有这些数据的原始文本文件,并输出一个文本文件,在数据包之间用逗号分隔,并将数据转换为其可读的十进制对应物。每第 4 个转换的数据包换一个新行将非常有用。我想在 C 中执行此操作(我对嵌入式 C 的编码相对精通,并且我可以很容易地在类型之间来回转换十六进制值)但是我在编写 C 可执行文件方面没有太多经验。开始这个小迷你项目的任何帮助都会很棒。我需要知道如何创建命令行可控可执行文件、读取数据文件、操作数据(我想我现在可以做到)然后将数据导出到另一个文件。我已经安装了 netbeans c/c++。
这是原始数据文件: