Orodha ya maudhui:
Video: Saa ya usahihi: 3 Hatua
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:50
Sisi sote tunahitaji saa kwa nini usijitengenezee mwenyewe katika hii inayoweza kufundishwa nitakuonyesha jinsi ya kutengeneza Saa ya usahihi mara tu utakapoweka itafuatilia moja kwa moja wakati wa sasa nyuma ya kila kitu. Wakati pia inahitaji vifaa vichache tu na kutengenezea sifuri.
Vifaa
Kwanza, utahitaji Arduino lakini Arduino yoyote itafanya kazi
Ifuatayo, utahitaji urval wa waya za kawaida za kuruka.
2 12mm Sparkfun Pushbutton Swichi
Bodi ya mkate ya jadi
na kuonyesha LCD 1602 16
Hatua ya 1: Wiring
Ili saa hii ifanye kazi unahitaji waya kwa njia maalum sana au sivyo utapata idadi kubwa ya nambari kwenye skrini badala ya wakati.
Hatua ya 2: Kanuni
Kwa kuwa hatutumii RTC sisi nambari hiyo itakuwa ndefu kidogo lakini nashukuru nimefanya kazi ngumu kwako na kuipatia hapa.
Nakili tu na Bandika hii katika Arduino IDE au Mhariri wa wavuti.
# pamoja na "LiquidCrystal.h"
// Hii inafafanua wiring ya LCD kwa DIGITALpins const int rs = 2, en = 3, d4 = 4, d5 = 5, d6 = 6, d7 = 7; LiquidCrystal LCD (rs, sw, d4, d5, d6, d7);
// Mpangilio wa LCD ya Dijitali ya Int cs = 9; // pini 9 kwa kulinganisha PWM const int kulinganisha = 100;
// onyesho la wakati wa kwanza ni 12:59:45 PM int h = 12; int m = 59; int s = 45; bendera = 1; // PM
// Vifungo vya Kuweka Saa wakati kifungo1; kifungo cha int2;
// Ufafanuzi wa pini kwa vifungo vya kuweka wakati int hs = 0; // pini 0 kwa Saa Kuweka int ms = 1;
// Mwangaza wa Muda wa Kuondoka const int Time_light = 150; int bl_TO = Muda_mwangaza; // Muda wa Mwangaza wa Mwangaza int bl = 10; // Pini ya mwangaza const int backlight = 120; // hakuna tena basi 7mA !!!
// Kwa kusoma Saa sahihi, tumia Saa ya Saa ya Arduino na sio tu kuchelewesha () tuli uint32_t last_time, sasa = 0; // RTC
kuanzisha batili () {lcd.anza (16, 2); pinMode (hs, INPUT_PULLUP); kwenye Backlight sasa = millis (); // soma thamani ya awali ya RTC}
kitanzi batili () {lcd. anza (16, 2); lcd.print ("Wakati"); ikiwa (h <10) lcd.print ("0"); // kila siku nambari 2 lcd.print (h); lcd.print (":"); ikiwa (m <10) lcd.print ("0"); lcd.print (m); lcd.print (":"); ikiwa (s <10) lcd.print ("0"); lcd.print (s);
ikiwa (bendera == 0) lcd.print ("AM"); ikiwa (bendera == 1) lcd.print ("PM"); lcd.setCursor (0, 1); // kwa Line 2 lcd.print ("Saa ya usahihi");
// uboreshaji wa ucheleweshaji wa kuboreshwa (1000) // Usahihi zaidi, hautegemei zaidi wakati wa utekelezaji wa kitanzi
kwa (int i = 0; i <5; i ++) // fanya kitanzi mara 5 200ms, kwa majibu ya Kitufe haraka {
wakati ((sasa -mwisho_muda- wa mwisho) <200) // delay200ms {now = millis (); } // kitanzi cha ndani cha 200ms last_time = sasa; // jiandae kwa kitanzi kijacho
// soma vifungo vya Kuweka vifungo1 = kusoma kwa dijiti (hs); // Soma vifungo kifungo 2 = dijitiSoma (ms);
// Muda wa mwanga hautapita bl_TO--; ikiwa (bl_TO == 0) {analogWrite (bl, 0); } // Piga yoyote ili kuamilisha Mwangaza wa Mwangaza ikiwa (((button1 == 0) | (button2 == 0)) & (bl_TO == 1)) {bl_TO = Time_light; Andika Analog (bl, backlight); // subiri mpaka Button itolewe wakati ((button1 == 0) | (button2 == 0)) {button1 = digitalRead (hs); // Read Buttons button2 = digitalRead (ms); }} mwingine // Kitufe cha Mchakato 1 au Kitufe 2 wakati unapigwa wakati Mwangaza wa Mwangaza ukiwa {if (button1 == 0) {h = h + 1; bl_TO = Mwangaza_ wa Saa; Andika Analog (bl, backlight); }
ikiwa (kifungo2 == 0) {s = 0; m = m + 1; bl_TO = Mwangaza_ wa Saa; Andika Analog (bl, backlight); }
/ * ---- simamia sekunde, dakika, masaa asubuhi / jioni kufurika ---- * / if (s == 60) {s = 0; m = m + 1; } ikiwa (m == 60) {m = 0; h = h + 1; } ikiwa (h == 13) {h = 1; bendera = bendera + 1; ikiwa (bendera == 2) bendera = 0; }
ikiwa ((button1 == 0) | (button2 == 0)) // Sasisha onyesho ikiwa kitufe cha kuweka wakati kimeshinikizwa {// Sasisha Uonyesho wa LCD // Chapisha MUDA katika Saa, Min, Sec + AM / PM lcd.setCursor (0, 0); lcd.print ("Wakati"); ikiwa (h <10) lcd.print ("0"); // kila siku nambari 2 lcd.print (h); lcd.print (":"); ikiwa (m <10) lcd.print ("0"); lcd.print (m); lcd.print (":"); ikiwa (s <10) lcd.print ("0"); lcd.print (s);
ikiwa (bendera == 0) lcd.print ("AM"); ikiwa (bendera == 1) lcd.print ("PM"); lcd.setCursor (0, 1); // kwa Line 2 lcd.print ("Saa ya usahihi"); }
} // mwisho ikiwa ni nyingine} // mwisho wa
// kitanzi cha nje cha 1000ms
s = s + 1; // nyongeza sec. kuhesabu // ---- kusimamia sekunde, dakika, masaa asubuhi / jioni kufurika ---- ikiwa (s == 60) {s = 0; m = m + 1; } ikiwa (m == 60) {m = 0; h = h + 1; } ikiwa (h == 13) {h = 1; bendera = bendera + 1; ikiwa (bendera == 2) bendera = 0; }
// Mwisho wa kitanzi}
Hatua ya 3: Mpangilio (Hii sio Hatua Kweli)
Ikiwa mtu yeyote anayesoma hii ni mtaalam wa teknolojia hapa pia ni skimu ambayo unaweza kuiangalia kuwa wazimu.
Furahiya na uburudike na zaidi ya yote kaa safi.
Ilipendekeza:
Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Hatua 14 (na Picha)
Utunzaji wa saa - Jinsi ya Kuunda Saa Iliyotengenezwa Kutoka kwa Saa !: Halo wote! Huu ni maoni yangu kwa Mashindano ya Mwandishi wa Mara ya Kwanza ya 2020! Ikiwa unapenda mradi huu, ningethamini sana kura yako :) Asante! Hii inayoweza kufundishwa itakuongoza kupitia mchakato wa kujenga saa iliyotengenezwa na saa! Nimeita kwa ujanja
Kuweka DS3231 RTC (Saa Saa Saa) Sahihi, Haraka na Kujiendesha Kutumia Java (+ -1s): Hatua 3
Kuweka DS3231 RTC (Saa Saa Saa) Sahihi, Haraka na Kujiendesha Moja kwa Moja Kutumia Java (+ -1s): Hii inayoweza kufundishwa itaonyesha jinsi ya kuweka wakati kwenye Saa Saa ya DS3231 kwa kutumia Arduino na programu ndogo ya Java inayotumia uhusiano wa serial wa Arduino. Mantiki ya kimsingi ya programu hii: 1. Arduino hutuma ombi la mfululizo
Saa ya Saa ya Saa ya Dakika 30: Hatua 3 (na Picha)
Saa ya Saa ya Saa ya Dakika 30: Rafiki anaanzisha biashara ndogo ambayo hukodisha rasilimali kwa muda wa dakika 30. Alitafuta kipima muda ambacho kingeweza kutisha kila dakika 30 (saa na nusu saa) na sauti nzuri ya gong, lakini sikuweza kupata chochote. Nilijitolea kuunda si
DS1307 Saa Saa Saa RTC Na Arduino: Hatua 4
DS1307 Saa Saa Saa RTC Na Arduino: Katika Mafunzo haya, tutajifunza juu ya Saa Saa Saa (RTC) na jinsi Arduino & Saa Saa Saa IC DS1307 imewekwa pamoja kama kifaa cha wakati.Real Time Clock (RTC) hutumiwa kwa ufuatiliaji wa wakati na kudumisha kalenda.Ili kutumia RTC, w
Kutengeneza Saa na M5stick C Kutumia Arduino IDE - RTC Saa Saa Saa Na M5stack M5stick-C: Hatua 4
Kutengeneza Saa na M5stick C Kutumia Arduino IDE | RTC Saa Saa Saa Na M5stack M5stick-C: Halo jamani katika mafundisho haya tutajifunza jinsi ya kutengeneza saa na bodi ya maendeleo ya m5stick-C ya m5stack kutumia Arduino IDE.So m5stick itaonyesha tarehe, saa & wiki ya mwezi kwenye maonyesho