This is an old revision of the document!
Arduino iPod
Introducere
Ce este Arduino iPod?
Arduino iPod este un dispozitiv care reda fisiere audio in format wavelength. Fisierele audio sunt stocate pe un card SD, iar dispozitivul ofera functionalitati de playback similare cu acelea ale unui Music Player obisnuit:
Display LCD pentru a oferi detalii despre melodia curenta
Butoane pentru a trece la fisierul urmator/precedent si pentru a porni/opri playback-ul
Butoane pentru a schimba modul de playback (repeat, shuffle)
Use Case
Dispozitivul ofera posibilitatea de a asculta muzica, podcast-uri si orice alt continut audio, oferind o experienta vintage (in opozitie cu playback de pe telefon/PC) fara sacrificiile aduse de dispozitive de playback mai clasice, cum ar fi spatiu mic de stocare pentru melodii.
Descriere generală
Schema Bloc
Descriere Module
Dispozitivul este implementat pe un Arduino UNO
Fisierele audio se citesc folosing un modul de citit card-uri SD
In absenta cardului SD se va afisa o eroare corespunzatoare
Un ecran LCD I2C afiseaza informatii despre melodia curenta
Redarea audio se face printr-un speaker
Sistemul de playback poate fi controlat folosing 5 butoane (Prev, Next, Start/Stop, Repeat, Shuffle)
Starea initiala a dispozitivului este Paused, asteptand apasarea butonului de Start inainte de redare
Hardware Design
Lista Piese
Arduino
LCD I2C
Card SD
Cititor Card SD
Difuzor
Butoane
Breadboard
Fire
Schema Hardware
Software Design
Componente de Interacțiune cu Sistemul
Funcționalitate Buton Play/Pause
Acest buton pornește/oprește playback-ul melodiei curente. De asemenea, el trebuie apăsat prima oară când pornește dispozitivul pentru a începe redarea primei melodii.
Funcționalitate Buton Next
Acest buton trece la următoarea melodie (determinată în funcție de modurile de Repeat și Shuffle) și pornește sau oprește redarea acesteia (în funcție de modul de Repeat).
Funcționalitate Buton Prev
Acest buton trece la melodia precedentă (determinată în funcție de modurile de Repeat și Shuffle) și pornește sau oprește redarea acesteia (în funcție de modul de Repeat).
Funcționalitate Buton Repeat
Apăsarea acestui buton duce la ciclarea circulară între 3 moduri posibile de Repeat, în ordinea următoare (și revenind la prima când se ajunge la ultima):
No Repeat (default) - În toate cazurile, trecerea la o alta melodie va avea loc, ducând insă la pauzarea playback-ului dacă:
Se apasă Prev, iar melodia curentă este prima melodie
Se apasă Next, iar melodia curentă este ultima melodie
Se termină ultima melodie
Repeat Playlist - În toate cazurile (Prev, Next, se termină melodia curentă) se va trece la o altă melodie, al cărei playback va incepe imediat.
Repeat Song - În toate cazurile (Prev, Next, se termină melodia curentă) va reîncepe melodia curentă.
Funcționalitate Buton Shuffle
Apăsarea acestui buton duce la ciclarea circulară între 2 moduri posibile de Shuffle, în ordinea următoare (și revenind la prima când se ajunge la ultima):
Serial (default) - Melodiile sunt redate în ordinea lexicografică.
Shuffle - Melodiile sunt redate într-o ordine aleatorie, fiecare fiind urmată de una aleasă aleator din lista disponibilă. Apăsarea butoanelor Prev și Next duc la același rezultat, la fel ca terminarea melodiei curente. Funcționalitatea acestui mod nu este afectata de modul de Repeat.
Algoritmul Next Song
// TODO: Add code
ana.are(mere);
Flow de Funcționare
Rezultate Obţinute
Concluzii
Download
Jurnal
Bibliografie/Resurse