ジャンプする:
ESP32 チュートリアル 1/55 - SunFounder の ESP32 IoT 学習キットソフトウェアと Arduino IDE の紹介 ESP32 チュートリアル 2/55 - ESP32 とは、カメラ拡張ボード、SunFounder の ESP32 IoT キットの開封作業 ESP32 チュートリアル 3/55 - 抵抗、LED、ブレッドボードプロジェクト: こんにちは LED - ESP32 IoT 学習キット ESP32 チュートリアル 4/55 - データ型 変数の定義 Int, bool, char, シリアルモニター - ESP32 IoT キット ESP32 チュートリアル 5/55 - LED フェード、LED の明るさを制御 - ESP32 IoT 学習キット ESP32 チュートリアル 6/55 - RGB LED の使用 プロジェクト 2.3 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 7/55 - ESP32 Arduino プログラミングでの配列の使用 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 8/55 - ウォーキングライト 74HC595 シフトレジスタ - SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 9/55 - プッシュボタンを使用してLEDをトグル、オンに押す、オフに押す - SunFounder ESP32 IoTキット ESP32 チュートリアル 10/55 - セブンセグメントディスプレイ 74HC595 を使用したデジタルカウンター - ESP32 IoT ラーニングキット ESP32 チュートリアル 11/55 - ESP32 と LCD1602 LCD2004 の使用 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 12/55 - SunFounder の ESP32 IoT 学習キットを使用した WS2812 RGB ストリップ 4 プロジェクト ESP32 チュートリアル 13/55 - アクティブブザーによる Arduino ビープ | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 14/55 - SunFounder ESP32 IoT 学習キットを使用したカスタム音楽ノートの再生 ESP32 チュートリアル 15/55 - ESP32 L293D を用いた DC モーター速度制御 | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 16/55 - ESP32とL293Dを使用したミニ水ポンプ | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 17/55 - ESP32 とポテンショメーターを使用したサーボモーターの制御 - ESP32 IoT 学習キット ESP32チュートリアル 18/55 - ESP32を使った傾き検出 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 19/55 - 赤外線センサーを使った障害物の検出 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 20/55 - ライントラッキングモジュール | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 21/55 - PIR モーションセンサーを使用した人間の検出 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 22/55 - LED Arduino を使用して光を感じる | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 23/55 - ESP32 を使用したポテンショメーターの電圧測定 | SunFounder の ESP32 IoT キット ESP32 チュートリアル 24/55 - 灌漑のための土壌湿度の測定 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 25/55 - NTC と LCD を使用した温度測定 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 26/55 - Arduino でのジョイスティックの使用 アクションを起こす | SunFounder の ESP32 IoT キット ESP32 チュートリアル 27/55 - 超音波センサーを使用した距離の測定 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 28/55 - DHT11 温度センサーと LCD | SunFounder の ESP32 IoT 学習キット ESP32のチュートリアル 29/55 - ESP32でIRリモコンのキー入力を読み取る | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 30/55 - Adafruit IO サービスを使用した MQTT を通じてウェブ上でサーボを制御する | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 31/55 - 障害物回避機能付き LED ストリッププロジェクト | SunFounderのESP32 IoT 学習キット ESP32チュートリアル 32/55 - LCDとブザーを使った車のバックレンジ警告 | SunFounderのIoT学習キット ESP32チュートリアル 33/55 - SunFounderのESP32 IoT学習キットを使用したデジタルサイコロ ESP32チュートリアル 34/55 - RGB LEDとノブを使ったカラ―グラデーション | SunFounderのESP32 IoT学習キット ESP32チュートリアル 35/55 - 植物モニター、土壌、温度と光 | SunFounderのESP32 IoT学習キット ESP32チュートリアル 36/55 - 数当てゲーム | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 37/55 - ESP32 BLE を使用した Bluetooth アプリ | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 38/55 - モバイルフォンからRGB LEDを制御する | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 39/55 - ESP32 を Bluetooth 音楽プレーヤーとして使用する | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 40/55 - Micro SDカードへの読み書き | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 41/55 - Micro SD カードを使用した MP3 プレーヤー | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 42/55 - カメラで写真を撮影し、マイクロSDに保存 CAM-1 | SunFounder の ESP32 キット ESP32 チュートリアル 43/55 - IoT インターネット気象観測所 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 44/55 - ESP32 カメラウェブサーバービデオストリーム オーバー WiFi CAM-2 | SunFounder の ESP32 キット ESP32 チュートリアル 45/55 - LED コントロール付きカスタムストリーミングサーバー CAM-3 | SunFounder の ESP32 学習キット ESP32 チュートリアル 46/55 - HiveMQ MQTT を使用したリモート温度監視 | SunFounder の ESP32 キット ESP32 チュートリアル 47/55 - インターネット経由の MQTT を使用した WS2812 CheerLights | SunFounder の ESP32 IoT キット ESP32チュートリアル 48/55 - リモート温度監視とLED制御 MQTT | SunFounderのESP32 IoTキット ESP32チュートリアル 49/55 - Adafruit IoTを使用してインターネット経由でDCモーターを制御する | SunFounderのESP32キット ESP32 チュートリアル 50/55 - 世界中のどこからでも RGB LED を制御する | SunFounder の ESP32 キット ESP32 チュートリアル 51/55 - DHT を使用した WiFi 経由の温度と湿度 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 52/55 - WS2812 CheerLights MQTT グローバル同期 LCD 付き | SunFounder ESP32 IoT キット ESP32 チュートリアル 53/55 - LCD インターネットクロックの作成 | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 54/55 - Wifi経由でWS2812 LEDストリップの色を設定 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 55/55 - 12V、24V、または 100V の DC 電圧を測定する方法 | SunFounder の ESP32 IoT 学習キット
ESP32 チュートリアル 41/55 - Micro SD カードを使用した MP3 プレーヤー | SunFounder の ESP32 IoT 学習キット
このチュートリアルでは、ESP32マイコンとマイクロSDカードを使用してMP3プレーヤーを作成します。ESP32はマイクロSDカードに保存された音声ファイルを読み取り、オーディオアンプとスピーカーを通じて音を出力します。このプロジェクトは、ESP32、オーディオアンプ、マイクロSDカードなどのさまざまなコンポーネントを組み合わせて、音楽を簡単に再生できるようにします。
プロセス全体を通じて、必要な配線やコーディング、一般的な問題のトラブルシューティング方法について話し合います。視覚的なガイダンスが必要な場合は、関連するビデオ(ビデオは :00 にあります)をぜひご覧ください。
ハードウェアの解説 このプロジェクトで使用される主なコンポーネントには、ESP32マイクロコントローラー、マイクロSDカード、オーディオアンプ、スピーカーが含まれます。ESP32は、内蔵Wi-FiとBluetooth機能を備えた強力なマイクロコントローラーであり、IoTプロジェクトに最適です。音声再生の処理と制御を担当します。
micro SDカードは、MP3形式の音声ファイルを保存するために使用されます。これはESP32に接続され、プログラムはファイルを読み取り、アンプに音声データを送信することができます。音声アンプはESP32からのデジタル信号を受け取り、それを増幅してスピーカーを駆動し、音を聞くことができるようにします。
データシートの詳細
メーカー サンファウンダー
部品番号 ESP32
論理/入出力電圧 3.3 V
供給電圧 5 V
出力電流(チャネルごと) 2 A最大
ピーク電流(チャンネルごと) 3 A最大
PWM周波数ガイダンス 最大40 kHzまで
入力論理しきい値 0.3 x VCC (低), 0.7 x VCC (高)
電圧降下 / RDS(on) / 飽和 0.15 V
熱的限界 85 °C
パッケージ WROOM-32
ノート / バリアント さまざまなオーディオライブラリに対応
microSDカードがFAT32としてフォーマットされていることを確認してください。
オーディオアンプを接続するために抵抗器を使用して歪みを防ぎます。
電源接続を安定させ、切断を避けてください。
システムに電源を入れる前に、配線に緩い接続がないか確認してください。
デバッグ情報のためにシリアル出力を監視してください。
低インピーダンススピーカーを使用すると、音質が向上します。
最高のパフォーマンスを得るために、音声を再生中にESP32がタスクで過負荷にならないようにしてください。
SD_MMCマイクロSDアクセスに使用され、AudioOutputI2S音声出力に使用されます。
配線指示 ESP32-40-micro-sd-card-1 esp32-41-play-music-wriing コンポーネントを配線するには、まず電源を接続します。ESP32の5VをオーディオアンプのVCCピンに接続します。次に、ESP32のグラウンドピンをアンプのグラウンドピンに接続します。ESP32からのオーディオ出力ピンは、通常GPIO25アンプの入力ピンには10 kΩの抵抗を介して接続する必要があります。
スピーカーはオーディオアンプの出力ピンに接続してください。スピーカーには極性がないため、どちら向きでも接続できます。マイクロSDカードをESP32の指定されたスロットに挿入してください。システムの電源を入れる前に、すべての接続を再確認してください。
コード例とウォークスルー 提供されたコードでは、オーディオ再生とSDカードアクセスに必要なライブラリーをインクルードすることから始めます。主要な識別子はmp3,file, とoutMP3ジェネレーター、音声ファイルのソース、および音声出力をそれぞれ表します。
AudioGeneratorMP3 *mp3;
AudioFileSourceSD_MMC *file;
AudioOutputI2S *out;ここでは、MP3ジェネレーターとオーディオファイルソースのポインタを宣言します。setup()関数では、シリアル通信とSDカードを初期化します。
void setup() {
Serial.begin(115200);
if (!SD_MMC.begin()) {
Serial.println("SD card mount failed!");
}
file = new AudioFileSourceSD_MMC("/To Alice.mp3");
out = new AudioOutputI2S(0, 1);
}この抜粋では、SDカードが正常にマウントされているかを確認します。失敗した場合は、エラーメッセージが表示されます。その後、MP3ファイルとオーディオ出力モードを設定します。
void loop() {
if (mp3->isRunning()) {
if (!mp3->loop()) mp3->stop();
} else {
Serial.println("MP3 done");
delay(1000);
}
}このループは、MP3ファイルがまだ再生中かどうかを確認します。再生が続いていない場合、再生が完了したことを示すメッセージを表示します。完全なコードは、記事の下に読み込まれて、さらに参照できるようになります。
デモ / 期待されること すべてが配線され、コードがアップロードされると、マイクロSDカードを挿入したときにスピーカーから音声が再生されるはずです。カードを挿入した後はESP32をリセットしてください。音声が再生されない場合は、配線を確認し、コード内で音声ファイルの名前が正しく設定されていることを確認してください(動画の05:00に)。
一般的な落とし穴には、マイクロSDカードを正しくフォーマットしないことや、サポートされていない音声ファイル形式を使用することが含まれます。常にファイルがMP3形式で、必要に応じてルートディレクトリまたは指定されたフォルダーに配置されていることを確認してください。
ビデオのタイムスタンプ
00:00 スタート 2:19 プロジェクトの紹介 4:27 ドキュメントページ 5:32 オーディオアンプの配線 ESP32用のmicroSDカードを8:00にフォーマットしています 10:16 図書館とコード 15:16 Arduino IDEでESP32ボードとCOMポートを選択する 16:58 ESP32を使用してMicro SDカードから曲を再生中 19:14 18650バッテリーを使用した第2回デモ
画像
speaker_pic
audio_module
ESP32-40-micro-sd-card-1
esp32-41-play-music-wriing
esp32-41-play-music-wriing
コード
842-ESP32 Tutorial 41/55- Arduino code for playing music from microSD card
言語: C++
コードを読み込む