Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2024:azamfir:cosmina.mihoreanu [2024/05/27 12:07]
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 122: 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]]
pm/prj2024/azamfir/cosmina.mihoreanu.1716800857.txt.gz · Last modified: 2024/05/27 12:07 by cosmina.mihoreanu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0