nRF Connect SDK FundamentalsでZephyrを試してみる: micro:bit編
https://www.youtube.com/watch?v=FTsfTZzdM7U
この文章は、同人誌としてまとめられるため、Qiitaの方の記事は同人誌時点の記事から更新を行いません。
追記などは、(下のQRコード)で行いますので、こちらもご覧ください。 https://gyazo.com/6d1b3b5bb95b83d77c13353c24fd87c7
はじめに
手順が親切丁寧に説明されており、必要な概念もしっかり解説されているので、nRFでZephyrの入門をするのには、適した教材だと思います。
以下、コースの説明に従って、micro:bitでLチカ(ディスプレイチカ?)ができるところまでを試してみます。
一部、コース通りではなく、micro:bit利用のための独自事項がありますので、そこを詳しく説明していきます。
環境構築
コースの中で、動画付きで詳しく環境構築の方法について解説されているので、ここでは詳細は省略します。
概略は、以下の通りです。
nRF Command Line Toolsのインストール
VSCode関連
VSCodeのインストール
nRF Connect拡張機能のインストール
ツールチェーンのインストール
nRF Connect SDKのインストール
micro:bitをJ-Link用にする
デフォルトでは、VSCodeからはJ-Linkを経由した書き込みが仮定されています。
このため、J-Link用のデバイス(J-Link Eduなど)が必要になるのですが、micro:bitには以下のようなJ-Link化するファームウエアが用意されています。 導入は、このページの説明の通りに行えば大丈夫です。
ただし、ここで提供されているファームウエアはv.2.2では使えないようです。v.1.5かv.2.0を用意してください。
概略は以下の通りです。
micro:bitをメンテナンスモードで起動します。
リセットボタンを押しながら、電源を投入します。
ファームウエアのHexファイル(JLink_OB_BBC_microbit_22-11-16.hex(v.1.5用), JLink_OB_BBC_microbitV2_22-11-15.hex(v.2.0用)を現れたMAINTANANCEフォルダーにコピーします。
デモコードの実行
サンプルにmicro:bit用のデモコードが用意されています。
はじめに、"Create a new application"を選び、"Copy a sample"を選択します。
https://gyazo.com/62d7d3db433da0206caa7d8355d7eb96
次に検索ペインに"micro"などと入力すると、micro:bitで利用可能な選択肢が出てきます。
ここでは、"BB micro:bit Display"を選択しました。
https://gyazo.com/d4ff09afabfab203da472d87943bb470
これで、デモのソースコードにアクセスできるようになりました。
次に、ビルドを行います。
"APPLICATIONS"で"+ Add build configuration"を選択します。
右のような表示が現れるので、"Board target"で"bbc_microbit/nrf51822"(v.1.5用)か"bbc_microbit_v2/nrf52833"(v.2系用)の利用する方を選びます。あとはデフォルトで大丈夫です。
一番下の"Build Configuration"ボタンで設定が保存されます。
https://gyazo.com/7658a43b8eef2532d1191a7530eeaf5e
https://gyazo.com/c0ad00d8bcb6c66b468475a98752d9e4
"ACTIONS"で、"Build"することでソースがBuildされます。
Buildが成功した後で、"Flash"すると実際にボードにプログラムが書き込まれ、プログラムが実行されます。
デモは、micro:bitの5x5LEDに数字やパターン、文字などを表示するものになっています。
おわりに
これを終わらせても、まだコースの9%しか終わってません。これからどんな内容なんでしょうか?楽しみですね!!
Enjoy your Zephyr life with micro:bit!!
About 610t
https://gyazo.com/63edf6b5c26bd56780589b8fccfdd63b
むとうたけし(武藤武士(wǔ téng wǔ shì)) a.k.a 610t 奈良在住
専業主婦
54歳(1970/06/19生まれ)