This shows you the differences between two versions of the page.
|
pm:prj2026:florin.stancu:ianis.opritescu [2026/05/24 14:30] ianis.opritescu [Interfata Python (piano.py)] |
pm:prj2026:florin.stancu:ianis.opritescu [2026/05/24 14:32] (current) ianis.opritescu [Jurnal] |
||
|---|---|---|---|
| Line 86: | Line 86: | ||
| Citirea celor 5 potentiometre (Attack, Decay, Sustain, Release, Volume) se face prin polling la intervale rare, folosind un contor uint8_t cu overflow natural la 256 iteratii — evitand un timer dedicat. Valorile ADC sunt convertite in rate Q8.8 prin ''calc_rate()'' si aplicate atomic (cu ''cli()/sei()''). | Citirea celor 5 potentiometre (Attack, Decay, Sustain, Release, Volume) se face prin polling la intervale rare, folosind un contor uint8_t cu overflow natural la 256 iteratii — evitand un timer dedicat. Valorile ADC sunt convertite in rate Q8.8 prin ''calc_rate()'' si aplicate atomic (cu ''cli()/sei()''). | ||
| ==== Interfata Python (piano.py) ==== | ==== Interfata Python (piano.py) ==== | ||
| - | Scriptul ''PianoController'' ruleaza pe Linux (Wayland/X11) fara dependinte grafice, folosind **termios raw mode** pentru detectia tastelor cu latenta minima. Un mecanism de **auto-release cu timere per-nota** (''_schedule_release()'') simuleaza key-up din terminal, care nu ofera nativ acest eveniment. Comunicatia seriala este protejata de un ''threading.Lock'', iar un thread daemon dedicat (''serial_reader_thread()'') citeste asincron raspunsurile de la ATmega. | + | Scriptul ''PianoController'' ruleaza pe Linux fara dependinte grafice, folosind **termios raw mode** pentru detectia tastelor cu latenta minima. Un mecanism de **auto-release cu timere per-nota** (''_schedule_release()'') simuleaza key-up din terminal, care nu ofera nativ acest eveniment. Comunicatia seriala este protejata de un ''threading.Lock'', iar un thread daemon dedicat (''serial_reader_thread()'') citeste asincron raspunsurile de la ATmega. |
| <html><a href="https://github.com/ianisopritescu/PM_Soft_Synth">Repo Github cod</a></html> | <html><a href="https://github.com/ianisopritescu/PM_Soft_Synth">Repo Github cod</a></html> | ||
| Line 105: | Line 105: | ||
| </note> | </note> | ||
| - | ===== Jurnal ===== | ||
| - | |||
| - | <note tip> | ||
| - | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | ||
| - | </note> | ||
| ===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||