Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

課題

この章の課題は、前の章で導入したシリアルインターフェイスを介して外部と通信する小さなアプリケーションを作成することです。シリアルポートから、磁力計を表すコマンド "mag" と加速度計を表すコマンド "acc" を受信することを想定します。その後、それに応じて対応するセンサーデータをシリアルポートへ送り返せるようにしてください。

今回は、必要なものはすべて UART とこの章ですでに提供されているため、テンプレートコードは用意されていません。ただし、いくつかヒントがあります。

  • バッファ内のバイト列を &str に変換するために core::str::from_utf8 が役に立つかもしれません。"mag" および "acc" と比較する必要があるためです。

  • 磁力計 API とその機能に関するドキュメントを読む必要があります。lsm303agr クレートは API インターフェイスを提供しますが、LSM303AGR datasheet には、このセンサーの磁場測定パラメータの詳細が記載されています。センサー特性については 13〜15 ページを、そして特に出力レジスタ形式については 66〜67 ページを参照してください。