תוכן עניינים:

DS1307 שעון בזמן אמת RTC עם Arduino: 4 שלבים
DS1307 שעון בזמן אמת RTC עם Arduino: 4 שלבים

וִידֵאוֹ: DS1307 שעון בזמן אמת RTC עם Arduino: 4 שלבים

וִידֵאוֹ: DS1307 שעון בזמן אמת RTC עם Arduino: 4 שלבים
וִידֵאוֹ: ניסוי שעון זמן אמת - RTC 2024, נוֹבֶמבֶּר
Anonim
DS1307 שעון בזמן אמת RTC עם Arduino
DS1307 שעון בזמן אמת RTC עם Arduino

במדריך זה נלמד על שעון בזמן אמת (RTC) ועל אופן חיבור Arduino & Real Time Clock IC DS1307 כמכשיר תזמון.

שעון בזמן אמת (RTC) משמש לניטור זמן ושמירה על לוח שנה. על מנת להשתמש ב- RTC, עלינו לתכנת אותו תחילה עם התאריך והשעה הנוכחיים. לאחר שתעשה זאת, ניתן לקרוא את רשימות ה- RTC בכל עת כדי לדעת את השעה והתאריך. DS1307 הוא RTC שעובד על פרוטוקול I2C. ניתן לקרוא נתונים מרשמים שונים על ידי גישה לכתובות שלהם לקריאה באמצעות תקשורת I2C.

שלב 1: דברים שאתה צריך

דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך
דברים שאתה צריך

אלה הדברים הבאים שאתה צריך בשביל ההוראות האלה:

ארדואינו אונו

מודול rtc DS1307

חוטי מגשר

תא מטבע 3.7v

שלב 2: חיבורים

חיבורים
חיבורים
חיבורים
חיבורים

אנא עקוב אחר החלק השחמט המצורף בתמונה וחבר הכל בהתאם לשמטים.

שלב 3: חלק קידוד

חלק קידוד
חלק קידוד

תכנות Arduino להאכיל RTC עם התאריך והשעה הנוכחיים; וקריאת התאריך והשעה מתוך ה- RTC.

כאן נשתמש בספריית DS1307 מאת ווטרוט מ- GitHub.

הורד את הספרייה הזו מכאן.:

חלץ את הספרייה והוסף את התיקיה בשם DS1307 לנתיב התיקיות של הספריות של Arduino IDE.

לאחר שהתווספה הספרייה ל- Arduino IDE, פתח את IDE ופתח את הסקיצה לדוגמה בשם דוגמה מספריית DS1307 שנוספה.

מילת זהירות: בסקיצה לדוגמה, בלולאת ההתקנה, נעשה שימוש בפונקציה rtc.set (). העבר את ארגומנטים התאריך והשעה הנוכחיים כאמור לפונקציה זו. בשרטוט לדוגמא תובא הערה זו להצהרה זו. בטל את זה ותעלה את המערכון. לאחר העלאת הסקיצה, הסירו שוב את התגובה של ההצהרה והעלו את המערכון. אם זה לא נעשה, בכל פעם לוח Arduino UNO מתאפס או מופעל לאחר כיבוי, התאריך והשעה שתגדיר יוגדרו שוב ושוב ולא תוכל לקרוא את השעה והתאריך הנוכחי המדויקים.

/* DS1307 RTC (שעון בזמן אמת) דוגמה

אונו A4 (SDA), A5 (SCL) מגה 20 (SDA), 21 (SCL) לאונרדו 2 (SDA), 3 (SCL) */

#כלול "Wire.h"

#כלול "DS1307.h"

DS1307 rtc;

הגדרת void () { /*init יציאה טורית* / Serial.begin (9600); בעוד (! סדרתי); /*המתן לחיבור יציאה טורית - נחוץ רק לאונרדו*/

/*init RTC*/ Serial.println ("RTC Init …");

/*הגדר רק את התאריך+השעה פעם אחת// rtc.set (0, 0, 8, 24, 12, 2014); /*08: 00: 00 24.12.2014 // שניות, דקות, שעה, יום, חודש, שנה*/

/*עצור/השהה RTC*/// rtc.stop ();

/*התחל RTC*/ rtc.start (); }

לולאת חלל () {uint8_t שניות, דקות, שעה, יום, חודש; uint16_t שנה;

/*קבל זמן מ- RTC*/ rtc.get (& sec, & min, & hour, & day, & year);

/*פלט סדרתי*/ Serial.print ("\ n זמן:"); Serial.print (שעה, DEC); Serial.print (":"); Serial.print (דקות, DEC); Serial.print (":"); Serial.print (sec, DEC);

Serial.print ("\ n תאריך:"); Serial.print (יום, DEC); Serial.print ("."); Serial.print (חודש, DEC); Serial.print ("."); Serial.print (שנה, DEC);

/*המתן שנייה*/ עיכוב (1000); }

העתק את הקוד לעיל והעלה אותו ללוח הארדואינו שלך

שלב 4: קבלת זמן

מקבל זמן
מקבל זמן
מקבל זמן
מקבל זמן

לאחר חיבור הכל יחד והעלאת הקוד ללוח הארדואינו שלך, פתח את הצג הטורי בארדואינו שלך ואז תוכל לקבל תאריך ושעה כשלי במסך הסדרתי שלך כפי שאתה יכול לראות אני מסוגל לראות את הזמן שלי & תאריך במסך הטורי שלי, עבור פלט הדגמה עיין בפלט התמונה לעיל ותהנה בהוספת שעון RTC לפרויקט שלך.

מוּמלָץ: