Differences

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

Link to this comparison view

pm:prj2025:avaduva:andrei.diaconu1410 [2025/05/26 02:34]
andrei.diaconu1410 [Software Design]
pm:prj2025:avaduva:andrei.diaconu1410 [2025/05/28 14:22] (current)
andrei.diaconu1410 [Software Design]
Line 110: Line 110:
 Aceasta trece de la starea MANUAL la LOADING sau de la starea LOADING, PLAYING_SD la MANUAL. Aceasta trece de la starea MANUAL la LOADING sau de la starea LOADING, PLAYING_SD la MANUAL.
 Este implementata si debouncing pentru a evita treceri multiple intre stari la o singura apasare a butonului. Este implementata si debouncing pentru a evita treceri multiple intre stari la o singura apasare a butonului.
 +Totodata la apasarea de 2 ori a butonului sistemul trece in **teaching mode** atunci cand reda fisiere, reducand viteza de redare a fisierului si afisand informatii despre note pe ecran.
  
 Functia **showNoteName()** calculeaza numele si octava notei primite si le afiseaza pe ecran. Functia **showNoteName()** calculeaza numele si octava notei primite si le afiseaza pe ecran.
Line 116: Line 117:
   * PWM: pentru a genera semnalul audio.   * PWM: pentru a genera semnalul audio.
   * Interupt: pentru a schimba starea sistemului la apasarea butonului.   * Interupt: pentru a schimba starea sistemului la apasarea butonului.
-  * SPI: pentru a comunica cu cardul SD si a citi fisierele MIDI.+  * USART: pentru a primi comenzi de la clapa.
  
  
-{{:​pm:​prj2025:​avaduva:​diaconuandrei_synth.zip| cod sursa}} +{{:​pm:​prj2025:​avaduva:​diaconuandrei_synth1.zip| cod sursa}} 
 +[[https://​www.youtube.com/​watch?​v=0_4VnZYQpdc|demo]]
 <note tip> <note tip>
 Descrierea codului aplicaţiei (firmware): Descrierea codului aplicaţiei (firmware):
Line 130: Line 131:
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
 +
  
 <note tip> <note tip>
Line 136: Line 138:
  
 ===== Concluzii ===== ===== Concluzii =====
 +Desi nu am putut implementa de la 0 citirea fisierelor midi, proiectul m-a ajutat sa invat mai mult despre acest protocol si despre cum functioneaza clapa digitala. Am învatat cum sunt interpretate comenzile MIDI și cum acestea pot fi folosite pentru a genera sunete în timp real. De asemenea, am avut ocazia sa experimentez cu un filtru trece-jos RC si sa reusesc sa trec peste bug-uri hardware.
 ===== Download ===== ===== Download =====
  
pm/prj2025/avaduva/andrei.diaconu1410.1748216055.txt.gz · Last modified: 2025/05/26 02:34 by andrei.diaconu1410
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