Differences

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

Link to this comparison view

pm:prj2026:bianca.popa1106:constantin.baltag [2026/05/15 21:29]
constantin.baltag
pm:prj2026:bianca.popa1106:constantin.baltag [2026/05/15 21:31] (current)
constantin.baltag
Line 12: Line 12:
 ===== Descriere generală ===== ===== Descriere generală =====
 Arhitectura sistemului este formată din trei module principale: Arhitectura sistemului este formată din trei module principale:
-  * **Input:** O tastatură matriceală 4x4 citește notele muzicale și comenzile sistemului (ex. schimbare octavă, schimbare efect). ​Două potențiometre ​de 10kΩ sunt citite ​prin convertorul analog-digital (ADC) pentru a ajusta ​volumul și parametrii efectului activ în timp real. +  ​* **Input:** O tastatură matriceală 4x4 citește notele muzicale și comenzile sistemului (ex. schimbare octavă, schimbare efect). ​Un potențiometru ​de 10kΩ este citit prin convertorul analog-digital (ADC) pentru a ajusta parametrii efectului activ sau pitch-ul ​în timp real. 
-  * **Procesare:​** Microcontrolerul ATmega328P orchestrează întregul sistem. Acesta calculează frecvențele notelor, citește inputurile folosind întreruperi pentru a nu bloca generarea sunetului și aplică algoritmii DSP (ex. buffere de delay în RAM pentru reverb, modulație de frecvență prin timer pentru vibrato). +  * **Procesare:​** Microcontrolerul ATmega328P orchestrează întregul sistem. Acesta calculează frecvențele notelor, citește inputurile folosind întreruperi pentru a nu bloca generarea sunetului și aplică algoritmii DSP (ex. buffere de delay în RAM pentru reverb, modulație de frecvență prin timer pentru vibrato). 
-  * **Output:** Un buzzer pasiv generează semnalul audio folosind semnale Fast PWM. Un ecran LCD TFT SPI ST7735 oferă feedback vizual utilizatorului,​ afișând nota curentă, octava curentă și efectul activ. +  * **Output:** Un buzzer pasiv generează semnalul audio folosind semnale Fast PWM. Un ecran LCD TFT SPI ST7735 oferă feedback vizual utilizatorului,​ afișând nota curentă, octava curentă și efectul activ.
  
 +{{ :​pm:​prj2026:​bianca.popa1106:​schema_bloc_baltag_constantin.jpeg?​600 | Schema Bloc a Sistemului }}
 //Figura 1: Schema Bloc a fluxurilor de date// //Figura 1: Schema Bloc a fluxurilor de date//
-{{ :​pm:​prj2026:​bianca.popa1106:​schema_bloc_baltag_constantin.jpeg?​300 |}} 
- 
  
 ===== Hardware Design ===== ===== Hardware Design =====
 **Listă de componente:​** **Listă de componente:​**
-  * 1 x Arduino Uno (ATmega328P) +  ​* 1 x Arduino Uno (ATmega328P) 
-  * 1 x Tastatură matriceală 4x4 +  * 1 x Tastatură matriceală 4x4 
-  * 1 x LCD TFT SPI ST7735 (240x320 pixeli) +  * 1 x LCD TFT SPI ST7735 (240x320 pixeli) 
-  * 1 x Buzzer pasiv +  * 1 x Buzzer pasiv 
-  * x Potențiometru 10kΩ (Wiper connected to A0 and A1+  * x Potențiometru 10kΩ (Wiper connected to A0) 
-  * 6 x Rezistor 330Ω (pentru protecție fire date LCD) +  * 6 x Rezistor 330Ω (pentru protecție fire date LCD) 
-  * 1 x Baterie 9V + clip +  * 1 x Baterie 9V + clip 
-  * Breadboard și fire de legătură+  * Breadboard și fire de legătură
  
 ==== Schemă Electronică ==== ==== Schemă Electronică ====
Line 48: Line 46:
  
 **Conectare Buzzer pasiv:** **Conectare Buzzer pasiv:**
-* **+** -> Rezistor 330Ω -> **D9** (Pin PWM dedicated ​pentru audio) +  ​* **+** -> Rezistor 330Ω -> **D9** (Pin PWM dedicat ​pentru audio) 
-* **-** -> **GND**+  * **-** -> **GND**
  
 ===== Software Design ===== ===== Software Design =====
 **Biblioteci folosite:** **Biblioteci folosite:**
-  * [[https://​github.com/​adafruit/​Adafruit-GFX-Library|Adafruit GFX]]: O bibliotecă grafică universală. +  ​* [[https://​github.com/​adafruit/​Adafruit-GFX-Library|Adafruit GFX]]: O bibliotecă grafică universală. 
-  * [[https://​github.com/​adafruit/​Adafruit-ST7735-Library|Adafruit ST7735]]: Driver specific pentru cipul ST7735 al ecranului. +  * [[https://​github.com/​adafruit/​Adafruit-ST7735-Library|Adafruit ST7735]]: Driver specific pentru cipul ST7735 al ecranului. 
-  * [[https://​www.arduino.cc/​reference/​en/​language/​functions/​communication/​spi/​|SPI]]:​ Biblioteca nativă pentru comunicarea hardware rapidă.+  * [[https://​www.arduino.cc/​reference/​en/​language/​functions/​communication/​spi/​|SPI]]:​ Biblioteca nativă pentru comunicarea hardware rapidă.
  
 Logica software folosește o buclă principală `loop()` care scanează tastatura și citește ADC-ul. Generarea sunetului se face asincron folosind un Timer pentru a nu bloca execuția graficii. Algoritmii DSP sunt implementați în integer-math pentru a maximiza performanța pe procesorul ATmega328P. Logica software folosește o buclă principală `loop()` care scanează tastatura și citește ADC-ul. Generarea sunetului se face asincron folosind un Timer pentru a nu bloca execuția graficii. Algoritmii DSP sunt implementați în integer-math pentru a maximiza performanța pe procesorul ATmega328P.
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
-  * [[https://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|Datasheet ATmega328P]]+  ​* [[https://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf|Datasheet ATmega328P]]
pm/prj2026/bianca.popa1106/constantin.baltag.txt · Last modified: 2026/05/15 21:31 by constantin.baltag
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