发送到串口的数据,串口接收是相反的?
发送到串口的数据是
handshake.messageHead := $AA2F;
handshake.messageLen := $00000009;
handshake.messageType := $00;
handshake.messageAcc := $00E2;
接收到的却是 2F AA 09 00 00 00 00 E2 00
这是为啥?
串口状态如下:
cc.dcb.BaudRate:=115200; //波特率
cc.dcb.ByteSize:=8; //数据位
cc.dcb.Parity := NOPARITY; //校验位
cc.dcb.StopBits := ONESTOPBIT; //停止位
[解决办法]
在内存中的存放是按字节“低位在前,高位在后”的顺序存放的。
[解决办法]
这和串口没什么关系,串口只是把字节流按顺序发出而已,看你是怎么组织这个要发的数据(可以理解为字节数组),看你的情况,是"字节在前,高字节在后"的发顺序,你也可以"高字节在前,低字节在后"发。
[解决办法]
先將记录串行化,然后再发。这样就与字节高低就没关系了。