Differences

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

Link to this comparison view

pm:prj2023:vstoica:electric-guitar-tuner [2023/05/26 22:07]
ion.calugaritoiu
pm:prj2023:vstoica:electric-guitar-tuner [2023/05/28 18:34] (current)
ion.calugaritoiu [Rezultate Obţinute]
Line 69: Line 69:
 Implementarea se bazeaza pe cea amintita anterior, fiind adaptata la cerintele pe care trebuie sa le indeplineasca acordorul: detectia corzii lovite, afisarea si compararea frecventei corzii pe LCD. Implementarea se bazeaza pe cea amintita anterior, fiind adaptata la cerintele pe care trebuie sa le indeplineasca acordorul: detectia corzii lovite, afisarea si compararea frecventei corzii pe LCD.
  
 +Pentru a citi si prelucra semnalul de pe pin-ul analogic A0, a fost nevoie sa gasesc o metoda pentru a mari sampling rate-ul microcontroller-ului. Daca as fi folosit functia de analogRead, sample rate ul ar fi fost limitat la 8000Hz, fiind insuficient pentru aplicatii audio high definition.
 +
 +Metoda prezentata in link-ul de mai sus este foarte eficienta, marind sampling rate-ul la 38.5kHz (foarte aproape de standardul minim de 40Khz).
 +
 +  * Practic, în funcția setup() am configurat Arduino-ul pentru a masura continuu pinul A0 și să uite de celelalte intrări analogice. Variabila numită "​ADCH"​ este cea care actualizata cu noile valori de la A0.
 +
 +  * Am setat contorul ADC la 500kHz deoarece ADC-ul are nevoie de 13 cicluri de ceas pentru a citi o nouă valoare analogică. ​ 500/13 =~ 38,5kHz.
 +
 +  * A trebuit să reduc puțin rezoluția măsurătorilor analogice pentru a mari sampling-rate-ul. analogRead() returneaza valori intre 0 și 1023, acum aceste valori vor fi întotdeauna între 0 și 255.
 +
 +  * Folosesc si o rutina de intrerupere pentru a updata variabila in care memorez input-ul ("​newData"​);​ Rutina este apelata doar cand o valoare noua este citita.
 +
 +
 +Codul se gaseste in arhiva din sectiunea de descarcari.
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
Line 76: Line 90:
 {{:​pm:​prj2023:​vstoica:​doi.jpeg?​600|}} {{:​pm:​prj2023:​vstoica:​doi.jpeg?​600|}}
 {{:​pm:​prj2023:​vstoica:​trei.jpeg?​600|}} {{:​pm:​prj2023:​vstoica:​trei.jpeg?​600|}}
 +{{:​pm:​prj2023:​vstoica:​123.jpeg?​600|}}
 +{{:​pm:​prj2023:​vstoica:​1234.jpeg?​600|}}
 +{{:​pm:​prj2023:​vstoica:​12345.jpeg?​600|}}
 ===== Concluzii ===== ===== Concluzii =====
  
pm/prj2023/vstoica/electric-guitar-tuner.1685128020.txt.gz · Last modified: 2023/05/26 22:07 by ion.calugaritoiu
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