This is an old revision of the document!
Proiectul meu este un Mini Player Audio care redă fișiere `.wav` cu melodii de pe un card microSD, permite reglarea volumului printr-un potențiometru și oferă feedback vizual al nivelului sonor printr-un VU-meter format din LED-uri.
Scopul proiectului este de a integra conceptele învățate în laboratoare (PWM, ADC, SPI) într-o aplicație practică, ușor de înțeles și relevantă în viața reală.
Fiind pasionat de partea de muzica / producție muzicala etc. ideea a pornit de la dorința de a învăța cum funcționează redarea audio la nivel de microcontroler și cum putem controla semnalul atât din punct de vedere al intensității, cât și al afișării vizuale.
Considerăm că este un proiect util atât pentru învățare, cât și ca o improvizație de boxă portabilă — o alternativă low-cost și ușor de replicat.
Schema bloc ilustrează principalele componente hardware și fluxul de date din proiect. Modulul SD comunică cu Arduino prin interfața SPI, trimițând fișierul audio .wav către microcontroler. Acesta procesează datele și generează un semnal PWM proporțional, transmis către amplificatorul audio care alimentează difuzorul.
Potențiometrul conectat la un pin analogic este citit de Arduino prin conversie ADC, iar valoarea sa este folosită pentru a controla volumul audio și pentru a aprinde un număr corespunzător de LED-uri, simulând vizual un VU-meter.
La nivel software, sunt utilizate librăriile SD.h și TMRpcm.h pentru gestionarea fișierelor audio, iar interacțiunile cu componentele externe sunt realizate prin funcțiile analogRead(), analogWrite() și digitalWrite().
Listă componente hardware utilizate: • **Arduino Uno R3** • **Modul cititor microSD (interfață SPI)** • **Card microSD (format FAT32) cu fișier .wav** • **Amplificator audio PAM8403** • **Difuzor pasiv 8Ω / 0.5W** • **Potențiometru 10kΩ (linear)** • **4× LED-uri (roșu/galben/verde)** • **4× rezistențe 220Ω pentru LED-uri** • **Breadboard și fire de conexiune**
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.