2016年10月3日月曜日

ST Nucleoボードでmbedを始めよう!

今回、写真機が壊れたので写真はありません。若干のスクショはありますが。

といっても・・・(続きを読む リンクをクリックしてください。)

写真がないのはあまりにも読者にとっても苦痛なので、かろうじて生きているガラケーのカメラから写真を撮りました。

さて、本題。

Arduino互換のピン配置になっているソケットを備え、更にその両端にST Morphoなる拡張コネクタを装備し、メインのSTM32F446(ARM-CortexM4, 180MHz)の機能を殆ど使え、かつ3.3V動作で消費電力にも気を配っているmbedボード。実は以前からあったのですが、殆どの商品が低スペックで高価なこともあり、筆者としては二の足を踏んでいました。

ところがです。Arduino IDEと違い、mbedには次のような利点があります。

  1. Arduinoで言うところの「スケッチ」はmbedでは「プロジェクト」としてクラウド上に保管される
  2. OS, ブラウザ問わずIDEを実行可能
  3. マイコンボードへの転送はIDE上のコンパイルボタン一発で生成されるbinファイルを投げるだけ、簡単。
  4. Arduinoと同じくフリー
  5. (Arduino言語もそうですが)mbedがC++ベースなので、mbed初心者でもある程度の訓練を積めば慣れる

一方、以下のような欠点もあります。
関数をオーバーライドしたりするのでC++やプログラミングを理解していないと振る舞いが分かりにくい

  • ほとんどのボードが3.3V動作なのでArduinoの5Vになれたユーザーには厳しい
  • マイコンが8bitのAVRから32bitのARMになるので、詳細にマイコン内部のポートを叩いたり、レジスタを弄るのには再度学習が必要


しかしながら、最後の欠点は利点にもなり得ます。何故かというと、今一番「熱い」マイコンはARMだからです。Androidスマホ(例外あり)やiPhone端末と同じCPUを使えるのですから。
一方、GPUはありませんのでここら辺は外部に任せるか、ソフトウェアで工夫する必要があります。
以上の点から、今回はmbedをやってみることにしました。なぁに、Arduino DUEみたいなもんだと思えば結構簡単に移行出来ちゃいます。

今回はこのmbed-enabledボード、STM32F446RET6 (Nucleo-64)を買ってみました。
以下にこのボードの特長を列挙してみます。

  1. ARM-Cortex M4 180MHzで駆動
  2. フラッシュ容量512KB,SRAM容量128KB
  3. Arduino互換ピン配置のピンソケットとST Morphoピンヘッダを装備
  4. ST-Linkによるデバッグ・プログラムの簡易化(意訳)
  5. mbed対応






0 件のコメント:

コメントを投稿