半空洞男女関係

思ったこととかプログラミングしてるときのメモとか色々かいてます。メールはidそのままgmail

ARM/Nordic/スイッチサイエンス主催のWSに行ってきた

本記事はBluetooth Low Energy Advent Calendar 2015 17日目の記事です.

行きました

A photo posted by Kenta Hara (@mactkg) on

ARMとNodicとスイッチサイエンスが主催するワークショップがあったので参加して来ました.ARMはARM University Programというものを提供していて,教材・ハードウェア・ソフトウェアがセットになって無償で提供してくれるというものなのですが,授業でこのプログラムを導入してもらって大学でARM製品をガンガン使ってもらおうという試みのようです.授業で使いやすいよう,教材は全14回になっていたり,先生向けに1-Dayセミナーを設けたりするなどの配慮が見られます.

日本での取り組みは今回が初めてだということでした.似たような取り組みはNational Instrumentsなども行っていますね.

今回参加したワークショップはその先生向けの1-Dayセミナーを受けるような形となっていたようでした.参加者にはnRF51-DKが渡され(なんと持ち帰り可能!),事前にインストールしてきたARMの提供するIDEを使いながら実際に試してみるという方式で進みます.

当日のアジェンダを下に記しておきます.

http://mag.switch-science.com/2015/10/09/arm-univ-titech/:title=大学教員および研究者向けNordicワークショップのご案内 | スイッチサイエンス マガジン> + ARM ユニバーシティプログラムと Nordic Semiconductorとスイッチサイエンスの紹介 + ARM とパートナー企業により可能となるIoTエコシステム + ARM アーキテクチャとCortex-M0プロセッサの概要 + mbed対応nRF51評価ボードと、スイッチサイエンスの紹介 + ラボ 1 – nRF51 システム上のARM Cortex-M0をプログラムする + ARM Keil MDKソフトウェアとmbed APIを使用して生産性を向上させる + ラボ 2 – mbed APIを使用して生産性を向上させる + Bluetooth Low Energy Connectivityの概要 + RF 設計と nRF51のアーキテクチャ + ラボ 3 – nRF51プラットフォームにBLE Connectivityを実装する + ラボ 4 – BLEスマートライトアプリケーションの設計 <<

「ラボ」となっている所が実際に手を動かして試してみる部分で,その他は講義形式のプログラムでした.

簡単にどんなことをしていたのか紹介したいと思います.

ラボ 1 – nRF51 システム上のARM Cortex-M0をプログラムする

レジスタをいじりながらLEDをチカチカさせたり,入力を取得するような内容です.次のラボ2でmbed APIが導入されるのですが,どれだけ簡単に書けるのかというところを理解するための前置きと言ったところでしょうか.非常に簡単なプログラムです. nRF51-DKをいきなり使おうとしてトラブりました.mbedのドライバをインストールしていなかったので,きちんとマシンが認識できていないという凡ミス太郎でした.また,書き込めてもうまく動かないという問題があったのですが,IDEから書き込めないエリアも削除してくれるプログラムを書き込むことで解決しました.適当なmbedのプログラムを書き込んでも大丈夫そうです.

ラボ 2 – mbed APIを使用して生産性を向上させる

今度はmbed API 2.0を導入して,もっと簡単にLチカアプリを書こうという内容でした.mbed 2.0ではかなりバイナリサイズが大きいようなのですが,mbed 3.0ではその辺りも考慮されてビルドされるようになるとのことです.

割り込み処理なども交えながら,mbedでのプログラミングに慣れていきます.

割り込みなるほど

A video posted by Kenta Hara (@mactkg) on

ラボ 3 – nRF51プラットフォームにBLE Connectivityを実装する

ついにBLEの登場です.温度センサをキットに接続して,BLEで垂れ流すようなアプリを記述します.ココらへんで時間がかかっていたところもあったので,折角ArduinoのファームファクタならGROVEなどでいい感じにプロトタイプできたら便利なのになと思いました.

ラボ 4 – BLEスマートライトアプリケーションの設計

今度はセンサだけではなく,フルカラーLEDも接続してスマートフォンからの操作にも挑戦してみましょうとのことでした.1-DayワークショップではAndroidのプログラミングは行わないのですが,実際の授業などではAndroidプログラミングまでチャレンジするようです.電子回路からレジスタ操作,mbedのプログラミングにBLE,極めつけはAndroidというのはなかなかヘビーなカリキュラムだなという気がします.僕はiOSユーザだったのであまり楽しめませんでした.残念!!

まとめ

駆け足でしたが(WS内容そのものもなかなか駆け足でしたが),ワークショップを振り返ってみました.自分で考えて手を動かすというよりも,与えられたコードを次々に実行してみて,ふむふむとトライしてみるという具合でした.一日で1つのカリキュラムをざっと把握することは可能でした.

nordicさんのご厚意で,最近技術セミナーが行われたnRF52の開発ボードもプレゼント🎁されました! ありがとうございました.