Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Талхны самбар тавих
- Алхам 2: SD картыг холбох
- Алхам 3: Програм хангамжийн сангууд
- Алхам 4: MP3 өгөгдлийг цуваа монитор дээр байрлуулах
Видео: MP3 код тайлах Arduino номын сан: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
ESP32, ARM M серийн MP3 зэрэг хурдан микроконтроллеруудын тархалт нэмэгдсэн тул тусгай кодын тусламжтайгаар код тайлах шаардлагагүй болсон. Код тайлах ажлыг одоо програм хангамж дээр хийж болно.
Earlephilhower -аас маш олон төрлийн аудио файлуудыг хэрхэн декодлох, ESP микроконтроллер дээр тоглуулахыг харуулсан гайхалтай номын сан байдаг. Үүнээс санаа авч би кодын зарим хэсгийг микроконтроллер дээр MP3 файлуудыг унших модульчлагдсан аргыг бий болгосон.
Энэ арга нь хангалттай хурдан микроконтроллерт ашиглахад хангалттай ерөнхий байх болно гэж найдаж байна (зөвхөн ESP32 самбар биш), гэхдээ одоогоор би зөвхөн ESP32 дээр туршиж үзсэн.
Хангамж
Өмнө хэлсэнчлэн, энэ арга нь ямар ч хурдан микроконтроллерт үр дүнтэй байх болно гэж найдаж байна, гэхдээ тийм биш байж магадгүй юм. Тиймээс миний үр дүнг давтахын тулд танд дараахь зүйлс хэрэгтэй болно.
- ESP32 самбар
- SD таслах самбар
- SD карт
- Холбогч утас
- талх
- микро USB кабель (ноорог байршуулах зориулалттай)
- Arduino IDE
Алхам 1: Талхны самбар тавих
ESP32 болон SD картны таслагчийг талхны самбар дээр байрлуул.
Алхам 2: SD картыг холбох
SD картны холболтууд (ESP32 SD холболт) дараах байдалтай байна.
GND GND
3v3 VDD
23 DI (MOSI)
19 DO (MISO)
18 SCLK
5 CS
Хэрэв та өөр микроконтроллер ашиглаж байгаа бол эдгээр холболт өөр байх болно гэдгийг анхаарна уу.
Алхам 3: Програм хангамжийн сангууд
хэрэв танд ESP-IDF суулгаагүй бол вэбсайт руу нь ороод суулгаарай.
Дараа нь microdecoder номын санг суулгана уу. Та үүнийг хадгалах санг татаж аваад Arduino Libraries фолдерт байрлуулах замаар хийж болно. Микодекодерын номын сан одоогоор.wav болон.mp3 файлуудыг дэмждэг.
Хэлбэрээс үл хамааран анги тус бүртэй холбоотой цөөн хэдэн нийтлэг аргууд байдаг бөгөөд тэдгээрийг доорх кодод тусгасан болно. Үүнд зарим файлын мета өгөгдлийг авах, цуваа дэлгэц дээр хэвлэх зэрэг орно.
#"SD.h" // оруулах
#include "mp3.h" // декодер #include "pcm.h" // түүхий аудио өгөгдлийн контейнер MP3 MP3; void setup () {Serial.begin (115200); // Цуваа SD.begin () тохируулах; // SD холболтыг тохируулах Файлын файл = SD.open ("/cc.mp3"); // MP3 файл нээх MP3.begin (файл); // MP3.getMetadata () файлыг боловсруулах файлыг MP3 ангилалд хэлнэ үү; // metdadaata Serial.print авах ("Нэг дээж дэх бит:"); Serial.println (MP3.bitsPerSample); // дээж бүрт битүүдийг хэвлэх Serial.print ("Sample Rate:"); Serial.println (MP3. Fs); // ба түүврийн хурд} void loop () {}
Алхам 4: MP3 өгөгдлийг цуваа монитор дээр байрлуулах
Доорх кодыг ашигласнаар та зарим аудио өгөгдлийг цуваа дэлгэц дээр байрлуулж болно. Энэ нь маш удаан байх боловч MP3 санг хэрхэн ашиглахыг танд үзүүлэх болно. Энэ нь өгөгдлийг 16 дахин бууруулдаг тул өгөгдлийг төлөвлөхдөө аудио долгионы хэлбэр шиг харагддаг. Энэ кодыг SPD_MP3_Serial.ino жишээнээс микро декодерын сангийн хамт авсан болно. Мэдээжийн хэрэг, урагшлахад та энэ аудио өгөгдлийг ямар нэгэн байдлаар тоглуулахыг хүсэх болно, гэхдээ энэ бол өөр зааварчилгааны сэдэв юм.
#"SD.h" // оруулах
#include "mp3.h" // задлагч mp3 MP3; // MP3 ангийн pcm аудио; // түүхий аудио өгөгдлийн хүчингүй байдлын тохиргоо () {Serial.begin (115200); // Цуваа SD.begin () тохируулах; // SD холболтыг тохируулах Файлын файл = SD.open ("/cc.mp3"); // MP3 файл нээх MP3.begin (файл); // Файлыг MP3 ангилалд дамжуулах} void loop () {audio = MP3.decode (); // Аудио өгөгдлийг pcm ангилалд задлах / * audio.interleaved -д 32 дээж байна (зүүн 16, баруун 16) * гэхдээ бид зөвхөн суваг тус бүрийн эхний өгөгдлийн цэгийг зурах болно. * Энэ нь өгөгдлийг 16 дахин бууруулдаг (зөвхөн долгионы хэлбэрийг үзэхийн тулд) */ Serial.print (audio.interleaved [0]); // зүүн суваг Serial.print (""); Serial.println (audio.interleaved [1]); // баруун суваг}
Зөвлөмж болгож буй:
KICAD -д шинэ номын сан нэмэх: 6 алхам
KICAD -д шинэ номын сан нэмэх: KiCad бол электрон дизайны автоматжуулалт (EDA) үнэгүй програм хангамжийн багц юм. Энэ нь электрон хэлхээний схемийг боловсруулж, тэдгээрийг ПХБ -ийн загвар болгон хувиргах ажлыг хөнгөвчилдөг. Энэ нь схемийн зураг авах, ПХБ -ийн байршлын нэгдсэн орчинтой
YouTube -ийн үзэмжээр Arduino номын сан хийх: 7 алхам
YouTube -ийн хараанд зориулан Arduino номын сан хийх: Сайн байна уу, би саяхан YouTube -ийн үр дүнг нэгтгэж эхэлснээс хойш YouTube Analytics API -аас захиалагчдын өгөгдлийг гаргаж, захиалагчдын тоог илүү нарийвчлалтай өгөх боломжийг олгодог YouTube Sight нэртэй үйлчилгээг бий болгосон. Үүнтэй холбогдуулан би жишээ бүтээсэн
LM386 ашиглан Arduino текстээс ярианы хөрвүүлэгч - Ярьж буй Arduino төсөл - Talkie Arduino номын сан: 5 алхам
LM386 ашиглан Arduino текстээс ярианы хөрвүүлэгч | Ярьж буй Arduino төсөл | Talkie Arduino номын сан: Сайн байна уу, залуус аа, олон төслийн хувьд бид Arduino -аас цагийг ярих эсвэл зарим өгөгдлийг хэлэх гэх мэт зүйлийг ярихыг шаарддаг бөгөөд ингэснээр бид Arduino ашиглан текстийг яриа болгон хөрвүүлэх болно
JW номын сан дахь медиа байршлыг хэрхэн өөрчлөх вэ: 4 алхам
JW номын сан дахь медиа байршлыг хэрхэн өөрчлөх вэ: JW номын сан нь хялбаршуулсан интерфэйстэй гэсэн үг юм. Ихэнх тохиолдолд энэ нь маш сайн зүйл бөгөөд ихэнх хэрэглэгчдийн хувьд та зүгээр л програмыг ачаалж, хэрэгтэй хэлбэрээр нь ашиглах боломжтой болно. Үрэлт нь арай илүү дэвшилтэт зүйл хийхийг хүсч байвал ирдэг
BMP280 ба BME280 номын сан: 7 алхам
BMP280 ба BME280 -д зориулсан номын сан: Танилцуулга Би энэ номын санг бичихээр төлөвлөөгүй байна. Энэ нь " болсон " BMP280 ашигладаг миний эхлүүлсэн төслийн гаж нөлөө. Тэр төсөл хараахан дуусаагүй байгаа ч номын сан бусадтай хуваалцахад бэлэн байна гэж бодож байна. Дараа нь надад юу ч байгаагүй