首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

发送到串口的数据,串口接收是相反的?该怎么解决

2012-12-29 
发送到串口的数据,串口接收是相反的?发送到串口的数据是handshake.messageHead : $AA2Fhandshake.messag

发送到串口的数据,串口接收是相反的?
发送到串口的数据是  
  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; //停止位

[解决办法]
在内存中的存放是按字节“低位在前,高位在后”的顺序存放的。
[解决办法]
这和串口没什么关系,串口只是把字节流按顺序发出而已,看你是怎么组织这个要发的数据(可以理解为字节数组),看你的情况,是"字节在前,高字节在后"的发顺序,你也可以"高字节在前,低字节在后"发。
[解决办法]
先將记录串行化,然后再发。这样就与字节高低就没关系了。

热点排行