このプロジェクトを使ってやってみましたが・・・(ToolChainのインストールでも一悶着あったが気がしてるんだが、忘れた。ずいぶんやり始めてから時間が経ったから)、環境はMacOS Sonoma14.7.2(intel)です。このマシンは今秋のUpdateには漏れてしまった。また初売りで買おうかな・・
VS-codeでビルドするところまでガイドに沿ってできていると思うのだが、
OSをビルドする時点でエラーが出ている。というかこれはエラーなのか?
[cmake] -- Mbed: Not building any Mbed OS tests.
[cmake] CMake Error at mbed-os/tools/cmake/UploadMethodManager.cmake:40 (message):
[cmake] The upload method STLINK is not enabled in the config code for this target
[cmake] -- set STLINK_UPLOAD_ENABLED to TRUE to enable it.
[cmake] Call Stack (most recent call first):
[cmake] mbed-os/CMakeLists.txt:216 (include)
STLINK_UPLOAD_ENABLED を TRUE に設定せい、といっているように見えるが、それをどこに設定すればいいのか。それらしいファイルがないのだが。
Nucleoはflashmediaとして見えているし、usbシリアルとしても繋がっている
$ ll /dev/tty.*
crw-rw-rw- 1 root wheel 0x9000000 12 20 21:58 /dev/tty.BLTH
crw-rw-rw- 1 root wheel 0x9000002 12 20 21:59 /dev/tty.Bluetooth-Incoming-Port
crw-rw-rw- 1 root wheel 0x9000004 12 21 20:44 /dev/tty.usbmodem14103
st-linkのMacドライバがないからかなと思い、探したらあるようだったので入れてみた
https://formulae.brew.sh/formula/stlink
ここにあるように、brew で入れたのだが(結局、これは必要だったかわからない)
$ st-util
st-util 1.8.0
2024-12-21T21:50:21 INFO common.c: STM32F411xC_xE: 128 KiB SRAM, 512 KiB flash in at least 16 KiB pages.
2024-12-21T21:50:21 INFO gdb-server.c: Listening at *:4242...
認識するが、やはり状況変わらず。。。こちらに、このような記載があり、今回と直接関係していそうな気もしないがやってみる(トップレベルのCMakeList.txt)
### include app.cmake (necessary everytime) ###
include(mbed-os/tools/cmake/app.cmake)
##############
### Block of including project folders
set(STLINK_UPLOAD_ENABLED TRUE)
上記リンクのページに、app.cmakeの後に、と書いてあったので、Block of・・・・のした、記載したところ、エラーがなくなったようだ
最後にビルド完了と出るが、書き込まれないようだ。ガイドの動画には書き込みまではやってないので、何らかのツールがいるのか思っていろいろ探したがわからず、結局、Buildフォルダにある.binをNucleoに放り込んだら更新された。Upload_Methodを定義してるしどっかのページに書き込みまでできてるみたいなのを読んだ気がしたんだが、ないわ。
シリアル転送もできているか確認
$ screen /dev/tty.usbmodem14103 115200
screenを終了するときは
- control + a を押します。
- k を押します。
- ターミナルの下段に "Really kill this window [y/n]" と表示されるので、y を押します。
いや、だが、もう一度環境作れと言われてもうまくできる自信がないなぁ。
コメントを追加