Nucleo-L476RGをArduino IDEで使う

Nucleo-L476RGのプログラムをAeduino IDEで開発する方法

 

参考にしたサイト

How to use STM32 in the ARDUINO IDE

http://www.emcu.eu/2017/03/13/how-to-use-stm32-and-arduino-ide/

 

Arduino IDEを起動する。

 

[ファイル] ー> 環境設定 をクリックする。

緩急設定ダイアログが表示される。

 

追加のボードマネージャのURL:の右端にあるボタンをクリックする。

 

追加のボードマネージャのURLダイアログが表示される。

 

追加のURLを1行ずつ入力欄に、

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

を入力する。

 

追加のボードマネージャのURLダイアログのOKをクリックする。

 

緩急設定ダイアログのOKをクリックする。

[ツール] ー> ボード:"○○○○○" ー> ボードマネージャ...をクリックする。

ボードマネージャ ダイアログが表示される。

 

一番上の右側の入力欄に

stm32

を入力すると、数個のパッケージが表示されるので、すべてをインストールする。

 

閉じるをクリックする。

Nucleo L476RGの場合

 

[ツール] ー> ボード:"○○○○○" ー> Nucleo-64 をクリックする。

 

Arduino IDEのバージョンによって内容が異なる場合があるかも?

Nucleo L476RGの場合

 

[ツール] ー> Board part number "Nucleo F030R8" ー> Nucleo L476RG をクリックする。

 

Arduino IDEのバージョンによって内容が異なる場合があるかも?

[ツール] ー> Upload method: "Mass Storage" ー> Mass Storage をクリックする。

Nucleo L476RGをPCのUSB端子に接続する。

 

[ツール] ー> シリアルポート:"○○○○" ー> Nucleo L476RGのポートを選択する。

 

サンプルプログラム(スケッチ例-01.Basics-Blink のピン番号を変更したもの)

mbedでは、ピン番号 LED1が使用できるはずだが、使用できないので D13を入力する。

 

void setup() {
  // LED1(内蔵LED)は使用できない。D13を使用する。
  pinMode(D13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(D13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                // wait for a second
  digitalWrite(D13, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                // wait for a second
}

 

このスケッチを検証・コンパイル、マイコンボードに書き込むとNucleo L476RGの基板上のLEDが点滅する。

コンパイル時にエラーが出るもの一覧

 

#include <TFT_ST7735.h> // Graphics and font library for ST7735 driver chip (7segFONTが使用できるライブラリ)

ArduinoのRTC関係はL476RGがRTCを内蔵しているため使用できない?