↓ 前回記事
前回ハードはできたので、プログラミングを進めていく。
やること
前まで、VSCodeと拡張機能のEspressif IDFで開発していたが、生成AIに今回こんなことをやりたいと聞いた(課金している知り合いに聞いてもらった)ところ、PlatformIOというツールでの開発例を教えてもらったので、PlatformIOをやってみる。
PlatformIOインストール
対応しているプラットフォーム、フレームワークの記載もある。
今回のESP32も対応しているよう。
Platforms: Atmel AVR, Atmel SAM, Espressif 32, Espressif 8266, Freescale Kinetis, Infineon XMC, Intel ARC32, Intel MCS-51 (8051), Kendryte K210, Lattice iCE40, Maxim 32, Microchip PIC32, Nordic nRF51, Nordic nRF52, NXP LPC, RISC-V, Silicon Labs EFM32, ST STM32, ST STM8, Teensy, TI MSP430, TI Tiva, WIZNet W7500
Frameworks: Arduino, CMSIS, ESP-IDF, ESP8266 RTOS SDK, Freedom E SDK, Kendryte Standalone SDK, Kendryte FreeRTOS SDK, libOpenCM3, mbed, PULP OS, SPL, STM32Cube, WiringPi, Zephyr RTOS
Espressif 32という表記だが、ESP32と同義と思っていいか?
一応Espressifを調べておく。
Espressif Systemsは中国に拠点を持ち、SoC(システム・オン・チップ)製品、BluetoothおよびWi-Fi通信用モジュールを製造するファブレスメーカーです。
Espressifは2008年に設立され、上海に本社を置いています。Espressifでは、ESP8266やESP32ファミリーに代表される、1つのチップに様々な機能(32ビットマイクロコントローラ、メモリ、無線通信)を搭載するSoC製品を製造しています。同社の製品は、多機能、価格、製品および開発用キットの幅広いラインナップで、愛好家のみならず電子機器開発プロジェクトに携わるプロからも高い評価を得ています。
SoC集積回路およびEspressifのモジュールは、モノのインターネット(IoT)分野で最も多く用いられています。
https://www.tme.com/jp/ja/linecard/p,espressif_1109/
インストールはちょっと時間かかった。
VSCodeの再起動を求められた。
プロジェクト作成
VSCodeの左のバーを見ると、PlatformIOのハチのアイコンができている。
クリックすると、手順がガイドされているよう。
"Create New Project"をクリックすると、こんな画面が出てきた。
"New Project"をクリックすると、"Project Wizard"が出てきた。
ボードを選択できる。
ただ、今回のM5Stamp C3そのものはなく、"M5Stamp-Pico"ならあった。
このサイトによると、"Espressif ESP32-C3-DevKitM-1"を選択すればいいよう。
Arduino勉強会/41-M5Stamp-C3Uをデバッグする(暫定方法) - PukiWiki
ということで、こんな感じで設定。
今回はArduinoのフレームワークにする。生成AIの回答の通りで。
プロジェクトのLocationは、"Use default location"のチェックを外して、今のワークスペースの下にした。
デフォルトのままだと、Windowsのユーザーフォルダの下にできてしまったので。
最後に"finish"をクリック。
ちょっと時間がかかる。
こんな感じでプロジェクトフォルダと、中身ができた。
元のフォルダの下に作ったが、新しく作られたフォルダがVSCodeのワークスペースに追加された形になって、ダブってしまっている。
VSCodeを開き直して、ダブりはなくなった。
サンプルプログラム作成
生成AIに聞きながら、Hello Worldをまずやってみた。
ソースコード編集
srcフォルダにmain.cppがすでにあるが、中身を下記のように書き換え。
#include <Arduino.h> void setup() { Serial.begin(115200); } void loop() { Serial.println("Hello, world!"); delay(1000); }
platform.ini編集
上記のmain.cppでは、シリアルポートを115200のボーレートに設定しているので、下記の設定の追加がおそらく必要。
monitor_speed = 115200
platform.iniの全体は下記のようになっている。
; PlatformIO Project Configuration File ; ; Build options: build flags, source filter ; Upload options: custom upload port, speed and extra flags ; Library options: dependencies, extra library storages ; Advanced options: extra scripting ; ; Please visit documentation for the other options and examples ; https://docs.platformio.org/page/projectconf.html [env:esp32-c3-devkitm-1] platform = espressif32 board = esp32-c3-devkitm-1 framework = arduino monitor_speed = 115200
デバイス接続
M5StampをPCに接続して、PIO Homeで"Devices"タブを開いてみると、きちんと認識されているよう。
コンパイル、実行
どこのボタンを押せばいいのか?と思ったが、VSCodeの左のバー(アクティビティバー)のハチのアイコン(PlatformIOのアイコン)をクリックすると、"PROJECT TASKS"というのが出ている。まずはPlatformIOのプロジェクトを指定する必要があるよう。
"Pick a folder"をクリックして、さっき作ったプロジェクトを選ぶと、しばらくして表示が変わった。
"Build"とか"Upload"とか、それっぽいボタンが出てきている。
"Build"をクリックすると、ターミナルが起動して、ビルドが成功した表示が出た。
Executing task: C:\Users\a\.platformio\penv\Scripts\platformio.exe run --environment esp32-c3-devkitm-1 Processing esp32-c3-devkitm-1 (platform: espressif32; board: esp32-c3-devkitm-1; framework: arduino) -------------------------------------------------------------------------------------------------- Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32-c3-devkitm-1.html PLATFORM: Espressif 32 (6.9.0) > Espressif ESP32-C3-DevKitM-1 HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES: - framework-arduinoespressif32 @ 3.20017.0 (2.0.17) - tool-esptoolpy @ 1.40501.0 (4.5.1) - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft Found 33 compatible libraries Scanning dependencies... No dependencies Building in release mode Compiling .pio\build\esp32-c3-devkitm-1\src\main.cpp.o Building .pio\build\esp32-c3-devkitm-1\bootloader.bin Generating partitions .pio\build\esp32-c3-devkitm-1\partitions.bin esptool.py v4.5.1 Creating esp32c3 image... Merged 1 ELF section Successfully created esp32c3 image. Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Esp.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\FirmwareMSC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\FunctionalInterrupt.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\HWCDC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\HardwareSerial.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\IPAddress.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\IPv6Address.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\MD5Builder.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Print.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Stream.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\StreamString.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Tone.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USB.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USBCDC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USBMSC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\WMath.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\WString.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\base64.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\cbuf.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-adc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-bt.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-cpu.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-dac.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-gpio.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-i2c-slave.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-i2c.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-ledc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-matrix.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-misc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-psram.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-rgb-led.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-rmt.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-sigmadelta.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-spi.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-time.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-timer.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-tinyusb.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-touch.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-uart.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\firmware_msc_fat.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\libb64\cdecode.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\libb64\cencode.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\main.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\stdlib_noniso.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\wiring_pulse.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\wiring_shift.c.o Archiving .pio\build\esp32-c3-devkitm-1\libFrameworkArduino.a Linking .pio\build\esp32-c3-devkitm-1\firmware.elf Retrieving maximum program size .pio\build\esp32-c3-devkitm-1\firmware.elf Checking size .pio\build\esp32-c3-devkitm-1\firmware.elf Advanced Memory Usage is available via "PlatformIO Home > Project Inspect" RAM: [ ] 4.2% (used 13748 bytes from 327680 bytes) Flash: [== ] 18.9% (used 247460 bytes from 1310720 bytes) Building .pio\build\esp32-c3-devkitm-1\firmware.bin esptool.py v4.5.1 Creating esp32c3 image... Merged 2 ELF sections Successfully created esp32c3 image. ================================== [SUCCESS] Took 9.23 seconds ================================== * Terminal will be reused by tasks, press any key to close it.
次に、"Upload"ボタンを押したら、新しいターミナルが表示されて、マイコンにプログラムを書き込んだ表示になった。
ターミナルの表示全部見る
* Executing task: C:\Users\a\.platformio\penv\Scripts\platformio.exe run --target upload --environment esp32-c3-devkitm-1 Processing esp32-c3-devkitm-1 (platform: espressif32; board: esp32-c3-devkitm-1; framework: arduino) --------------------------------------------------------------------------------- Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32-c3-devkitm-1.html PLATFORM: Espressif 32 (6.9.0) > Espressif ESP32-C3-DevKitM-1 HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES: - framework-arduinoespressif32 @ 3.20017.0 (2.0.17) - tool-esptoolpy @ 1.40501.0 (4.5.1) - tool-mkfatfs @ 2.0.1 - tool-mklittlefs @ 1.203.210628 (2.3) - tool-mkspiffs @ 2.230.0 (2.30) - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft Found 33 compatible libraries Scanning dependencies... No dependencies Building in release mode Retrieving maximum program size .pio\build\esp32-c3-devkitm-1\firmware.elf Checking size .pio\build\esp32-c3-devkitm-1\firmware.elf Advanced Memory Usage is available via "PlatformIO Home > Project Inspect" RAM: [ ] 4.2% (used 13748 bytes from 327680 bytes) Flash: [== ] 18.9% (used 247460 bytes from 1310720 bytes) Configuring upload protocol... AVAILABLE: cmsis-dap, esp-bridge, esp-builtin, esp-prog, espota, esptool, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa CURRENT: upload_protocol = esptool Looking for upload port... Auto-detected: COM3 Uploading .pio\build\esp32-c3-devkitm-1\firmware.bin esptool.py v4.5.1 Serial port COM3 Connecting.... Chip is ESP32-C3 (revision v0.3) Features: WiFi, BLE Crystal is 40MHz MAC: 68:67:25:b2:d0:54 Uploading stub... Running stub... Stub running... Changing baud rate to 460800 Changed. Configuring flash size... Flash will be erased from 0x00000000 to 0x00003fff... Flash will be erased from 0x00008000 to 0x00008fff... Flash will be erased from 0x0000e000 to 0x0000ffff... Flash will be erased from 0x00010000 to 0x0004ffff... Compressed 13248 bytes to 9562... Writing at 0x00000000... (100 %) Wrote 13248 bytes (9562 compressed) at 0x00000000 in 0.5 seconds (effective 228.9 kbit/s)... Hash of data verified. Compressed 3072 bytes to 146... Writing at 0x00008000... (100 %) Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.1 seconds (effective 414.7 kbit/s)... Hash of data verified. Compressed 8192 bytes to 47... Writing at 0x0000e000... (100 %) Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 567.7 kbit/s)... Hash of data verified. Compressed 258896 bytes to 143444... Writing at 0x00010000... (11 %) Writing at 0x0001b29d... (22 %) Writing at 0x00022d30... (33 %) Writing at 0x0002993b... (44 %) Writing at 0x0002f9c9... (55 %) Writing at 0x00035b90... (66 %) Writing at 0x0003be8e... (77 %) Writing at 0x000445bb... (88 %) Writing at 0x0004a53e... (100 %) Wrote 258896 bytes (143444 compressed) at 0x00010000 in 4.4 seconds (effective 467.6 kbit/s)... Hash of data verified. Leaving... Hard resetting via RTS pin... ========================== [SUCCESS] Took 8.99 seconds ========================== * Terminal will be reused by tasks, press any key to close it.
最後に、"Monitor"をクリックすると、また新しいターミナルが開き、"Hello, world!"が表示された。
作ったプログラムはきちんと動いていそう。
ターミナルの表示全部見る
* Executing task: C:\Users\a\.platformio\penv\Scripts\platformio.exe device monitor --environment esp32-c3-devkitm-1 --- Terminal on COM3 | 115200 8-N-1 --- Available filters and text transformations: colorize, debug, default, direct, esp32_exception_decoder, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at https://bit.ly/pio-monitor-filters --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H Hello, world! Hello, world! Hello, world! Hello, world! Hello, world! Hello, world!
サンプルプログラム2つ目
このサイト見ると、M5Stampに搭載されているNeoPixelのLEDの点灯方法が書かれている。
ライブラリは必要なよう。
Arduino勉強会/41-M5Stamp-C3Uをデバッグする(暫定方法) - PukiWiki
PIO HOMEを見てみると、左のタブに"Libraries"とあり、見てみると、検索ができるよう。
"neo pixel"で検索すると、Adafruit社のライブラリが出てきた。
このライブラリをクリックしてみると、説明と、"Add to Project"ボタンがある。
"Add to Project"ボタンを押すと、どのプロジェクトに追加するかのダイアログが出るので、今回のプロジェクトを選択して、"Add"をクリックする。
上記の参考サイトのLチカのサンプルコードを使わせていただいて、main.cppに貼り付ける。
Arduino勉強会/41-M5Stamp-C3Uをデバッグする(暫定方法) - PukiWiki
これで、先ほどと同様にビルド、アップロードすると、LEDが赤くチカチカするのが確認できた。
一応、ビルドのときのログも。この中に、NeoPixel用のライブラリをビルドしてる部分もある。
Executing task: C:\Users\a\.platformio\penv\Scripts\platformio.exe run --environment esp32-c3-devkitm-1 Processing esp32-c3-devkitm-1 (platform: espressif32; board: esp32-c3-devkitm-1; framework: arduino) --------------------------------------------------------------------------------- Verbose mode can be enabled via `-v, --verbose` option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32-c3-devkitm-1.html PLATFORM: Espressif 32 (6.9.0) > Espressif ESP32-C3-DevKitM-1 HARDWARE: ESP32C3 160MHz, 320KB RAM, 4MB Flash DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-builtin, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) PACKAGES: - framework-arduinoespressif32 @ 3.20017.0 (2.0.17) - tool-esptoolpy @ 1.40501.0 (4.5.1) - toolchain-riscv32-esp @ 8.4.0+2021r2-patch5 LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf LDF Modes: Finder ~ chain, Compatibility ~ soft Found 34 compatible libraries Scanning dependencies... Dependency Graph |-- Adafruit NeoPixel @ 1.12.3 Building in release mode Compiling .pio\build\esp32-c3-devkitm-1\src\main.cpp.o Building .pio\build\esp32-c3-devkitm-1\bootloader.bin Generating partitions .pio\build\esp32-c3-devkitm-1\partitions.bin esptool.py v4.5.1 Creating esp32c3 image... Merged 1 ELF section Successfully created esp32c3 image. Compiling .pio\build\esp32-c3-devkitm-1\libc0e\Adafruit NeoPixel\Adafruit_NeoPixel.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\libc0e\Adafruit NeoPixel\esp.c.o Compiling .pio\build\esp32-c3-devkitm-1\libc0e\Adafruit NeoPixel\esp8266.c.o Compiling .pio\build\esp32-c3-devkitm-1\libc0e\Adafruit NeoPixel\kendyte_k210.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Esp.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\FirmwareMSC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\FunctionalInterrupt.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\HWCDC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\HardwareSerial.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\IPAddress.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\IPv6Address.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\MD5Builder.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Print.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Stream.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\StreamString.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\Tone.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USB.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USBCDC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\USBMSC.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\WMath.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\WString.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\base64.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\cbuf.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-adc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-bt.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-cpu.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-dac.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-gpio.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-i2c-slave.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-i2c.c.o Archiving .pio\build\esp32-c3-devkitm-1\libc0e\libAdafruit NeoPixel.a Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-ledc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-matrix.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-misc.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-psram.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-rgb-led.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-rmt.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-sigmadelta.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-spi.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-time.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-timer.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-tinyusb.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-touch.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\esp32-hal-uart.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\firmware_msc_fat.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\libb64\cdecode.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\libb64\cencode.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\main.cpp.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\stdlib_noniso.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\wiring_pulse.c.o Compiling .pio\build\esp32-c3-devkitm-1\FrameworkArduino\wiring_shift.c.o Archiving .pio\build\esp32-c3-devkitm-1\libFrameworkArduino.a Linking .pio\build\esp32-c3-devkitm-1\firmware.elf Retrieving maximum program size .pio\build\esp32-c3-devkitm-1\firmware.elf Checking size .pio\build\esp32-c3-devkitm-1\firmware.elf Advanced Memory Usage is available via "PlatformIO Home > Project Inspect" RAM: [ ] 4.2% (used 13804 bytes from 327680 bytes) Flash: [== ] 18.4% (used 241046 bytes from 1310720 bytes) Building .pio\build\esp32-c3-devkitm-1\firmware.bin esptool.py v4.5.1 Creating esp32c3 image... Merged 2 ELF sections Successfully created esp32c3 image. ========================== [SUCCESS] Took 7.97 seconds ========================== * Terminal will be reused by tasks, press any key to close it.
以上
開発環境の用意、プロジェクトのビルド、あとはライブラリの追加のしかたも確認できた。
次回は、Wi-Fi接続のプログラムを作ってみる。