私はuint8_t rxBuffer[200] = {0};
配列を持っています。
バッファは UART からメッセージを受信します
USART1.Receive(rxBuffer, sizeof(rxBuffer));
この rxBuffer で UART 応答を受信し、それらを解析してから、この配列を再利用してさらに応答を解析したいと考えています。このバッファをクリアして再利用するにはどうすればよいですか?
使用してmemset(rxBuffer, 0, sizeof rxBuffer);
みましたが、バッファの内容を印刷しようとすると、デバッグコンソールに何も印刷されません
ここで私が間違っていることは何ですか?
私がやろうとしていることにsudoコードを提供します:
uint8_t rxBuffer[200] = {0};
uint8_t at[] = "AT\r\n";
uint8_t atSetSTA[] = "AT+CWMODE=1\r\n";
DEMO_USART1.Send(at, sizeof(at) - 1);
delay(1000);
DEMO_USART1.Receive(rxBuffer, sizeof(rxBuffer));
print(rxBuffer);
memset(rxBuffer, 0, sizeof rxBuffer)
DEMO_USART1.Send(atSetSTA, sizeof(atSetSTA) - 1);
delay(1000);
DEMO_USART1.Receive(rxBuffer, sizeof(rxBuffer));
print(rxBuffer);
memset(rxBuffer, 0, sizeof rxBuffer)
memset を使用すると、コンソールに何も出力されません。memset を使用しない場合、この場合は以前の応答も出力されます。