关于STC32G12K128串口2接收数据的问题
<p>直接看程序如图一,使用串口接收一条指令,并把倒数第2个数据幅值给变量currentIndex。但是使用串口调试助手看到的数据如图二,这个变量currentIndex应该为0x05的,但实际打印输出看到的数据为0x00。查了好久都想不明白是什么原因,请教一下各位大神,感谢感谢,非常感谢。</p><p><img src="data/attachment/forum/202603/14/105802hurq83grlgquunua.png" alt="图一.png" title="图一.png" /></p>
<p><img src="data/attachment/forum/202603/14/105806blivt4fbplifpt6u.png" alt="图2.png" title="图2.png" /></p>
<p><img src="data/attachment/forum/202603/14/105816qbkrwoi1wmw5u0uj.png" alt="串口配置.png" title="串口配置.png" /></p>
真TM神奇,啥都没改,下午再测时数据居然就正确了。。。 终于知道原因了,之前是因为前面没有延时,一直在循环判断数据,所以当接收到前面7个数据55 AA AA 55 00 01 03,程序就进入了switch语句了,但是此时串口都还没接收到第8个数据05,所以才会产生这个问题。我在数据判断前增加一个延时就没有问题了。
页:
[1]