你好,我在NUCLEOF412ZG平台上,打算用UART1去发AT指令给外部设备通信,用下面的代码发现不能通信成功,请帮忙看看是什么原因呢?谢谢!
printf("start \r\n"); UARTSerial test_serial = UARTSerial(PA_9, PA_10, 9600); ATCmdParser at = ATCmdParser(&test_serial, "\r\n"); at.send("AT") && at.recv("OK"); at.send("AT+CCID") && at.recv("+CCID: %20[^\n]\nOK\n", &value); printf("value = %d \r\n", value);
我再做了个测试,就一直只调用 at.send("BBAA"), 发送字符串BBAA出去,我用另外一块NUCLEOF412ZG的板子的UART1来接收,发现接收到的ASCII码值为: 0x0d 0x0a 0x42 0x41 0x41, 后面0x42 代表是B,0x41代表是A
所以结果看起来比较奇怪,增加了两个字节 0x0d 0x0a的输出,但是吃掉了一个"B"