Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
See on äratuskella jaoks juhend. Tegime äratuskella, kuna oleme alati hiljaks jäänud või unustame sageli äratuse seadistamise.
See äratuskell on täiesti automaatne, nii et te ei pea oma äratust seadma. Iga päev saate valida erineva ärkamise aja. Peate üks kord äratusaja määrama ja seejärel käivitub äratus valitud ajal.
Samm: materjalid
1. Arduino
Kasutasime Arduino Unot. Arduino saate arvutiga USB-kaabli abil ühendada. Arduino programmeerimiseks vajate arvutis Arduino Sketch programmi.
2. Reaalajas kell
Reaalajas kell, nimega RTC, on arvutikell. RTC uuendab kellaaega, seega peate kellaaja üks kord määrama. Kasutasime RTC ZS-042
3. Vedelkristallkuvar
Vedelkristallkuvar nimega LCD on ekraan, mille saate ühendada arduinoga.
4. Leivalaud
Elektriahelate valmistamiseks on väga kasulik omada leivaplaati. Arduino juhib iga tihvti.
5. Naiste ja isaste juhtmed
Elektriliste komponentide ühendamiseks saate neid juhtmeid kasutada. Aukude ja tihvtidega saate ühendada isase ja emase juhtmed.
6. Sumin
Signaal teeb teie äratuskellale heli.
7. USB-kaabel
Saate Arduino arvutiga USB-kaabli abil ühendada, et saaksite Arduino programmeerida.
8. 9 -voldine aku
9. Aku klamber
Arduino ühendamiseks 9 -voldise battyga vajate seda klambrit.
10. Lego
Tegime oma kaitsekatte legoga, kuid soovi korral saate valida midagi muud.
Samm: ühendage RTC
RTC ühendamiseks arduinoga vajame RTC -d, Arduinot, leivaplaati, nais- ja isastraate.
Ühendus Arduino
-GND: asetage leivalaua asendisse j12
-8: Asetage leivalaua asendisse j10
Ühendus RTC:
- 32K: koht A5 -l Arduinos
-SQW: koht Vinil Arduinos
- SCL: asetage leivalaua asendisse h30
- SDA: asetage leivalaua asendisse g30
-VCC: ärge seda asetage
-GND: koht GND -s Arduinos
Samm: määrake kellaaeg
Esiteks peate visandis selgitama RTC -d:
#kaasake
DS3231 rtc (SDA, SCL);
Nüüd saate määrata kellaaja:
rtc.begin ();
rtc.setDOW (REEDE); // Määra nädalapäevaks pühapäev
rtc.setTime (15, 49, 0); // Määra kellaajaks 12:00:00 (24h vorming)
rtc.setDate (13, 4, 2018);
Saate oma aega seeriamonitoril kontrollida.
Samm: ühendage LCD -ekraan
Nüüd peate LCD -ekraani ühendama Arduinoga. Me ühendame LCD -ekraanist 4 juhtmest Arduino või leivaplaadiga. Peate juhtmed ühendama järgmiselt:
- GND: asetage GND -sse arduino
- VCC: asetage leivalaua toitepiirde sisse
- SDA: asetage leivalaua asendisse j29
- SCL: asetage leivalaua asendisse f30
Samm: seadistage LCD -ekraan
Peate visandis olevat LCD -d selgitama. Peate seda tegema järgmiselt:
#kaasake
Selles koodi osas selgitatakse, et LCD -ekraanil kuvatakse ekraanil kuupäev ja kellaaeg.
tühine seadistus ()
{lcd.algus (16, 2); jaoks (int i = 0; i <5; i ++) {lcd.noBacklight (); viivitus (500); lcd.taustavalgus (); lcd.print ("Terrorialarm"); viivitus (500); lcd.clear (); }
Samm: ühendage helisignaal
Signaal asetatakse leivalaua tihvti h10 ja tihvti h12 külge. Tooni tähistab sõna ‘toon’. Oma visandis oleme valinud alarmi jaoks selle tooni: toon (10, 440, 200).
Samm: paigaldage alarm
Oleme valinud automaatse äratuskella valmistamise. Äratuskella oleme seadnud esmaspäevast laupäevani. Meil on sageli probleem, et unustame äratuskella seadistamise, see on meie probleemi lahendus. Oleme oma ajakavas kohandanud äratust. Kui äratus läheb, kostab piiks ja ekraan vilgub. See on häirekontrolli kood tühjas silmus:
alarmcheck (); if (t.min == 15 && t.hour == 7) {lcd.noBacklight (); viivitus (5000); lcd.taustavalgus (); toon (10, 440, 200); }}
void alarmcheck () {if (t.min == 15 && t.hour == 7 && rtc.getDOWStr (FORMAT_LONG) == "Esmaspäev") {alarm (); } kui (t.min == 45 && t.tund == 9 && rtc.getDOWStr (FORMAT_LONG) == "teisipäev") {alarm (); } if (t.min == 14 && t.hour == 13 && rtc.getDOWStr (FORMAT_LONG) == "kolmapäev") {alarm (); } kui (t.min == 45 && t.tund == 7 && rtc.getDOWStr (FORMAT_LONG) == "neljapäev") {alarm (); } kui (t.min == 45 && t.tund == 7 && rtc.getDOWStr (FORMAT_LONG) == "reede") {alarm (); } kui (t.min == 15 && t.tund == 9 && rtc.getDOWStr (FORMAT_LONG) == "laupäev") {alarm (); }}
tühine häire () {lcd.noBacklight (); viivitus (1000); lcd.taustavalgus (); jaoks (int i = 0; i <100; i ++) {toon (10, 200*i+200); }}
Kui äratust pole, näete ekraanil kellaaega ja kuupäeva. See on kood:
t = rtc.getTime (); Serial.println (rtc.getDOWStr (FORMAT_LONG)); lcd.setCursor (0, 0); lcd.print ("Aeg:"); lcd.print (rtc.getTimeStr ()); lcd.setCursor (0, 1); lcd.print ("Kuupäev:"); lcd.print (rtc.getDateStr ()); viivitus (1000); lcd.clear ();
Samm: valmistage kaitsekate
Nüüdseks on kõik elektrilised komponendid ühendatud. Ainus, mida vajame, on kaitsekate. Kaitsekatte tegime Legost, kuid saate valida, mida soovite.
Samm: kasutage oma äratuskella
Nüüd on äratuskell kasutamiseks valmis. Selle automaatse äratuskella tõttu ei jää te kunagi hiljaks!