This shows you the differences between two versions of the page.
pm:prj2024:ccontasel:ana_maria.diaconu02 [2024/05/27 07:53] ana_maria.diaconu02 [Descriere generală] |
pm:prj2024:ccontasel:ana_maria.diaconu02 [2024/05/27 09:19] (current) ana_maria.diaconu02 [Rezultate obținute] |
||
---|---|---|---|
Line 59: | Line 59: | ||
{{:pm:prj2024:ccontasel:sch_elec_amd.png?700 |}} | {{:pm:prj2024:ccontasel:sch_elec_amd.png?700 |}} | ||
<note important>Mod de conectare pini</note> | <note important>Mod de conectare pini</note> | ||
- | **Arduino Uno:** 5V și GND (masa): Acești pini sunt folosiți pentru a alimenta alte componente care necesită 5V. | + | **Arduino Uno:** |
+ | |||
+ | 5V și GND (masa): Acești pini sunt folosiți pentru a alimenta alte componente care necesită 5V. | ||
**Display LCD:** | **Display LCD:** | ||
+ | |||
VCC la 5V de pe Arduino pentru alimentare. | VCC la 5V de pe Arduino pentru alimentare. | ||
+ | |||
GND la GND de pe Arduino. | GND la GND de pe Arduino. | ||
+ | |||
SDA la pinul A4 (SDA) pe Arduino. | SDA la pinul A4 (SDA) pe Arduino. | ||
+ | |||
SCL la pinul A5 (SCL) pe Arduino. | SCL la pinul A5 (SCL) pe Arduino. | ||
**Buzzer:** | **Buzzer:** | ||
+ | |||
Un pin se conectează la pinul digital 2 pe Arduino | Un pin se conectează la pinul digital 2 pe Arduino | ||
+ | |||
Celălalt pin se conectează la GND. | Celălalt pin se conectează la GND. | ||
**Modul de citire card SD:** | **Modul de citire card SD:** | ||
+ | |||
CS (Chip Select) - pinul 10 | CS (Chip Select) - pinul 10 | ||
+ | |||
MOSI (Master Out Slave In)- pinul 11. | MOSI (Master Out Slave In)- pinul 11. | ||
+ | |||
MISO (Master In Slave Out) - pinul 12. | MISO (Master In Slave Out) - pinul 12. | ||
+ | |||
SCK (Serial Clock) - pinul 13. | SCK (Serial Clock) - pinul 13. | ||
+ | |||
VCC se conectează la 5V. | VCC se conectează la 5V. | ||
Line 94: | Line 107: | ||
</note> | </note> | ||
=== Descrierea functiilor === | === Descrierea functiilor === | ||
+ | <note tip> | ||
1. setup() | 1. setup() | ||
Această funcție este apelată o singură dată la pornirea microcontrolerului. În aceasta: | Această funcție este apelată o singură dată la pornirea microcontrolerului. În aceasta: | ||
Line 129: | Line 142: | ||
Afișează nota corespunzătoare pe LCD. | Afișează nota corespunzătoare pe LCD. | ||
Dacă apăsarea a fost destul de lungă și pentru butonul specific, poate iniția redarea unei melodii de pe SD. | Dacă apăsarea a fost destul de lungă și pentru butonul specific, poate iniția redarea unei melodii de pe SD. | ||
+ | </note> | ||
+ | |||
+ | <note important> Mai jos se regăsesc conceptele software folosite</note> | ||
+ | <note tip> | ||
+ | |||
+ | 1. **SPI** (Serial Peripheral Interface): Aceasta este folosită implicit prin includerea bibliotecii <SPI.h> și utilizarea modulului SD, care comunica prin protocolul SPI cu microcontrolerul. | ||
+ | |||
+ | 2. **I2C** (Inter-Integrated Circuit): Utilizarea unui display LCD cu control I2C (LiquidCrystal_I2C lcd(0x27, 16, 2);), care se bazează pe comunicația I2C pentru a trimite comenzi și date către display. | ||
+ | |||
+ | 3.** UART** (Universal Asynchronous Receiver/Transmitter): Comunicarea serială prin Serial.begin(9600); este un exemplu de utilizare UART, unde microcontrolerul trimite datele la un terminal sau la un alt dispozitiv pentru debug sau afișare. | ||
+ | |||
+ | 4. **GPIO** (General Purpose Input/Output): Se utilizează pentru citirea stării butoanelor și controlul buzzerului. Pinii sunt setați ca intrări pentru butoane cu rezistențe de pull-up și ca ieșire pentru buzzer. | ||
+ | |||
+ | 5. **Timere**: Utilizarea funcției millis() pentru a măsura intervalul de timp în care un buton este apăsat și pentru a determina când să actualizeze afișajul LCD este un exemplu de utilizare a timerelor interne ale microcontrolerului. | ||
+ | </note> | ||
===== Rezultate obținute ===== | ===== Rezultate obținute ===== | ||
+ | <note tip> Modul de functionare al proiectului se poate vedea in videoclipul de mai jos</note> | ||
+ | <html> <iframe width="640" height="360" src="https://youtube.com/embed/shorts/eAchCWtF-4E" title="Proiect PM Pian Digital" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe> </html> | ||
===== Concluzii ===== | ===== Concluzii ===== | ||