開発環境の構築

開発をするPCとは異なるアーキテクチャを扱うことになるので、マイクロコントローラを扱うには、いくつかのツールが必要です。 私たちは、「リモート」デバイス上でプログラムを実行し、デバッグします。

ドキュメント

ツールだけではありません。ドキュメントがなければ、マイクロコントローラを扱うことはほとんど不可能です。

この本を通して、次のドキュメントを参照します。

注意 これらはPDFファイルへのリンクです。数百ページの長さで数MBもあるファイルもあります。

ツール

下記リストのツールを利用します。最小バージョンが指定されていない場合、新しいバージョンであれば機能するはずです。 私たちがテストしたバージョンをリストに示しています。

  • Rust 1.31以上のツールチェイン

  • itmdump v0.2.1

  • OpenOCD >=0.8. テストしたバージョン: v0.9.0 and v0.10.0
  • arm-none-eabi-gdb。バージョン7.12以上を強く推奨します。テストしたバージョン: 7.10, 7.11, 7.12, 8.1
  • LinuxおよびmacOSではminicom。テストしたバージョン: 2.7。読者の報告ではpiocomも動作しますが、このテキストではminicomを使います。
  • WindoswではPuTTY(訳注:TeraTermでもおそらく大丈夫です)

あなたのノートPCがBluetooth機能を搭載していて、Bluetoothモジュールを持っている場合、Bluetoothモジュールを使うために、追加で次のツールをインストールして下さい。 これらは、全てオプションです。

  • Linux。BluemanのようなBluetooth管理アプリケーションがない場合のみ、次のツールをインストールして下さい。
    • bluez
    • hcitool
    • rfcomm
    • rfkill

macOS / OSX / Windowsユーザーは、OS出荷時のデフォルトBluetoothマネージャだけが必要です。

次に、いくつかのOSに依存しないツールのインストール手順を掲載します。

rustc & Cargo

https://rustup.rsの手順に従って、rustupをインストールします。

既にrustupをインストールしてある場合、stableチャネルになっていて、stableツールチェインが最新であることを確認して下さい。 rustc -Vは、下よりも新しい日付を返す必要が有ります。

$ rustc -V
rustc 1.31.0 (abe02cefd 2018-12-04)

itmdump

$ cargo install itm --vers 0.3.1

$ itmdump -V
itmdump 0.3.1

cargo-binutils

$ rustup component add llvm-tools-preview

$ cargo install cargo-binutils --vers 0.1.4

$ cargo size -- -version
LLVM (http://llvm.org/):
  LLVM version 8.0.0svn
  Optimized build.
  Default target: x86_64-unknown-linux-gnu
  Host CPU: skylake

OS固有の手順

使用しているOSに固有の手順に従って下さい。