ዝርዝር ሁኔታ:
ቪዲዮ: ትክክለኛ ሰዓት: 3 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:30
እኛ ሁላችንም ሰዓቶች ያስፈልጉናል ፣ ስለዚህ በዚህ አስተማሪ ውስጥ ለምን የራስዎን አያደርጉም ፣ አንዴ ካዘጋጁ አንዴ ትክክለኛ ሰዓት በሁሉም ነገሮች ዳራ ውስጥ በራስ -ሰር እንደሚከታተል ያሳዩዎታል። እንዲሁም በጣም ትንሽ አቅርቦቶች እና ዜሮ መሸጫዎችን ብቻ በሚፈልጉበት ጊዜ።
አቅርቦቶች
በመጀመሪያ ፣ አርዱዲኖ ያስፈልግዎታል ነገር ግን ማንኛውም አርዱዲኖ ይሠራል
በመቀጠልም አጠቃላይ የጃምፐር ሽቦዎች ስብስብ ያስፈልግዎታል።
2 12 ሚሜ Sparkfun Pushbutton Switches
ባህላዊ የዳቦ ሰሌዳ
እና ኤልሲዲ 1602 16 ፒን ማሳያ
ደረጃ 1 - ሽቦ
ይህ ሰዓት እንዲሠራ ይህንን በጣም በተወሰነ መንገድ መገናኘት ያስፈልግዎታል ወይም ካልሆነ በጊዜ ሳይሆን በማያ ገጹ ላይ የዘፈቀደ ቁጥሮች ስብስብ ያገኛሉ።
ደረጃ 2 - ኮዱ
እኛ RTC ን ስለማንጠቀም ኮዱ ትንሽ ረጅም ይሆናል ፣ ግን አመሰግናለሁ ሁሉንም ከባድ ስራ ለእርስዎ ሰርቼ እዚህ አቅርቤዋለሁ።
ይህንን በአርዲኖ አይዲኢ ወይም በድር አርታኢ ውስጥ ይቅዱ እና ይለጥፉ።
#"LiquidCrystal.h" ን ያካትቱ
// ይህ የኤልሲዲ ሽቦውን ወደ DIGITALpins const int rs = 2 ፣ en = 3 ፣ d4 = 4 ፣ d5 = 5 ፣ d6 = 6 ፣ d7 = 7 ይገልጻል። LiquidCrystal lcd (rs ፣ en ፣ d4 ፣ d5 ፣ d6 ፣ d7);
// ዲጂታል ኤልሲሲ ኮንስትራስት ቅንብር int cs = 9; // ፒን 9 ለንፅፅር PWM const int ተቃራኒ = 100; // ነባሪ ንፅፅር
// የመጀመሪያ ሰዓት ማሳያ 12:59:45 PM int h = 12; int m = 59; int s = 45; int ባንዲራ = 1; // ጠ/ሚ
// የጊዜ አዘጋጅ አዝራሮች int button1; int አዝራር 2;
// የፒን ትርጓሜ ለጊዜ አዘጋጅ አዝራሮች int hs = 0; // pin 0 ለ ሰዓታት ማቀናበር int ms = 1; // ሚስማር 1 ለደቂቃዎች ቅንብር
// የጀርባ ብርሃን ሰዓት Out const int Time_light = 150; int bl_TO = Time_light; // የጀርባ ብርሃን ሰዓት መውጫ int bl = 10; // የጀርባ ብርሃን ፒን const int backlight = 120; // ከ 7mA አይበልጥም !!!
// ለትክክለኛ ሰዓት ንባብ ፣ አርዱዲኖ እውነተኛ ሰዓት ሰዓት ይጠቀሙ እና መዘግየት ብቻ አይደለም () የማይንቀሳቀስ uint32_t last_time ፣ አሁን = 0; // RTC
ባዶነት ማዋቀር () {lcd.begin (16, 2); pinMode (ሰዓቶች ፣ INPUT_PULLUP) ፤ // ለውጫዊ የ pulpp resistors ን ለቁልፍ 1 ፒንMode (ms ፣ INPUT_PULLUP) ፤ // እና አዝራር 2 አናሎግ ፃፍ (ሲኤስ ፣ ንፅፅር); በ Backlight ላይ አሁን = ሚሊስ (); // የ RTC የመጀመሪያ ዋጋን ያንብቡ}
ባዶ ባዶ loop () {lcd.begin (16 ፣ 2) ፤ // እያንዳንዱ ሰከንድ // የ LCD ማሳያ ያዘምኑ/ያትሙ ሰዓት ፣ ደቂቃ ፣ ሰከንድ + AM/PM lcd.setCursor (0 ፣ 0) ፤ lcd.print ("ጊዜ"); ከሆነ (ሸ <10) lcd.print ("0"); // ሁልጊዜ 2 አሃዞች lcd.print (ሸ); lcd.print (":"); ከሆነ (m <10) lcd.print ("0"); lcd.print (m); lcd.print (":"); ከሆነ (ዎች <10) lcd.print ("0"); lcd.print (ዎች);
ከሆነ (ባንዲራ == 0) lcd.print ("AM"); ከሆነ (ባንዲራ == 1) lcd.print ("PM"); lcd.setCursor (0, 1); // ለ መስመር 2 lcd.print ("ትክክለኛ ሰዓት");
// የተሻሻለ መዘግየት መተካት (1000) // በጣም የተሻለ ትክክለኛነት ፣ የሉፕ አፈፃፀም ጊዜ ጥገኛ አይደለም
ለ (int i = 0; i <5; i ++) // ለፈጣን የአዝራር ምላሽ 5 ጊዜ 200ms loop ያድርጉ {
ሳለ ((አሁን-last_time) <200) // delay200ms {now = millis (); } / ውስጣዊ 200ms loop last_time = አሁን; // ለሚቀጥለው ዙር ያዘጋጁ
// ያንብቡ የማዋቀሪያ አዝራሮች አዝራር 1 = digitalRead (hs) ፤ // የአዝራር አዝራሮችን ያንብቡ 2 = digitalRead (ms);
// የጀርባ ብርሃን ጊዜ bl_TO--; ከሆነ (bl_TO == 0) {analogWrite (bl, 0) ፤ // የጀርባ ብርሃን ጠፍቷል bl_TO ++; } // (((button1 == 0) | (button2 == 0)) እና (bl_TO == 1)) {bl_TO = Time_light; አናሎግ ፃፍ (bl ፣ የጀርባ ብርሃን); // ((button1 == 0) | (button2 == 0)) {button1 = digitalRead (hs); // አዝራሮችን ያንብቡ አዝራር 2 = digitalRead (ms); }} ሌላ // የሂደት አዝራር 1 ወይም አዝራር 2 በሚመታበት ጊዜ የጀርባ ብርሃን {if (button1 == 0) {h = h+1; bl_TO = የጊዜ_መብራት; አናሎግ ፃፍ (bl ፣ የጀርባ ብርሃን); }
ከሆነ (button2 == 0) {s = 0; m = m+1; bl_TO = የጊዜ ብርሃን; አናሎግ ፃፍ (bl ፣ backlight); }
/* ---- ሰከንዶች ፣ ደቂቃዎች ፣ ሰዓታት ከሰዓት/ከምሽቱ በላይ ----*/if (s == 60) {s = 0; m = m+1; } ከሆነ (m == 60) {m = 0; ሸ = ሸ+1; } ከሆነ (h == 13) {h = 1; ባንዲራ = ባንዲራ+1; ከሆነ (ባንዲራ == 2) ባንዲራ = 0; }
ከሆነ ((button1 == 0) | (button2 == 0)) // የጊዜ ቅንብር አዝራር ተጭኖ ከሆነ ማሳያውን ያዘምኑ {// የ LCD ማሳያ ያዘምኑ/ያትሙ ሰዓት ፣ ደቂቃ ፣ ሰከንድ + AM/PM lcd.setCursor (0, 0); lcd.print ("ጊዜ"); ከሆነ (ሸ <10) lcd.print ("0"); // ሁልጊዜ 2 አሃዞች lcd.print (ሸ); lcd.print (":"); ከሆነ (m <10) lcd.print ("0"); lcd.print (m); lcd.print (":"); ከሆነ (ዎች <10) lcd.print ("0"); lcd.print (ዎች);
ከሆነ (ባንዲራ == 0) lcd.print ("AM"); ከሆነ (ባንዲራ == 1) lcd.print ("PM"); lcd.setCursor (0, 1); // ለ መስመር 2 lcd.print ("ትክክለኛ ሰዓት"); }
} // ካለቀ}} // ያበቃል ለ
// ውጫዊ 1000ms loop
s = s+1; // ጭማሪ ሰከንድ። በመቁጠር // ---- ሰከንዶች ፣ ደቂቃዎች ፣ ሰዓታት ከሰዓት/ከምሽቱ በላይ ---- ከሆነ (s == 60) {s = 0; m = m+1; } ከሆነ (m == 60) {m = 0; ሸ = ሸ+1; } ከሆነ (h == 13) {h = 1; ባንዲራ = ባንዲራ+1; ከሆነ (ባንዲራ == 2) ባንዲራ = 0; }
// የሉፕ መጨረሻ}
ደረጃ 3: መርሃግብር (ይህ በእውነቱ ደረጃ አይደለም)
ይህንን የሚያነብ የቴክኖሎጂ ሰው ከሆነ እዚህም እንዲሁ ተንኮለኛ ነው እሱን ማየት ይችላሉ እብድ።
ይደሰቱ እና ይዝናኑ እና ከሁሉም በላይ ትኩስ ይሁኑ።
የሚመከር:
Raspberry Pi ን በመጠቀም ከቤት ሰዓት ሰዓት መቅጃ ሥራ - 7 ደረጃዎች
Raspberry Pi ን በመጠቀም ከቤት ሰዓት ሰዓት መቅጃ ሥራ - ባለፈው ዓመት ውስጥ እኔ ከቤት የመሥራት ዕድል አግኝቻለሁ። እኔ የምሠራበትን ሰዓታት መከታተል ነበረብኝ። የ Excel ተመን ሉህ በመጠቀም እና ወደ ‹ሰዓት-ውስጥ› እና ‹የሰዓት መውጫ› ጊዜዎችን በእጅ በመጀመር ፣ ብዙም ሳይቆይ ይህ እንደ ተገኘ አገኘሁ
አርዱዲኖ ትክክለኛ እና ትክክለኛ የቮልቲሜትር (0-90V ዲሲ) 3 ደረጃዎች
አርዱinoኖ ትክክለኛ እና ትክክለኛ የቮልቲሜትር (0-90V ዲሲ)-በዚህ ትምህርት ውስጥ አርዱዲኖ ናኖን በመጠቀም አንጻራዊ ትክክለኛነት እና ትክክለኛነት ያላቸውን ከፍተኛ ቮልቴጅ (ዲሲ (0-90v)) ለመለካት ቮልቲሜትር ገንብቻለሁ። እኔ የወሰድኳቸው የሙከራ መለኪያዎች በትክክል ነበሩ ፣ ብዙውን ጊዜ በ 0.3 ቪ ውስጥ ከሚለካው ትክክለኛው ቮልቴጅ
ESP8266 የአውታረ መረብ ሰዓት ያለ ምንም RTC - Nodemcu NTP ሰዓት የለም RTC - የበይነመረብ ሰዓት ሥራ ፕሮጀክት - 4 ደረጃዎች
ESP8266 የአውታረ መረብ ሰዓት ያለ ምንም RTC | Nodemcu NTP ሰዓት የለም RTC | የበይነመረብ ክሎክ ፕሮጀክት - በፕሮጀክቱ ውስጥ ያለ RTC የሰዓት ፕሮጀክት ይሠራል ፣ wifi ን በመጠቀም ከበይነመረቡ ጊዜ ይወስዳል እና በ st7735 ማሳያ ላይ ያሳየዋል።
DS1307 የእውነተኛ ሰዓት ሰዓት (RTC) ሞዱልን እና አርዶኖን ላይ የተመሠረተ ሰዓት & 0.96: 5 ደረጃዎች
DS1307 Real Time Clock (RTC) ሞጁል እና 0.96 ን በመጠቀም አርዱinoኖ ላይ የተመሠረተ ሰዓት - በዚህ አጋዥ ሠላም ውስጥ እኛ የ DS1307 የእውነተኛ ሰዓት ሰዓት ሞዱል በመጠቀም የሥራ ሰዓት እንዴት እንደሚሠራ እንመለከታለን & OLED ማሳያዎች። ስለዚህ ሰዓቱን ከሰዓት ሞዱል DS1307 እናነባለን። እና በ OLED ማያ ገጽ ላይ ያትሙት
አርዱዲኖ አይዲኢን በመጠቀም ከ M5stick C ጋር ሰዓት መስራት - የ RTC እውነተኛ ሰዓት ሰዓት በ M5stack M5stick-C: 4 ደረጃዎች
አርዱዲኖ አይዲኢን በመጠቀም ከ M5stick C ጋር ሰዓት መስራት | የ RTC እውነተኛ ሰዓት ሰዓት ከ M5stack M5stick-C ጋር: በዚህ አስተማሪዎች ውስጥ ሠላም እኛ አርዱዲኖ IDE.So m5stick ቀንን ፣ ጊዜን & በማሳያው ላይ የወሩ ሳምንት