This shows you the differences between two versions of the page.
|
pm:prj2024:alucaci:teofil.padurariu [2024/05/23 00:41] teofil.padurariu [Descriere] |
pm:prj2024:alucaci:teofil.padurariu [2024/05/23 00:54] (current) teofil.padurariu [Bibliografie] |
||
|---|---|---|---|
| Line 44: | Line 44: | ||
| {{:pm:prj2024:alucaci:guitar_tuner_hardware.jpg?700|}} | {{:pm:prj2024:alucaci:guitar_tuner_hardware.jpg?700|}} | ||
| ===== Implementare Software ===== | ===== Implementare Software ===== | ||
| - | ==== Descriere ==== | ||
| Este un proiect software-heavy. | Este un proiect software-heavy. | ||
| - | === INPUTUL ȘI PROCESAREA SA === | + | ==== INPUTUL ȘI PROCESAREA SA ==== |
| Core-ul tunerului este Arduino Nano. Pe pinul A0 vor veni datele de la microfonul cu ajutorul căruia se captează semnalul analogic generat de vibrația corzii de chitară. Pentru a putea prelucra semnalul de intrare, este necesară eșantionarea acestuia de către ADC. | Core-ul tunerului este Arduino Nano. Pe pinul A0 vor veni datele de la microfonul cu ajutorul căruia se captează semnalul analogic generat de vibrația corzii de chitară. Pentru a putea prelucra semnalul de intrare, este necesară eșantionarea acestuia de către ADC. | ||
| Line 53: | Line 52: | ||
| index_nota | index_nota | ||
| - | === BIBLIOTECI EXTERNE === | + | ==== BIBLIOTECI EXTERNE ==== |
| Pentru implementarea tuner-ului, am folosit 2 biblioteci externe: | Pentru implementarea tuner-ului, am folosit 2 biblioteci externe: | ||
| * arduinoFFT: [[https://github.com/kosme/arduinoFFT|GitHub]] | * arduinoFFT: [[https://github.com/kosme/arduinoFFT|GitHub]] | ||
| Line 146: | Line 145: | ||
| Pentru schimbarea culorii LED-ului am folosit **labul de GPIO**. | Pentru schimbarea culorii LED-ului am folosit **labul de GPIO**. | ||
| - | === CALIBRARE + OPTIMIZARE COD === | + | ==== CALIBRARE + OPTIMIZARE COD ==== |
| - | Pentru că nu am avut hardwareul necesar să măresc buffer sizeul pentru rezultate mai accurate, am făcut o funcție care întoarce erorile specifice pentru anumite range-uri de frecvențe (le-am determinat experimental): | + | Pentru că nu am avut hardware-ul necesar să măresc buffer sizeul pentru rezultate mai accurate, am făcut o funcție care întoarce erorile specifice pentru anumite range-uri de frecvențe (le-am determinat experimental): |
| <code> | <code> | ||
| Line 164: | Line 163: | ||
| } | } | ||
| </code> | </code> | ||
| + | |||
| + | ===== Download ===== | ||
| + | {{:pm:prj2024:alucaci:guitar_tuner.zip|}} | ||
| + | |||
| + | ===== Bibliografie ===== | ||
| + | * FFT: [[https://en.wikipedia.org/wiki/Fast_Fourier_transform#:~:text=A%20Fast%20Fourier%20Transform%20(FFT,frequency%20domain%20and%20vice%20versa. | see]] | ||
| + | * FFT Windowing: [[https://download.ni.com/evaluation/pxi/Understanding%20FFTs%20and%20Windowing.pdf|see]] | ||
| + | * ATMega328P: [[https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf | see]] | ||
| + | * LCD: [[https://www.openhacks.com/uploadsproductos/eone-1602a1.pdf | see]] | ||
| + | * LED RGB: [[https://datasheetspdf.com/datasheet/KY-016.html|see]] | ||