HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2023/04/20

Arduinoを CLIで使う方法、Arduinoをコマンドラインでコンパイルやアップロードする方法 Arduinoを CLIで使う方法、Arduinoをコマンドラインでコンパイルやアップロードする方法

(How to use Arduino via Command line、Compile and Upload by batch file)

Tags: [電子工作]




● Arduinoに慣れてくると GUIの操作が面倒になってくる

 と言う事で Arduinoをコマンドライン経由で操作する方法を紹介します。

 答えは、Arduino公式が提供する arduino-cliを使うと簡単にできます。

arduino-cli
 Arduino CLI is an all-in-one solution that provides Boards/Library Managers, sketch builder, board detection, uploader, and many other tools needed to use any Arduino compatible board and platform from command line or machine interfaces.

 Arduino CLIはコンパイルやアップロード以外にも Boards Managerや Library Managerの操作も可能です。

● Arduino CLIはこんな時に便利
 ・Arduino環境を GUIのマウス操作をするのが面倒
 ・バッチファイルの実行操作だけでコンパイルやアップロードをしたい
 ・Raspberry Pi Pico等、Arduino環境がアップロードの Portを忘れるので毎回 "UF2 Board"を指定するのが面倒
 ・開発に使用するテキストエディタを自分の使い慣れた物を使いたい(Arduino環境を開いた状態でも可能ですが、競合が怖い)


● Arduino CLIでプロジェクトをコンパイルする時のコマンドラインの実行方法

 プロジェクトをコンパイルする時は下記の様に書きます。
arduino-cli.exe compile --fqbn FQBNの文字列 プロジェクトのディレクトリ

・ Arduino CLIの FQBNの文字列を調べる方法

 Arduinoの GUIでログ出力を有効にして確認できます。

 File -> Preferences... -> Preferences - Settings
 で
 Show verbose output duringの compileと uploadを両方ともオンにします。
 ※ Arduino GUIの Outputに内部の動きが表示される様に成ります。

・Arduino CLIの FQBNの文字列を調べる方法
Arduino CLIの FQBNの文字列を調べる方法


・Arduino CLIの FQBNの文字列を調べる方法
Arduino CLIの FQBNの文字列を調べる方法



 Raspberry Pi Picoの場合の FQBN
FQBN: rp2040:rp2040:rpipico
arduino-cli.exe compile --fqbn rp2040:rp2040:rpipico プロジェクトのディレクトリ
・Raspberry Pi Picoの場合の FQBN
Raspberry Pi Picoの場合の FQBN



 ESP32-C3の場合の FQBN
FQBN: esp32:esp32:esp32c3
arduino-cli.exe compile --fqbn esp32:esp32:esp32c3 プロジェクトのディレクトリ
・ESP32-C3の場合の FQBN
ESP32-C3の場合の FQBN




・プロジェクトのディレクトリ
  相対パスでも指定可能


● Raspberry Pi Picoの "UF2 Board"へのアップロードをコマンドラインで指定する方法

 上記の「Arduino CLIはこんな時に便利」の例で「Raspberry Pi Picoの "UF2 Board"へのアップロード」を書いていますが、これは{嘘}です。

 実際には packages配下の rp2040の uf2conv.pyを使用してアップロードしています。

 ※ FQBNと同様に Outputウィンドウに表示するのでそれをコピペするのが楽です
"C:\Users\hogehoge\AppData\Local\Arduino15\packages\rp2040\tools\pqt-python3\1.0.1-base-3a57aed/python3"
  -I "C:\Users\hogehoge\AppData\Local\Arduino15\packages\rp2040\hardware\rp2040\3.1.1/tools/uf2conv.py"
  --serial "UF2_Board"
  --family RP2040
  --deploy "C:\Users\hogehoge\AppData\Local\Temp\arduino\sketches\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/TestOled.ino.uf2"

Converting to uf2, output size: 159232, start address: 0x2000
Scanning for RP2040 devices
Flashing E: (RPI-RP2)
Wrote 159232 bytes to E:/NEW.UF2




Tags: [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

ESP32で東方の Bad Apple!!の動画を 128 x 64 dotの OLED SSD1306で再生する!
ESP32で東方の Bad Apple!!の動画を 128 x 64 dotの OLED SSD1306で再生する!

  ESP32で東方の Bad Apple!!の動画を再生する!実際にはパラパラ漫画です

2.4インチの大画面 OLED SSD1309で東方の Bad Apple!!の動画を再生する
2.4インチの大画面 OLED SSD1309で東方の Bad Apple!!の動画を再生する

  2.42inch 128x64 OLED LCD Display module SSD1309で Bad Apple!!を再生します

SSD1306 OLEDの描画を高速化する方法
SSD1306 OLEDの描画を高速化する方法

  How to Speed Up OLED Drawing Speed

EPS32の I2Cの SCLの周波数をクロックアップして SSD1306 OLEDの描画を高速化する方法
EPS32の I2Cの SCLの周波数をクロックアップして SSD1306 OLEDの描画を高速化する方法

  OLED SSD1306で I2Cの SCLK周波数をドーピングで高速化して描画速度を爆速にする方法

【技適付き】Freenoveの ESP32-S3-WROOMの Basic Starter Kitを買ってみた、カメラ、SD-Card付きの学習キット
【技適付き】Freenoveの ESP32-S3-WROOMの Basic Starter Kitを買ってみた、カメラ、SD-Card付きの学習キット

  Freenove Basic Starter Kit for ESP32-S3-WROOM Onboard Camera Wireless Python C FNK0084

【技適付き】Freenoveの ESP32-WROVERの Ultimate Starter Kitを買ってみた、カメラ付きの学習キット
【技適付き】Freenoveの ESP32-WROVERの Ultimate Starter Kitを買ってみた、カメラ付きの学習キット

  Freenove Ultimate Starter Kit for ESP32-WROVER Onboard Camera Wireless Python C FNK0047

LoRa通信を使用してポストに郵便物が投函されるとスマホの LINE宛に通知する IoTの作り方
LoRa通信を使用してポストに郵便物が投函されるとスマホの LINE宛に通知する IoTの作り方

  LoRaを使用した IoT郵便受け LoRa IoT Mailbox Sensor with LINE Messaging API

ESP32で Slackに「勤怠管理」メッセージをワンボタン操作で投稿する方法
ESP32で Slackに「勤怠管理」メッセージをワンボタン操作で投稿する方法

  Slackの勤怠チャンネルに毎日毎日毎日毎日 手動で投稿するのが馬鹿らしいので ESP32で作った

ESP32-S3で SPIを使う時に Arduinoでエラーが出た話
ESP32-S3で SPIを使う時に Arduinoでエラーが出た話

  ESP32 S3 SPI error VSPI was not declared in this scope

ESP32の I2Sで MCLKが必須の CS4344 DAC Audioを使用する方法
ESP32の I2Sで MCLKが必須の CS4344 DAC Audioを使用する方法

  ESP32で MCLKが必須の CS4344が問題無く使えます

ESP32で SPI接続の Color LCD ST7735S 160x80px IPSを動かす方法
ESP32で SPI接続の Color LCD ST7735S 160x80px IPSを動かす方法

  ESP32 SPI IPS Color LCD ST7735S tutorial

【ソースコード有】ESP32で I2C接続の OLED SSD1306 128x64pxを動かす方法
【ソースコード有】ESP32で I2C接続の OLED SSD1306 128x64pxを動かす方法

  ESP32 I2C OLED SSD1306 tutorial

ESP32-WROOMを購入したらヘンテコ技適マークもどきの基板が届いた話
ESP32-WROOMを購入したらヘンテコ技適マークもどきの基板が届いた話

  Fake ESP32-WROOM Ignore FCC ID and Strange TELEC mark




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2023 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/hardware/arduino_cli_use_command_line_build_upload/