This shows you the differences between two versions of the page.
pm:prj2023:ndrogeanu:rfidbasedalarmclock [2023/05/30 10:13] 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 71: | Line 71: | ||
* 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. | + | * 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 ===== |