Turinys:

ESP8266 „DfPlayer“garso grotuvas: 8 žingsniai
ESP8266 „DfPlayer“garso grotuvas: 8 žingsniai

Video: ESP8266 „DfPlayer“garso grotuvas: 8 žingsniai

Video: ESP8266 „DfPlayer“garso grotuvas: 8 žingsniai
Video: Test of DFPlayer controlled by ESP8266 2024, Lapkritis
Anonim
ESP8266 „DfPlayer“garso grotuvas
ESP8266 „DfPlayer“garso grotuvas
ESP8266 „DfPlayer“garso grotuvas
ESP8266 „DfPlayer“garso grotuvas
ESP8266 „DfPlayer“garso grotuvas
ESP8266 „DfPlayer“garso grotuvas

Tai mp3 garso grotuvas, sukurtas iš esp8266 wifi modulio ir dfPlayer mp3 modulio. Jis leidžia failus iš SD kortelės.

Aš įdėjau jį į seną kompiuterio garsiakalbį ir privertiau jį maitinti akumuliatoriumi, tačiau jį buvo galima įmontuoti į bet kurį garsiakalbio korpusą.

Funkcijos apima

  • 4 vietiniai mygtukai, skirti naudoti atskirai (garsumas, paprastas pasirinkimas)
  • Mobiliosios naršyklės sąsaja su atkūrimo valdikliais ir naršymu aplankuose
  • Nutildymo valdymas, leidžiantis naudoti ausines
  • Lengva nustatyti naudojant „WifiManager“
  • Programinės įrangos atnaujinimai per orą
  • Failų naršyklė priežiūrai
  • „dfPlayer“iki 2 W garso išvestis į garsiakalbį (monofoninis). Stereo į ausines

1 žingsnis: reikalingi komponentai ir įrankiai

Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai
Reikalingi komponentai ir įrankiai

Reikia šių dalių

  • ESP-12F wifi apdorojimo modulis
  • „dfPlayer“mp3 modulis su „micro SD“kortelės laikikliu
  • 18650 baterija ir laikiklis
  • LIPO įkrovimo modulis
  • Mygtuko jungikliai x4
  • Maitinimo slankiklis x 1
  • Įtampos reguliatorius naudojant mažo iškritimo 3,3 V lustą (pvz., XC6203)
  • Grandinės plokštės laužas, skirtas reguliatoriui gaminti
  • 2.2K rezistorius
  • 10K rezistorius x 2
  • 47K rezistorius
  • 220 uF atjungimo kondensatorius
  • Prijunkite laidą
  • Garsiakalbis + gaubtas (pvz., Kompiuterio garsiakalbis ar senas radijas)
  • Ausinių lizdas. Gali būti jau esamame aptvare.
  • SD kortelė (rekomenduojama 4 GB, bet galima naudoti beveik bet kokio dydžio)

Visa tai galima gauti už labai kuklią sumą tokiose svetainėse kaip „eBay“

Reikalingi įrankiai

  • Gręžkite ir dildykite, kad gaubte padarytumėte skyles
  • Smulkaus taško lituoklis

„DfPlayer“modulį gali būti sudėtinga sumontuoti, nes jis turi turėti išorinę prieigą prie lizdo, kad galėtumėte pasiekti SD kortelę. Korpusams su plokščiu ekranu naudoju 3D spausdintą laikiklį, skirtą saugiai laikyti modulį prie skydo

2 žingsnis: schema

Schema
Schema

Schema yra gana paprasta.

Baterijai įkrauti naudojamas LIPO akumuliatoriaus įkrovimo modulis.

Baterija maitina „dfPlayer“modulį tiesiogiai ir ESP-12F per 3.3V reguliatorių.

„DfPlayer“valdomas naudojant nuosekliąją sąsają, todėl 2 ESP-12F modulio kaiščiai tai palaiko.

4 mygtukai yra pririšti prie ESP-12F GPIO, kad veiktų savarankiškai.

Garsiakalbį ir ausinių lizdą tiesiogiai palaiko dfPlayer modulis.

3 žingsnis: Statyba

Statyba
Statyba
Statyba
Statyba

Mechaninės konstrukcijos detalės skirsis priklausomai nuo naudojamo korpuso tipo. Čia pateiktame pavyzdyje buvo naudojamas kompiuterio garsiakalbis. Viduje buvo daug vietos moduliams ir elektronikai.

Paveikslėlyje parodytas užbaigtas šio pavyzdžio vaizdas. USB, maitinimo jungiklis ir mygtukai yra dešinėje pusėje. LIPO yra sumontuotas ant nugaros. ESP-12F modulis, ausinių lizdas ir „dfPlayer“yra sumontuoti kairėje pusėje. Baterija buvo sumontuota gale.

Bendrieji žingsniai, parengus jūsų korpusui tinkamą išdėstymą, yra šie

  • Išgręžkite ir nufotografuokite skyles, kad paimtumėte USB įvestį, slankiklį, 4 mygtukus, ausinių lizdą ir „micro SD“kortelės lizdą. SD kortelės lizdą reikia padaryti atsargiai, kad jis atitiktų vietą, kurioje bus sumontuotas „dfPlayer“modulis.
  • Jei norite nutildyti garsiakalbius, kad ausinės veiktų, „dfPlayer“reikia šiek tiek pakeisti, kaip parodyta paveikslėlyje. Laive esančiame mažame stiprintuve yra nutildymas, tačiau jis prijungtas prie žemės per 0 omų rezistorių. Nuimkite šį rezistorių ir pakeiskite 10K rezistoriumi. Lituokite laidą ant trinkelės, kaip parodyta. Tai yra nutildymas, kurį galima valdyti iš ESP-12F
  • Atkreipkite dėmesį, kad prieš galutinę mechaninę konstrukciją pirmiausia norite paleisti ESP-12F modulį. Žr. Programinės įrangos žingsnį.
  • Padarykite 3,3 V reguliatorių ant laužo juostos. Yra tik 2 komponentai, juos galima prijungti prie laido ir pritvirtinti prie ESP-12F modulio.
  • Mechaniškai pritvirtinkite mygtukinius jungiklius, užfiksuokite klijais ir lituokite įžeminimo kilpą per vieną visų jungiklių pusę.
  • Lituoklis 4 skraidantys laidai ant USB jungties ir pritvirtinami prie korpuso ir pritvirtinami klijais
  • Lituoklio laidai nuo akumuliatoriaus laikiklio iki LIPO įkroviklio ir maitinimo slankiklio jungiklio. Klijų įkroviklis ir stumdomas jungiklis korpuse.
  • Lydmetalio skraidymo laidai ant ausinių lizdo, pritvirtinami ir priklijuojami.
  • Pridėkite 2.2K rezistorių, ADC daliklį ir CH/Up jungtį prie ESP-12F modulio
  • Lydmetalis skrenda prie ESP-12F modulio, skirto nuosekliajai sąsajai, 4 GPIO mygtukai.
  • Įdėkite „dfPlayer“į vietą ir pasirūpinkite, kad lizdas turėtų prieigą prie SD kortelės.
  • Užbaigti laidus nuo ESP12-F iki maitinimo jungčių, mygtukų, nuosekliosios sąsajos ir dfPlayer nutildymo valdymo
  • Visiškai prijungti maitinimą, USB duomenų porą, ausinių lizdą ir garsiakalbį prie „dfPlayer“

Dar kartą patikrinkite maitinimo laidus!

4 žingsnis: programinė įranga ir diegimas

ESP programinė įranga parašyta „Arduino“aplinkoje. Šaltinio kodą galite rasti adresu https://github.com/roberttidey/dfPlayer Biblioteka, valdanti dfPlayer. Kitos reikalingos ir išvardytos bibliotekos yra standartiniai moduliai.

Ino eskizui nereikia daug keisti, nors norėsite pakeisti „WifiManager“ir programinės aparatinės įrangos atnaujinimo slaptažodžius.

Kompiliuokite „Arduino ESP8266“aplinkoje ir atlikite pirmąją blykstę per standartinį nuoseklųjį ryšį. Tolesnius atnaujinimus galima atlikti eksportuojant dvejetainį failą į „Arduino IDE“ir atlikus OTA (belaidžiu būdu) atnaujinimą tiesiai į įrenginį be jokių laidų.

Pirmą kartą naudojant programinę įrangą nebus vietinių „Wi -Fi“prisijungimo duomenų, o ji sukurs prieigos tašką, vadinamą „dfPlayerSet up“. Prisijunkite prie to (pvz., Iš telefono ar planšetinio kompiuterio) ir naršykite 102.168.4.1. Tai atvers sąsają, leidžiančią pasirinkti tikrąjį tinklą ir įvesti jo slaptažodį. Nuo tada tai bus naudojama automatiškai.

Yra paprastas failų įkėlėjas, kuris turėtų būti naudojamas įkelti pagrindinius failus į SPIFFS rinkmenų sistemą ESP-12F (edit.htm.gz, index.html, basic.htm, favicon*-p.webp

Nuo to laiko galite naudoti https:// ip/edit, kad draugiškiau įkeltumėte tolesnius duomenis.

Galite redaguoti index.htm, kad nurodytumėte kitą favicon failą ir, jei reikia, suteiktumėte jam kitą pavadinimą.

Favicon bus naudojamas, jei prie telefono ekrano pridėsite nuorodą.

5 žingsnis: SD kortelės paruošimas

„DfPlayer“atkuria failus tiesiai iš SD kortelės, tačiau turi ribotą aplankų ir failų pavadinimų schemą.

Kad būtų lengviau naudoti ir valdyti scenarijų, pateikiama programinė įranga, kuri gali palaikyti šį pavadinimą, bet taip pat leidžia pateikti ieškinį dėl originalių pavadinimų žiniatinklio sąsajoje.

Jei norite naudoti, prijunkite SD kortelę prie kompiuterio ir nukopijuokite į katalogą su takeliais su jų originaliais pavadinimais (pvz., Albumų aplankams ir failų takelių pavadinimams).

Paleiskite scenarijų (dfPlayer-makeSD.vbs). Jis paragins įvesti SD kortelės garsumą. Pakeiskite tai, jei reikia. Tada jis pervardys visus SD kortelės aplankus ir failus ir sukurs žemėlapių failus iš supaprastinto pavadinimo atgal į pradinius pavadinimus. Folders.txt yra aplankų numerių ir pavadinimų sąrašas. Atskirame „Track.txt“faile yra kiekvieno aplanko atvaizdavimas. Šiame etape reikia tik failo „Folders.txt“. Programinės įrangos patobulinimai ateityje gali naudoti takelių sąrašus.

Failą Folders.txt reikia įkelti į ESP-12F SPIFFS failų sistemą per /edit uploader.

Atminkite, kad galite ištrinti aplankus ir pridėti naujų. Kai pridedate naują su originaliu pavadinimu, tiesiog paleiskite scenarijų dar kartą. Jis pervadins tik naujus aplankus ir failus ir atkurs žemėlapius. Reikėtų dar kartą įkelti naują failą FOlders.txt.

6 veiksmas: savarankiškas veikimas

4 mygtukai veikia taip.

  • Pagarsink. Trumpas paspaudimas padidina garsumą, ilgas paspaudimas išjungia garsiakalbio garsą
  • Garsumo mažinimas Trumpas paspaudimas sumažina garsumą. Ilgai paspaudus, garsiakalbis nutildomas
  • Pasirinkite1 Trumpas paspaudimas padidina aplanko, kurį reikia leisti, numerį. Ilgai paspaudus pradedamas leisti pasirinktas aplankas
  • „Select2 Short Press“sumažina aplanko numerį. „Long Press“pradeda atkurti atsitiktinius takelius

7 veiksmas: įprastas naršyklės veikimas

Tai pasiekiama adresu https:// ip (numatytasis indeksas.htm)

Tai atveria paprastą žiniatinklio sąsają su garsumo slankikliu ir grojimo valdiklių rinkiniu

  • Pauzė
  • žaisti
  • Atsitiktinis
  • Sustabdyti
  • Pereiti į kitą
  • Pereiti prie ankstesnio
  • Išjungti garsiakalbio garsą
  • Nutildyti garsiakalbį

Žemiau yra mygtukų rinkinys po vieną kiekviename kortelės aplanke, kuriame yra jų originalūs pavadinimai. Spustelėjus vieną iš jų, bus paleistas tas aplankas.

8 veiksmas: pagrindinė naršyklės operacija

Pagrindinė naršyklės operacija
Pagrindinė naršyklės operacija

Supaprastinta naršyklės sąsaja pirmiausia gali būti naudojama bandymams. Tai pasiekiama adresu

Tai leidžia pasirinkti komandą ir jos parametrus, kuriuos reikia siųsti programinei įrangai.

Šios komandos siunčiamos į ESP12-F naudojant

http:/ip/dfPlayer? cmd = komanda & p1 = pirmasis & p2 = antras & p3 = trečias

Galimos komandos yra

  • ? cmd = paleisti & p1 = aplankas & p2 = takelis
  • ? cmd = playmp3 & p1 = takelis
  • ? cmd = tūris & p1 = lygis (0-30)
  • ? cmd = sustoti
  • ? cmd = garsumo didinimas
  • ? cmd = apimtis
  • ? cmd = garsiakalbis & p1 = išjungtas (0/1)
  • ? cmd = pauzė
  • ? cmd = pradžia
  • ? cmd = kitas
  • ? cmd = ankstesnis
  • ? cmd = režimas & p1 = tipas
  • ? cmd = loopFolder & p1 = aplankas
  • ? cmd = atsitiktinis
  • ? cmd = eq & p1 = tipas
  • ? cmd = įrenginys & p1 = tipas
  • ? cmd = nustatymas & p1 = nustatymas1 & p2 = nustatymas2
  • ? cmd = miegas
  • ? cmd = atstatyti
  • ? cmd = neapdorotas & p1 = cmdcode & p2 = par1 & p3 = par2
  • ? cmd = init

ip/dfPlayerStatus pateikia pagrindinę grotuvo būseną, įskaitant akumuliatoriaus įtampą

Rekomenduojamas: