俺言語。

自分にしか理解できない言語で書かれた備忘録

【Arduino】シリアル通信の送受信バッファサイズ変更

Arduino Micoroのシリアル送受信バッファサイズ、初期設定は64byteらしい(RAMサイズによっては16byte).

SPIで受信したCANデータをシリアルで送信する際に,IDあたり12byte(ID 2byte, data 8byte, start/end時にend符号で各1byte)に加えて, SLIPフォーマットはデータによりデータ長が2倍まで長くなることを考慮すると最大22byte送信することになる.
これに対して送信バッファ64byteでは複数IDのデータを立て続けに送信する場合,バッファが溢れないか若干不安なので今回は128byteに変更.

変更はC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\HardwareSerial.hの
赤枠部分.MicroのRAMサイズは1023より大きい(ネットでは2559との記事ありhttps://github.com/arduino/Arduino/issues/3822)ようなので,そちらの数値を変更する.

こちらを参考にさせて頂きました。
blog.revetronique.com