This shows you the differences between two versions of the page.
pm:prj2022:dene:special_player [2022/06/02 00:15] razvan.ghitan [Concluzii] |
pm:prj2022:dene:special_player [2022/06/02 01:02] (current) razvan.ghitan [Surse și poze] |
||
---|---|---|---|
Line 6: | Line 6: | ||
</note> | </note> | ||
===== Introducere ===== | ===== Introducere ===== | ||
- | În cadrul acestui proiect, mi-am propus să creez un dispozitiv multi-use care să îmbine utilitatea și plăcerea de a utiliza un pian, cât și funcționalitatea redării melodiilor preferate de pe un card microSD. De asemenea, în cazul în care utilizatorul dorește să se repete o secvență din piesa favorită, va exista modalitatea de a crea un looper pentru câteva secunde din piesă. | + | În cadrul acestui proiect, mi-am propus să creez un dispozitiv multi-use care să îmbine utilitatea și plăcerea de a utiliza un pian, cât și funcționalitatea redării melodiilor preferate de pe un card microSD. De asemenea, în cazul în care utilizatorul dorește să se repete o secvență din piesa favorită, va exista modalitatea de a crea un looper pentru câteva secunde din piesă și în același timp, opțiunea de a naviga prin lista de piese favorite. |
===== Descriere generală ===== | ===== Descriere generală ===== | ||
Line 16: | Line 16: | ||
== Componente necesare: == | == Componente necesare: == | ||
- | * Arduino UNO / Plusivo | + | * Plusivo board |
* Breadboard | * Breadboard | ||
* Pushbutton switches | * Pushbutton switches | ||
Line 23: | Line 23: | ||
== Schemă electrică: == | == Schemă electrică: == | ||
- | {{ :pm:prj2022:dene:schema_razvan.png?direct&300 |}} | + | {{ :pm:prj2022:dene:schema_razvan_finala.png?direct&300 |}} |
===== Software Design ===== | ===== Software Design ===== | ||
- | |||
- | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | ||
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | ||
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | ||
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | ||
- | * (etapa 3) surse şi funcţii implementate | ||
- | </note> | ||
- | |||
- | |||
- | ===== Concluzii ===== | ||
- | |||
- | |||
- | A fost un proiect destul de interesant și challenging. Am întâmpinat probleme cu piesele și modulele. De asemenea, nu recomand personal dezvoltarea pe o plăcuță Plusivo (Chinese Arduino). A fost mega complicată testarea funcționalităților și încărcarea codului pe plăcuță. În rest, cea mai plăcută activitate pentru o disciplină din ultimul timp. =) | ||
== Biblioteci utilizate: == | == Biblioteci utilizate: == | ||
Line 57: | Line 43: | ||
Pentru redarea sunetelor specifice pianului, am folosit funcția //tone()// și o serie de IF-uri pentru a reda sunetul corespunzător frecvenței notei în funcție de butonul apăsat. | Pentru redarea sunetelor specifice pianului, am folosit funcția //tone()// și o serie de IF-uri pentru a reda sunetul corespunzător frecvenței notei în funcție de butonul apăsat. | ||
+ | |||
+ | Comunicarea cu microSD-ul o realizez cu variabila de tip TMRpcm, căreia îi setez pinul buzzerului și volumul. În //loop()// verific dacă este apăsat vreunul dintre butoanele de control a pieselor. Dacă sunt apăsate butoanele NEXT sau PREV, deplasez iteratorul din lista de fișiere .wav de pe cardul microSD cu o piesă în față sau în spate, după caz. | ||
+ | |||
+ | De asemenea, în funcția //play()// redau suntele specifice piesei curente în funcție de variabila iterator. | ||
+ | |||
+ | Partea de looping audio nu funcționează datorită limitărilor plăcuței. | ||
+ | |||
+ | ===== Surse și poze===== | ||
+ | |||
+ | {{:pm:prj2022:dene:piano_arduino_razvan.zip|}} | ||
+ | |||
+ | {{ :pm:prj2022:dene:poza_circuit_razvan_1.jpeg?direct&300 |}} | ||
+ | |||
+ | {{ :pm:prj2022:dene:poza_circuit_razvan_2.jpeg?direct&300 |}} | ||
+ | ===== Concluzii ===== | ||
+ | |||
+ | |||
+ | A fost un proiect destul de interesant și challenging. Am întâmpinat probleme cu piesele și modulele. De asemenea, nu recomand personal dezvoltarea pe o plăcuță Plusivo (Chinese Arduino). A fost mega complicată testarea funcționalităților și încărcarea codului pe plăcuță. În rest, cea mai plăcută activitate pentru o disciplină din ultimul timp. =) | ||
===== Jurnal ===== | ===== Jurnal ===== | ||
* **02.05.2022**: Creare pagină OCW | * **02.05.2022**: Creare pagină OCW | ||
- | * **04.05.2022**: - | + | * **04.05.2022**: Adăugare informații despre proiect |
* **24.05.2022**: Adăugare schemă electrică în secțiunea //Hardware Design// | * **24.05.2022**: Adăugare schemă electrică în secțiunea //Hardware Design// | ||
- | * **27.05.2022**: Actualizarea secțiunii //Software Design// | + | * **30.05.2022**: Actualizarea secțiunii //Software Design// |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== |