Autorul poate fi contactat la adresa: Login pentru adresa
Vreau sa implementez un music player care poate fi accesat prin wifi. Consider ca este mult mai comod sa poti sa schimbi muzica din casa de pe orice device, remote.
Lista piese:
Componenta | Cantitate |
---|---|
Placa de bază | 1 |
Buzzer pasiv | 1 |
Esp32 | 1 |
Leduri | 2 |
Fire mama-mama | 5 |
Mediu de dezvoltare :
Biblioteci :
Biblioteci esp32:
Algoritmi folositi:
Proiectul este gata. ESP32 deschide un host de wifi. Conectandu-ne la el, avem acces la un server http deschis pe aceeasi placuta.
Cele 2 butoane trimit requesturi REST catre placuta; In functie de request-ul primit, esp32 semnaleaza catre atmega operatia de “play/stop” sau operatia de “next song”. Atmega asteapta intreruperi asincrone si reda melodii pe buzzer-ul pasiv.
In poza de mai jos se observa atmega, modulul wifi( esp32 ) si buzzerul conectate prin cabluri mama-mama.
Aceasta a fost prima data cand am construit o componenta hardware si am fost incantat ca am putut pune in practica cunostintele de la electronica. Implementarea este usoara, am gresit la implementarea spi-ului si nu am putut face stream-ul melodiilor de pe esp pe atmega, pierzandu-se astfel o functionalitate pe care voiam s-o implementez ( upload-ul melodiilor din serverul http ) . M-au ajutat foarte mult cunostintele dobandite la laboratoare si am fost profund incantat de asistenta oferita de laboranti pentru acest proiect, chiar si in afara programului scolar.
Am atasat mai jos codul de pe esp32, cel de pe atmega si un foarte scurt ghid pentru compilarea codului pe esp32
04.04.2017: Am comandat pentru piesele hardware necesare
12.04.2017: Am luat piesele, am inceput sa lipesc placa de baza
14.04.2017: Am luat esp32, am scris serverul http pe esp32
15.04.2017: Am scris logica de redare a muzicii pentru atmega
23.04.2017: Atmega este montat, functioneaza, am pus bootloaderul la laborator si am urcat codul scris in data de 15.04
24.04.2017: Am implementat trimiterea de date prin SPI intre atmega si esp32. Am vazut ca nu merge. Am rescris trimiterea de semnale prin intreruperi asincrone.