私はArduinoでかなりの数のプロジェクトを実行しましたが、Cで「Hello World」以上のことをしたことがありません。最初のライブラリを書いています。多くのオブジェクト指向のものが頭を悩ませています。とにかく、私のライブラリは想定どおりに機能しています。浮動小数点数を関数に渡し、適切にフォーマットしてシリアル経由で送信します。しかし、私はそれを不格好な方法で実装しました。ArduinoのAPIスタイルガイドは、はるかに良いと思われる方法を言及します:
シリアル通信を使用する場合、ユーザーが「シリアル」をハードコーディングするのではなく、任意のStreamオブジェクトを指定できるようにします。これにより、ライブラリはMegaおよびDueのすべてのシリアルポートと互換性があり、SoftwareSerialなどの代替インターフェイスを使用することもできます。Streamオブジェクトは、ライブラリのコンストラクターまたはbegin()関数に(ポインターではなく参照として)渡すことができます。各アプローチの例については、Firmata 2.3またはXBee 0.4を参照してください。
誰でもこれを行う方法について詳しく説明したり、コードを見せたりできますか?