MDBT50Q-DB-33(nRF52833)でUSBにprintkで文字列を出力する
nRF52833にCMSIS-DAPデバッガをつないでVSCodeでデバッグの最後のほうで、nRF52833評価ボード(MDBT50Q-DB-33)でprintk出力する際にFTDIのUSBシリアル変換ICのボードを使ったわけだけど、nRF52833にはUSBポートあるので、そこから出力できないものかって思う。
ところで、MDBT50Q-DB-33は台湾のRaytocってところが作っていて本家はこちら(https://www.raytac.com/product/ins.php?index_id=97)。スイッチサイエンスや共立エレショップで4000円程度で購入できる。Nordic製のnRF52833 DKはDigikeyで8000円程度で購入できる。本家のほうがドキュメントとかexampleとかが充実しているので安心なんだけど、安いのを使いこなすってスキルも必要かなっと(単なるお財布事情を高尚に語る)。
では、、、とはいえ、実は、それらしいexampleがあるので、これがMDBT50Q-DB-33で動けばオkなわけで、しかもnRF52833 DKのボードコンフィグで動くのではないかと、HP見るとUSBのD+/D-が単につながっているだけだし、動く確信をもって、それを確認するだけ。
VSCodeを起動して、Nordicのアイコンを押す。
Create a new application
Copy a sample
Consoleって入力して、Console over USBを選択
フォルダを決めて(通常はそのまんまおすすめされた通りでもいい)、エンター
当然、Open
これ↓は無視
Nordicアイコンを再び押す
Add build configuration
Board targetのドロップダウンリストに52833と入力して、nrf52833dkを選ぶ(MDBT50Q-DB-33も選択できるんだけど、あえて)
下のほうまでスクロールしてBuild Configuration
ターミナルを見ると、なんじゃかんじゃやっていることがわかる
で、おわった的なことがわかる
デバッグボタンを押す
launch.jsonファイルを作成します。を押す
ここでの選択は全く意味ないけどCortex Debugを押す
エディタにlanuch.jsonが開くので、これを入力(てかコピペ)
今回もCMSIS-DAPと化したSeeeduinoXIAOを使う
- {
- "version": "0.2.0",
- "configurations": [
- {
- "name": "Cortex Debug",
- "type": "cortex-debug",
- "request": "launch",
- "servertype": "openocd",
- "cwd": "${workspaceRoot}",
- "executable": "${workspaceFolder}/build/zephyr/zephyr.elf",
- "configFiles": [
- "interface/cmsis-dap.cfg",
- "target/nrf52.cfg"
- ],
- "runToEntryPoint": "main",
- "postRestartCommands": [
- "break main",
- "continue"
- ],
- "serverpath": "/usr/bin/openocd", // OpenOCDのインストールパス
- "gdbPath": "/home/hoge/ncs/toolchains/e9dba88316/opt/zephyr-sdk/arm-zephyr-eabi/bin/arm-zephyr-eabi-gdb", // GDBのパス
- "armToolchainPath": "/home/hoge/ncs/toolchains/e9dba88316/opt/zephyr-sdk/arm-zephyr-eabi/bin/" // ARMツールチェーンのパス
- }
- ]
- }
再生ボタンを押す
mainの最初の命令で自動的に止まる
この段階ではそれらしいUSBデバイスは接続されていないかんじになてる
再生ボタンを押す
それらしいのが現れた
VSCodeのシリアルモニターを開いてそれらしいポートを設定して監視の開始を押す(VSCode内じゃなくてもお好みのターミナルソフトでも当然ok)
こんな感じでちゃんと出力されてますイイネ
ところで、わたくしは、Nordicの回し者ではない。たまたまそろそろBLEに取り組もうかなと思って最初に入手したのがSeeeduino XIAO BLE nRF52840だったからその流れで。BLEのチップってあちこちのICメーカがあるよね、、、大手だとNordicとか???とか??とか。???は仕様がほとんど開示されていなくて、ホビーユーザーには敷居が高い。??はアレだし。ホビーユーザーは自然とNordic一択かも。
0 件のコメント:
コメントを投稿