This shows you the differences between two versions of the page.
pm:prj2021:avaduva:ceasalarma [2021/06/02 13:44] roxana.scurtu |
pm:prj2021:avaduva:ceasalarma [2021/06/02 18:03] (current) roxana.scurtu |
||
---|---|---|---|
Line 37: | Line 37: | ||
{{:pm:prj2021:avaduva:blank_diagram.png?550|}} | {{:pm:prj2021:avaduva:blank_diagram.png?550|}} | ||
+ | **Update: | ||
+ | N-am mai foosit baterie, cum am decis initial si am conectat prin usb placuta la pc-ul meu | ||
Line 48: | Line 49: | ||
* | * | ||
* | * | ||
+ | ==Cum functioneaza?== | ||
+ | Am folosit un Breadboard, pentru ca nu aveam pe placuta suficienti pini pentru toate componentele. | ||
+ | Prin intermediul modulului RTC- real time clock preiau ora si data exacta, folosindu-ma de libraria DS1302 | ||
+ | LCD-ul ales de mine are modulul I2C integrat, l-as fi putut folosi si pe cel fara modul integrat, dar doar pe acesta l-am mai gasit disponibil. | ||
+ | Interfata I2C are 4 pini, i am conectat direct la arduiono. | ||
+ | By default LCD-ul afiseaza ora si data exacta pe care le ia prin intermediul modulului RTC. | ||
+ | In momentul in care doresc sa setez alarma, apas pe primul buton si imi va intra in modul de setare al alarmei, afisandu-mi pe display : | ||
+ | hour= ? , min=? pe care le pot seta de pe al 2-lea si al 3-lea buton.Prin intermediul celui de-al 4-lea buton ies din modul de setare al alarmei si voi avea alarma setata. | ||
+ | Daca de exemplu am setat alarma in 3h 5m, cand se va scurge timpul, buzzer ul se va activa printr-un feedback sonor. | ||
Line 61: | Line 71: | ||
<code> | <code> | ||
+ | |||
+ | |||
+ | //am inclus biblioteca 12C si cea pt rtc(DS1302.h) | ||
#include <Wire.h> | #include <Wire.h> | ||
Line 70: | Line 83: | ||
int Hour; | int Hour; | ||
int Min; | int Min; | ||
+ | |||
+ | //am setat pinii - in functie de cum i am pus eu pe placuta | ||
int pset = 8; // pushbutton for setting alarm | int pset = 8; // pushbutton for setting alarm | ||
int phour = 9; // pushbutton for hour | int phour = 9; // pushbutton for hour | ||
Line 77: | Line 92: | ||
int h; | int h; | ||
int m; | int m; | ||
+ | |||
+ | //Am definit starea butoanelor | ||
+ | |||
+ | |||
int buttonforset = 0; // pushbutton state for setting alarm | int buttonforset = 0; // pushbutton state for setting alarm | ||
int buttonforhour = 0; // pushbutton state for hour | int buttonforhour = 0; // pushbutton state for hour | ||
Line 85: | Line 104: | ||
// Init the DS1302 | // Init the DS1302 | ||
+ | //pinii de pe placuta | ||
+ | |||
DS1302 rtc(2, 3, 4); | DS1302 rtc(2, 3, 4); | ||
Line 100: | Line 121: | ||
lcd.begin(); | lcd.begin(); | ||
- | // The following lines can be commented out to use the values already stored in the DS1302 | + | // le putem decomenta daca vrem sa folosim valorile deja existente in DS1302 |
//rtc.setDOW(SATURDAY); // Set Day-of-Week to FRIDAY | //rtc.setDOW(SATURDAY); // Set Day-of-Week to FRIDAY | ||
//rtc.setTime(10, 0, 0); // Set the time to 12:00:00 (24hr format) | //rtc.setTime(10, 0, 0); // Set the time to 12:00:00 (24hr format) | ||
Line 178: | Line 199: | ||
</code> | </code> | ||
+ | |||
+ | ==REZULTATE== | ||
+ | [[https://www.youtube.com/watch?v=0oWU8FnWFjw|rezultat clip]] | ||
+ | |||
+ | ==CONCLUZII== | ||
+ | A fostun proiect interesant, singurele probleme pe care le-am intampinat au fost cu arduino- programul instalat, avand diferite probleme cu fisierele si cu setarile, dar ciecuitul si codul nu mi-au dat batai de cap. | ||
+ | |||
+ | ==BIBLIOGRAFIE== | ||
+ | [[pm:prj2021:avaduva:ceasalarma|lpdfproiect]] | ||
+ | |||
+ | https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library | ||
+ | https://www.arduino.cc/reference/en/libraries/ds3231/ | ||
+ | https://howtomechatronics.com/tutorials/arduino/arduino-ds3231-real-time-clock-tutorial/ | ||
+ |