我设置了8个8位buffer,用来装64个二级对管的状态值。
现在出现了2个问题:
1、我在调试窗口看到8个buffer的值是
buffer[0]=0x02;
buffer[1]=0x00;
buffer[2]=0x00;
buffer[3]=0x00;
buffer[4]=0x02;
buffer[5]=0x00;
buffer[6]=0x00;
buffer[7]=0x00;
但是用串口调试助手的16进制接受到的数据就是 04 04 00 00 00 00 00 00 04 04 00 00 00 00 00 00,相当于发送到PC机上的buffer值都左移了一位。
2、我每个buffer有8个字节,就如上面数据,为什么我发送过去的每个buffer的值都重复了一遍?理想状态应该是02 00 00 00 02 00 00 00
3、当每一轮的扫描开始时,当我没有改变二级对管的状态下,我的8个Buffer值应该为00 00 00 00 00 00 00 00;但是我用串口调试助手看到的值却是03 00 00 00 03 00 00 00,在调试窗口看到的buffer为:
buffer[0]=0x01;
buffer[1]=0x00;
buffer[2]=0x00;
buffer[3]=0x00;
buffer[4]=0x01;
buffer[5]=0x00;
buffer[6]=0x00;
buffer[7]=0x00;
我实在是不知道为什么,才来请教各位高手的。麻烦指点一下。。。谢谢了 |