This shows you the differences between two versions of the page.
pm:prj2024:ccontasel:ana_maria.diaconu02 [2024/05/27 08:02] ana_maria.diaconu02 [Software Design] |
pm:prj2024:ccontasel:ana_maria.diaconu02 [2024/05/27 09:19] (current) ana_maria.diaconu02 [Rezultate obținute] |
||
---|---|---|---|
Line 107: | 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 142: | 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 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. | + | 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. | + | 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. | + | 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. | + | 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. | + | 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 ===== | ||