隠居エンジニアのものづくり

自転車 電子工作 ラジコン ロボカップジュニア CAD レーザー加工機

高性能Armプロセッサ搭載マイコンボードNucleoをArduinoIDEで開発する方法

ロボカップジュニアでも一時期盛り上がったNucleoですが、開発ツール”mbed”がWebに接続するタイプであった為に、話題になる頻度が減った様に思います。

いざ本番の大会会場でWiFi禁止によってmbedが使えず苦戦を強いられたチームもあるようです。

最近メーカーであるSTマイクロもローカルで使える開発ツール”STM32CubeIDE”を無償配布してますが、使いこなすのは大変です。

Nucleo-64シリーズはピン配置もArduino互換になってます。

価格もリーズナブルなので、なんとか開発環境を改善したい所です。

 

ArduinoIDEを使う

 

ArduinoIDEをつかうメリットは

Arduinoを使っている人は”ボード指定”を変えるだけのお手軽さ

Arduinoのソフトウエア資産(過去に作ったソース)を使える

●Armプロセッサ上でpulseIn()、constrain()、map()、servo.attach()、servo.write()などのArduino便利関数が使える

 

ArduinoIDEをNucleo用に設定する

以下の手順を行えば、ArduinoとNucleoの開発環境の切り替えはボード選択を変えるだけです。

 

Nucleoをボードマネージャに追加

f:id:Blackbox_crusher:20210110120341p:plain

f:id:Blackbox_crusher:20210110120501p:plain

追加のボードマネージャのURL: へ下記URLをコピーして”OK”

https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json

f:id:Blackbox_crusher:20210110121902p:plain

STM32 Cores”を検索

 

バージョンを選択してインストール インストールには時間がかかります!

f:id:Blackbox_crusher:20210110122123p:plain

これでOKです。


Nucleoボード選択方法

Nucleo-64”を選択

f:id:Blackbox_crusher:20210110122435p:plain


Boardpart number:で使用ボード名を選択

f:id:Blackbox_crusher:20210110122618p:plain

シリアルポート:を接続したNucleoのCOMポートNo.に設定すれば設定完了!

f:id:Blackbox_crusher:20210110122727p:plain

これで、いつも通りにArduinoUNOにプログラミングしている感覚でストレスなくArmプロセッサのプログラミングができます。

ビルド時間が長くなるのでフリーズと間違えない様に、ビルド完了を待って下さい。

 

手元にあったNucleo L053R8、Nucleo F446REでの動作確認済みです。

ピン配置の互換性について若干の注意点がありますが、別の機会に記事にします。