This is an old revision of the document!
MP3 Player with RGB Music Visualizer
Student: Tudose George-Ștefan
Grupa: 334CC
Introducere
Proiectul constă într-un MP3-Player care are funcționalitate și de music visualizer. Pentru a reda melodiile dorite, utilizatorul le
salvează pe un card MircoSD urmând să le redea folosind o interfață minimalistă oferită de un ecran OLED. Folosind un senzor cu mircrofon
sistemul va acționa o bandă RGB pentru a-i schimba culoarea și luminozitatea conform melodiei curente care este redată la momentul curent.
Am ales să realizez acest tip de proiect datorită faptului că în timpul zilei ascult foarte multă muzică. Ideea de music visualizer printr-o
bandă LED a apărut din dorința de a face un proiect puțin mai complex decât un simplu MP3 Player. Consider că acest proiect este util deoarece
tuturor ne place să ascultăm muzică.
Descriere generală
Acest MP3 Player are următoarele funcționalități:

Redă melodiile încărcate pe un card micro SD

Oferă o interfață cu utilizatorul accesibila print-un ecran și o serie de butoane

Oferă funcționalități specifice unui MP3 Player: stop/ start playing, next/ prev song, sound up/ down

Oferă posibilitatea de a modifica culoarea bandei LED în funcție de melodia curentă care rulează
Hardware Design
Lista de Componente :
Arduino UNO R3 ATMEGA328P
SD Card Reader
Card de memorie Sandisk Ultra MircoSD 32GB Class 10
Boxa 40MM 3W
1k Rezistors
DFPlayer Mini
PAM8403 Amplifier
OLED Display SSD1306 12864 i2c
Led Stripe
Modul Microfon Senzor Sunet 5V
Tranzistor NPN TIP31 TIP31C TO220
Butoane
Fire
Breadboard
Schema Electrica
Software Design
Funcții Implementate
Pentru controlul ecranului OLED
settings(): Această funcție afișează ecranul de setări. Setările afișate sunt volumul și egalizatorul. Se afișează de asemeana și un side menu pentru navigare.
sideMenu(): Această funcție afișează meniul lateral de navigare pe ecranul OLED.
player(): Această funcție afișează interfața de control al playerului audio pe ecranul OLED. Interfața prezintă opțiuni de nextSong, prevSong si Pause/Resume, alături numărul melodiei curente.
flashPage(): Această funcție afișează un ecran de pornire flash pe ecranul OLED.
drawIcon(const uint8_t* iconName, u8g2_uint_t x, u8g2_uint_t y, uint16_t glyph): Această funcție afișează un pictogramă/iconiță pe ecranul OLED.
refresh(): Această funcție activează rederesanrea ecranului corect la un interval de 1min.
Butoanele de next și prev sunt controlate prin întruperile INT1 și INT2.
Butonul de select este controlat în funcția de loop().
Rezultate Obţinute
Rezultate obținute după etapa Hardware
Concluzii
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună

.
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.
Jurnal
05.04.2023 Alegere temă proiect
14.04.2023 Comandă piese
07.05.2023 Realizare pagină OCW Wiki
07.05.2023 Completare Milestone 1
21.05.2023 Completare Milestone 2
Bibliografie/Resurse
DataSheets
Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.
Export to PDF