This shows you the differences between two versions of the page.
pm:prj2024:azamfir:cosmina.mihoreanu [2024/05/27 00:35] cosmina.mihoreanu |
pm:prj2024:azamfir:cosmina.mihoreanu [2024/05/27 15:44] (current) cosmina.mihoreanu |
||
---|---|---|---|
Line 78: | Line 78: | ||
**Periferice** | **Periferice** | ||
- | * display: conectat prin SPI și acționat prin bibliotecile Adafruit pentru grafică; se configurează inițial culorile și orientarea, după care la fiecare piesa este re-randat întreg ecranul; | + | * **display:** conectat prin SPI și acționat prin bibliotecile Adafruit pentru grafică; se configurează inițial culorile și orientarea, după care la fiecare piesa este re-randat întreg ecranul; |
- | * butoane: butoanele sunt setate pe modul INPUT_PULLUP, și li se atașează întreruperi care modifică în true flag-urile corespunzătoare, care vor fi verificate în main loop; este implementat și un debounce software, prin setarea unui timp minim de apăsare între apăsări succesive valide; | + | * **butoane:** butoanele sunt setate pe modul INPUT_PULLUP, și li se atașează întreruperi care modifică în true flag-urile corespunzătoare, care vor fi verificate în main loop; este implementat și un debounce software, prin setarea unui timp minim de apăsare între apăsări succesive valide; |
- | * rotary encoder: pinii sunt configurați pentru INPUT, respectiv INPUT_PULLUP în cazul pinului de switch care expune funcționalitatea de push-button; se atașează o întrerupere pe pinul CLK, care se declanșează atunci cand encoderul este rotit, iar citirea digitală a pinului DT indică direcția de rotire, după care se modifică variabila globală **volume**. | + | * **rotary encoder:** pinii sunt configurați pentru INPUT, respectiv INPUT_PULLUP în cazul pinului de switch care expune funcționalitatea de push-button; se atașează o întrerupere pe pinul CLK, care se declanșează atunci cand encoderul este rotit, iar citirea digitală a pinului DT indică direcția de rotire, după care se modifică variabila globală **volume**; |
+ | * **senzor sunet:** atunci câand este activat modul de auto-volume (prin buton), este citită cu o rezoluție de 12 biți valoarea pinul Analog Output a senzorului, si transformată într-o valoare a volumului; astfel, plaja de valori 960 - 1045 este mapată la intervalul 100 - 0 pentru volum; doar atunci cand se detectează variații de volum de minim 10 unități se trasnmite schimbarea către Spotify. | ||
**Timer** | **Timer** | ||
Line 114: | Line 115: | ||
* 24 mai - completat documentație milestone 3 (software) + funcționare parțială | * 24 mai - completat documentație milestone 3 (software) + funcționare parțială | ||
* 26 mai - upload demo + rezultate + github | * 26 mai - upload demo + rezultate + github | ||
+ | * 27 mai - GitHub public după git rebase + push --force pentru a scoate client_secret (pentru Spotify API) din commit-uri vechi | ||
</note> | </note> | ||
Line 121: | Line 123: | ||
[[https://www.epitran.it/ebayDrive/datasheet/25.pdf|Rotary Encoder Datasheet]] | [[https://www.epitran.it/ebayDrive/datasheet/25.pdf|Rotary Encoder Datasheet]] | ||
+ | |||
+ | [[https://www.youtube.com/watch?v=ZFqVvDtgLLU|ST7789 Display Pinout and Tutorial]] | ||
[[https://lastminuteengineers.com/handling-esp32-gpio-interrupts-tutorial/#google_vignette|ESP32 Button Intrerrupts Tutorial]] | [[https://lastminuteengineers.com/handling-esp32-gpio-interrupts-tutorial/#google_vignette|ESP32 Button Intrerrupts Tutorial]] |