This shows you the differences between two versions of the page.
|
pm:prj2023:ndrogeanu:rfidbasedalarmclock [2023/05/30 10:07] lavinia.barbu1512 [Software Design] |
pm:prj2023:ndrogeanu:rfidbasedalarmclock [2023/05/30 11:30] (current) lavinia.barbu1512 [Software Design] |
||
|---|---|---|---|
| Line 61: | Line 61: | ||
| Sunt definiti pini pentru cititorul RFID, buzzerul pasiv, afișajul cu 7 segmente și receptorul IR. | Sunt definiti pini pentru cititorul RFID, buzzerul pasiv, afișajul cu 7 segmente și receptorul IR. | ||
| - | **Variabile globale**: Variabile pentru stocarea timpului de alarmă, timpului curent, vitezei melodiei. | + | **Variabile globale**: Variabile pentru stocarea timpului de alarmă, timpului curent, vitezei melodiei, luminozității afișajului, etc. |
| **Funcția de setup()**: | **Funcția de setup()**: | ||
| Line 72: | Line 72: | ||
| * Afișează timpul de alarmă setat pe afișajul cu 7 segmente. | * Afișează timpul de alarmă setat pe afișajul cu 7 segmente. | ||
| * Ascultă semnalele IR folosind receptorul IR pentru a seta timpul de alarmă. | * Ascultă semnalele IR folosind receptorul IR pentru a seta timpul de alarmă. | ||
| + | * Când butonul "power" de pe telecomanda IR este apăsat, setează timpul de alarmă în funcție de semnalul IR primit. | ||
| + | * Când butonul "stop" de pe telecomanda IR este apăsat, pornește numărătoarea inversă a alarmei. | ||
| * În interiorul buclei de numărătoare inversă a alarmei, verifică dacă timpul a expirat sau dacă cititorul RFID detectează o carte. | * În interiorul buclei de numărătoare inversă a alarmei, verifică dacă timpul a expirat sau dacă cititorul RFID detectează o carte. | ||
| * Dacă timpul a expirat, redă melodia temei Mario folosind buzzerul pasiv. | * Dacă timpul a expirat, redă melodia temei Mario folosind buzzerul pasiv. | ||
| Line 79: | Line 81: | ||
| * translateIR() - Traduce semnalul IR primit într-o funcție specifică. | * translateIR() - Traduce semnalul IR primit într-o funcție specifică. | ||
| + | * Display() și Display_once() - Funcții pentru afișarea valorilor de timp pe afișajul cu 7 segmente. | ||
| * timeToNum() - Converteste orele și minutele într-un număr de 4 cifre în scopuri de afișare. | * timeToNum() - Converteste orele și minutele într-un număr de 4 cifre în scopuri de afișare. | ||
| * convert() - Converteste cifrele individuale din semnalul IR în valorile lor întregi corespunzătoare. | * convert() - Converteste cifrele individuale din semnalul IR în valorile lor întregi corespunzătoare. | ||
| * buzz() - Redă o notă muzicală specifică pe buzzerul pasiv pentru o durată dată. | * buzz() - Redă o notă muzicală specifică pe buzzerul pasiv pentru o durată dată. | ||
| - | |||
| - | |||
| ===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
| Line 93: | Line 94: | ||
| ===== Concluzii ===== | ===== Concluzii ===== | ||
| + | A fost un proiect interesant de unde am invatat foarte multe lucruri. Sunt extrem de încântată că proiectul a atins obiectivele pe care mi le-am propus de la bun început. În plus, am dobândit mult mai multă experiență cu mediul de dezvoltare Arduino. ^_^ | ||
| ===== Download ===== | ===== Download ===== | ||
| + | <note> | ||
| + | În arhiva atașată se poate găsi și un demo. 8-) | ||
| {{:pm:prj2023:ndrogeanu:alarmadeceas.zip|}} | {{:pm:prj2023:ndrogeanu:alarmadeceas.zip|}} | ||
| + | </note> | ||
| ===== Jurnal ===== | ===== Jurnal ===== | ||