実習・公式ライブラリ×プログラム開発の限界を打ち破るMbedマイコン活用法[Nucleo-F446RE/教材キット付き]

実習・公式ライブラリ×プログラム開発の限界を打ち破るMbedマイコン活用法[Nucleo-F446RE/教材キット付き]
―― Mbedの初級を卒業された方のためのMbed活用法

  

【開催日】2019年2月3日(日) 10:00-17:00 1日コース
【セミナNo.】ES18-0159  【受講料】27,000円(税込)
【会場】東京・巣鴨 CQ出版社セミナ・ルーム [地図]
セミナ会場

 Mbedは初心者でも短時間で簡単にフィジカル・コンピューティングが実現できる.しかし,Mbedを一通り使えるようになって,少し高度なプログラムを作ろうとしても,対処の方法がわからずに,他の開発環境に乗り換えを検討している方も多いのではないかと思う.
 たとえば,A-D変換器を使って効率の良いプログラムを作る場合には,割り込みが欠かせないが,Mbed公式ライブラリだけではA-D変換終了で割り込みを掛けるようなプログラムをうまく作れない.このような場面には,そのほかでもよく出会う.しかし,マイコン内蔵のペリフェラルのレジスタに対して,直接に書き込み/読み出しができれば,このような問題は解決できる.
 このセミナでは,ペリフェラルのレジスタの直接の書き込み/読み出しと,Mbed公式ライブラリを併用するプログラミングについて詳しく解説する.
 なお,Mbed対応ARMマイコンで,コアの部分を除くペリフェラルの構造は,各社各シリーズで異なることが多いので,このセミナではNucleo-F446REを使うことを前提として話を進める.しかし,Mbed対応の他のARMマイコンでも,同じ考え方が適用できる.

*マイコン・ボード Nucleo-F446RE をご持参の方は,受講費用を\2,000-引きでご参加いただけますので,お申し込み時にメールでご連絡ください.

1.マイコン内蔵ペリフェラルでMbed公式ライブラリではサポートされていない機能の使い方
 1.1 マイコン内蔵ペリフェラルのレジスタに直接アクセスする方法
 1.2 マイコンの外部ピンの設定とGPIO
 1.3 GPIO出力をオープン・ドレインに設定する方法
 1.4 RGBフルカラーLED駆動への応用
2.ライブラリをクラス化するためのテクニック - A-D変換器用ライブラリの例
 2.1 Mbed公式ライブラリAnalogInクラス(アナログ信号入力用クラス)にできないこと
 2.2 Mbed対応クラス・ライブラリ作成のためのA-D変換器プログラミングの基礎
 2.3 グローバル関数によるポーリング方式の動作の検証
 2.4 ポーリング方式のプログラムのクラス化
 2.5 継承を利用してA-D変換終了割り込みを使えるようにする
3.Mbedで割り込みを使うためのテクニック
 3.1 割り込みに関する設定 - 割り込みの禁止と許可,優先順位の設定,
   割り込みサービス・ルーチンのアドレス指定
 3.2 割り込みサービス・ルーチンをクラス内にメンバ関数として記述する方法 -
   Mbed公式ライブラリの割り込み割り当ての関数を使う場合と自作の関数を使う場合
 3.3 ソフトウェア割り込みの使い方
4.Mbed公式ライブラリのクラスを継承/包含する新たなクラスを作る
 4.1 ポート/ピン番号とマイコン・ボード端子の名前との関係
 4.2 継承を利用してMbedのDigitalOutクラスをオープン・ドレインに設定できるようにする
 4.3 包含を利用してチャタリング防止入力を実現する
5.Mbed公式ライブラリで使われていないタイマの活用法
 5.1 Mbed公式ライブラリTickerクラス(周期的タイマ割り込み用クラス)の問題点
 5.2 Mbed対応クラス・ライブラリ作成のためのタイマのプログラミングの基礎
 5.3 動作中のタイマ周期の変更方法
 5.4 ステッピング・モータ駆動への応用
 5.5 D-A 変換器の出力間隔を1μs まで正確に行うためのタイマの設定法
6.USARTに関するクラス・ライブラリを作る
 6.1 送信割込みの効果的な使い方
 6.2 送信/受信ともに割り込みを使うクラスの作成法
 6.3 受信/送信が他の処理を妨げないプログラムの例

ステッピングモータの回転速度を変化させる場合,Mbed公式ライブラリだけでは回転速度がなめらかに変化しない様子を確認しているところ
ステッピングモータの回転速度を変化させる場合,Mbed公式ライブラリだけでは回転速度がなめらかに変化しない様子を確認しているところ

標本化間隔を 1 μs にして D-A 変換器から 100 kHz の正弦波を出力している様子(タイマのレジスタに直接アクセスできれば,このようなことが可能になる.なお,波形がなめらかに見えていないのは,D-A変換器の出力を直接オシロスコープで観測しているためで,適切なローパス・フィルタを使えば,なめらかな正弦波が下記の図のように得られる)
標本化間隔を 1 μs にして D-A 変換器から 100 kHz の正弦波を出力している様子(タイマのレジスタに直接アクセスできれば,このようなことが可能になる.なお,波形がなめらかに見えていないのは,D-A変換器の出力を直接オシロスコープで観測しているためで,適切なローパス・フィルタを使えば,なめらかな正弦波が下記の図のように得られる)

D-A 変換器の出力に,適切なローパス・フィルタを通したときの出力波形
D-A 変換器の出力に,適切なローパス・フィルタを通したときの出力波形

マイコン内蔵タイマのカウントアップと他のレジスタとの関係を調べている様子
マイコン内蔵タイマのカウントアップと他のレジスタとの関係を調べている様子

●対象聴講者
・Mbedで,ペリフェラルを使う基本的なプログラム開発はできるが,Mbedの公式ライブラリでは提供されていない機能も使って,ペリフェラルを使う高度なプログラムを作りたい方.
・Mbedではペリフェラルを自由に使えないと思い,他の環境に乗り換えを検討している方.
・ペリフェラルを使う自作のライブラリをクラス化したい方.
・(受講条件)Mbedでのプログラム開発の経験がある方.

●講演の目標
・Mbedの公式ライブラリでサポートされているペリフェラルであるが,その機能の中でMbed公式ライブラリでは直接サポートされていない機能を使えるようになること.
・マイコン内蔵のペリフェラルの中で,Mbedの公式ライブラリではサポートされていないペリフェラルを使えるようになること(たとえば,Nucleo-F446に搭載されているマイコンは多数のタイマを内蔵しているがMbedの公式ライブラリは一部のタイマしか使っておらず,残りの多くのタイマが遊んでいるので,それらを有効に使えるようになること).
・ペリフェラルを使う自作のライブラリをクラスとして作れるようになること.


【受講者が持参するもの】
このセミナでは,簡単な回路をブレッド・ボード上に組み立てるため,ニッパとラジオペンチを貸し出し致します.なお,これらの工具が無くても組み立ては可能です.My工具をお持ちの方は,持ち込み可能です.

【講師】
三上 直樹 氏〔職業能力開発総合大学校 名誉教授 〕
 1977~1987年北大助手.1987~2017年職業能力開発総合大学校講師,助教授,教授.工学博士.「はじめて学ぶディジタルフィルタと高速フーリエ変換」などの書籍やインターフェース誌,トランジスタ技術誌の記事多数.ディジタル信号処理を専門とする.


参加申し込み

このセミナに参加する

Webからのお申し込み

  以下の「参加申し込み」ボタンをクリックしてください.参加申し込みフォームを開きます.

参加申し込み

FAXやE-mailでのお申し込み

  Webの参加申し込みフォーム以外の申し込み方法をご希望の方は こちらのページ をご確認ください.

このセミナのタグ情報
各タグをクリックすると,類似するセミナの一覧を表示します.

コース

 1日コース

カテゴリ

 回路・電子部品
 基板・ノイズ

シリーズ

 

特徴

 KIT付き
 実習

キーワード

 クラウド
 コンピュータ
 ソフトウェア
 ボード
 マイコン
 モータ
 開発環境
 開発手法
 研究開発
 電子工作

セミナ事務局からのお知らせ

・受講料割引券として使えるメンバーズ・カードの利用規約が変わりました.