私はシリアルポート(Arduino)からデータを読み込み、フレーミング(数バイトで同期)しています。これを行うには、データを大きなバッファに読み込んでいます。 フレームを取得したら、データを抽出し、バイト配列とそのサイズを受け入れるserial.write
(Serial.write(buf, len
)を使用して別のシリアルポートに送信します。バイト配列の一部を送信する
データサイズがランダムになる可能性があるため、私は動的配列(Arduinoでは推奨されません)のようなものが必要です。何か案は?
です。ビッグバッファーをポイントし、関連する部分を含む長さを使用して送信することができます。あなたがしないかもしれない唯一のことは、送信中にそのバッファの内容を変更することです。 – Matthias247
まあ、動的サイズはお勧めしませんが、禁止されていません;)あなたが本当に必要な場合は使用するべきです(しかし、制限があることに気付いています)。しかし、ほとんどの場合、最大サイズの固定長配列を作成することで、動的サイズを置き換えることができます(たとえば、2〜16文字の文字列を送信できる場合は、16文字の配列を使用します)。しかし、この場合は、変更する必要がないので、複製せずに配列の一部を送信するだけです(dasblinkenlightの返信として) – frarugi87