PC(親基板)からUartで18バイト受信して処理を行うプログラムを作成しています。
R_UART0_Receive((uint8_t *)RECV_DATA0, 18);
で受信処理をしていて、通常は正常に動作しているのですが、お客様の親基板側のマイコンリセット時に
Uartにノイズがのってしまて、18バイトが送られてこないので、Uartが受信完了にならず、プログラムが
正常に動作しなくなります。
コード生成ツールを使用してプログラムを作成しておりますが、想定していないバイト数の受信をした時に
対応する方法はありますでしょうか?
わかさん、鈴木と申します。
タイムアウト機能がありませんので、タイマ割り込みなどで、タイムアウトを監視するのがよいと思います。
タイムアウト時の処理としてPCへの再送要求、マイコン側の再受信処理などが考えられます
以上、よろしくお願いします