我正在使用 Microchip 的 PIC32MX795F512H 设备和 RN42 蓝牙模块。
我注意到一个奇怪的行为。从这个 C 代码片段:
secs = G_CLOCK;
while(G_CLOCK-secs<300); // delay 300 ms
UART3WriteString("$$$");
secs = G_CLOCK;
while(G_CLOCK-secs<300); // delay 300 ms
UART3WriteString("gf\r\n");
secs = G_CLOCK;
while(G_CLOCK-secs<300); // delay 300 ms
strcpy(privData->btmac,result);
UART3WriteString("---\r\n");
secs = G_CLOCK;
while(G_CLOCK-secs<600); // delay 600 ms
UART3WriteString("Test 123\r\n");
UART3WriteString("Test 456\r\n");
UART3WriteString("Test 789\r\n");
UART3WriteString("Test abc\r\n");
然后我收到这个输出:
Test 123
Test 456
Test 789
Test abc
CMD
50B7C3F7033A
END
这里奇怪的是所有最后 4 个打印实际上都是在开始时输出的。那么实际上首先发生了什么?是用 GF 命令进入命令模式吗?还是 4 个“Test xxxx”UART3WriteString 命令?
谢谢