本チュートリアルでは、ESP‑IDF 開発環境に CoreS3 ボードサポートパッケージ(BSP)を統合し、オンボード周辺機器ドライバの迅速な初期化および管理を行う方法を紹介します。開発効率を向上させることができます。
v5.4.1
を推奨します. ./export.sh
コマンドの "."
とスクリプトパスの間に空白が必要です。このコマンドは source ./export.sh
と同等ですgit clone --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
git checkout v5.4.1 # 推奨
./install.sh
. ./export.sh
idf.py
コマンドは ESP‑IDF が有効になっている必要があります。実行前にプロジェクトディレクトリ内で . ./export.sh
を呼び出し、環境変数を有効化してください。詳細は ESP‑IDF – ESP32‑S3 入門チュートリアル を参照。cores3_projects
フォルダを作成し、その中に移動した後、esp-idf ディレクトリの export.sh
を呼び出して環境を有効化します。以下のコマンドは cores3_projects
と esp-idf
が同階層にある場合の例です。パスが異なる場合は適宜修正してください。空のプロジェクトテンプレート my_project
を作成するには、次の idf.py create-project
コマンドを実行します。mkdir cores3_projects
cd cores3_projects
. ../esp-idf/export.sh
idf.py create-project my_project
cd my_project
idf.py add-dependency "espressif/m5stack_core_s3^3.0.0"
idf.py set-target esp32s3
idf.py menuconfig
を実行し、Component config
→ Audio Codec Device Configuration
メニュー内の後方互換 I2C Driver
オプションを無効化してください。idf.py menuconfig
vim main/my_project.c
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_log.h"
#include "lv_demos.h"
#include "bsp/esp-bsp.h"
static char *TAG = "app_main";
#define LOG_MEM_INFO (0)
void app_main(void) {
/* ディスプレイと LVGL の初期化 */
bsp_display_start();
/* バックライトを 100% に設定 */
bsp_display_backlight_on();
ESP_LOGI(TAG, "Display LVGL demo");
bsp_display_lock(0);
lv_demo_widgets(); /* ウィジェットのデモ */
// lv_demo_music(); /* スマートフォン風音楽プレーヤーデモ */
// lv_demo_stress(); /* LVGL ストレステストデモ */
// lv_demo_benchmark(); /* LVGL 性能ベンチマークデモ */
bsp_display_unlock();
}
idf.py menuconfig
の Component config
→ LVGL Configuration
→ Demos
で該当デモを有効化します。idf.py flash