Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dev kobe 2 マイコン入門 20151130

578 views

Published on

STM32 nucleoでmbed
マイコン入門をmbedから行うためのチュートリアル・導入です。組み込みマイコンとは何か、Arduinoとの違い等を解説します。

Published in: Technology
  • Be the first to comment

Dev kobe 2 マイコン入門 20151130

  1. 1. STM32  nucleo活⽤用 mbedでハイパフォーマンス フィジカルコンピューティング
  2. 2. ⾃自⼰己紹介 •電⼦子⼯工作系の遊びが好 き •マイコンの専⾨門書を出 版しました •マイブームはUnityと C#とESP8266 •本業はこの会社の顧問
  3. 3. マイコンとは •コンピューター・電⼦子計算機 • ソフトウェアを書いて⾛走らせる • PCと同じ
  4. 4. PCとの違い •周辺回路の有無 •周辺回路の内蔵性 •サイズ •計算能⼒力 •消費電⼒力 •リアルタイム性 •値段
  5. 5. ワイヤードロジックと の違い •マイコンが無くてもロジック制御は できる • 炊飯器の始めちょろちょろ •マイコンだと • 複雑化したロジックに対応可能 • 仕様変更に強い • 通信機能・接続性が⾼高い
  6. 6. マイコンの意味 •1980年代の「マイコン」 • マイクロコンピュータ •今の「マイコン」 • マイクロコントローラ
  7. 7. 昔のマイコン開発との 違い •⾼高い • ボード • 開発環境 •デバッガ • 書き込みに必要 • 紫外線照射でROM消去 •microchipのPIC   • ターニングポイント
  8. 8. Arduinoの登場 • 安い • 簡単接続 • プログラマ不要 • 開発環境が揃っていて無料 • API簡単 • シールドで拡張 • 全世界で利⽤用者が⼀一気に拡⼤大 • 情報量が多い
  9. 9. Arduinoとの違い •同じ • マイコン • オープンソースベース • APIベース
  10. 10. mbedとは •ARM社が提唱している開発環境 •ARM系のマイコンが対応 •複数社からボードが発売
  11. 11. Arduinoとの違い • メリット • ピン数多い ・クロック早い • Arduino  uno • ATmega328P  8bit  AVR  RISC  32p • Flash:32KB  SRAM:2KB  EEPROM:1KB • クロックスピード:16MHz • RTOSが動く • さらに安い • ARMコア • ライブラリシェアがIDEに組み込み済み
  12. 12. Arduinoとの違い •デメリット • シールドがほとんど無い • マイコン単体から⼯工作するのは難しい
  13. 13. Arduinoとの違い •メリットデメリット • CとC++   • オンラインIDE • 3.3V   • マスストレージ
  14. 14. 実際にどうやるの •リモート開発 •クロスコンパイル • AndroidやiOSデバイス •OSが動いているデバイスではない • ROMを丸ごと書き換える
  15. 15. 準備 • mbedへのアカウント登録 • ボードの登録 • デバッガのファームウェアアップデー ト • https://developer.mbed.org/teams/ST/ wiki/Nucleo-‑Firmware • ドライバインストール(Windowsのみ) • https://developer.mbed.org/teams/ST/ wiki/ST-‑Link-‑Driver
  16. 16. 実演 •LEDを500ms間隔でオンオフ •LEDをスイッチでオンオフ •ADC読み取り •シリアルエコーサーバー
  17. 17. Lチカ 組み込みプログラミングにおける伝統的Hello  world!
  18. 18. ピン配列 https://developer.mbed.org/platforms/ST-­‐Nucleo-­‐L053R8/
  19. 19. オンボードLED https://developer.mbed.org/platforms/ST-­‐Nucleo-­‐L053R8/
  20. 20. LEDのオンオフがで きるということは •⾚赤外線LEDを使ってリモコンで家 電のコンロトロールができる •変換ボードを通して100Vの家電がコ ントロールできる
  21. 21. ボタン読み取り プログラマの意思とは関係無く構造体型の値が変更されている
  22. 22. オンボードスイッチ https://developer.mbed.org/platforms/ST-­‐Nucleo-­‐L053R8/
  23. 23. ボタンがわかるという ことは •ユーザーの意思を受け取れる •ボタンも⼀一種のセンサ • フタの開閉 • 転倒 • ⽔水銀スイッチ • ボールスイッチ • 接近 • リードスイッチ
  24. 24. シリアル送受信 シリアルクラスオブジェクトのメソッドを実行する
  25. 25. シリアル接続できると いうことは •通信できる • パソコンへの情報伝送 • シリアル対応型のデバイス • 液晶・センサー
  26. 26. ADC読み取り シリアルクラスオブジェクトのメソッドを実行する
  27. 27. 回路 抵抗分圧で任意電圧を作ってみる
  28. 28. 接続 ブレッドボードを使うのが簡単
  29. 29. ADCが読めるという ことは •センサの値が読める • 温度・気圧・湿度・照度・⾊色・圧⼒力・ ⾓角度・加速度・地磁気・ガス濃度・⾓角 速度・マイク・距離・スイッチ •ロギングできる •センサの値に応じた条件分岐ができ る
  30. 30. PCにセンサーをつな ぐベストプラクティス •ソフト開発⼯工数で考える • USBマイコン • マイコンプログラミング+シリアル操作 • USBシリアル・パラレル変換ボード • ドライバAPI操作 • Bluetoothボード/Konashi • iOSのBluetooth APIプログラミング/JS • Raspberry  Pi • Python/C/JS

×