编写上位机与下位机通信的时候,涉及到协议的转换,比较多会使用到二进制.传统的方法,是将数据整体获取到byte数组中,然后逐字节对数据进行解析.这样操作工作量比较大,对于较长数据段更容易计算位置出错. 其实,对于下位机给出通讯的数据结构的情况下,可以直接使用C#的struct将数据直接转换.需要使用到Marshal. 数据结构 假定下位机(C语言编写)给到我们的数据结构是这个,传输方式为小端方式 typedef struct { unsigned long int time; // 4个字节 fl…