Სარჩევი:

DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად: 4 ნაბიჯი
DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად: 4 ნაბიჯი

ვიდეო: DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად: 4 ნაბიჯი

ვიდეო: DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად: 4 ნაბიჯი
ვიდეო: LDmicro 14: I2C LCD & DS3231 Real-Time Clock (Microcontroller PLC Ladder Programming with LDmicro) 2024, ნოემბერი
Anonim
DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად
DS1307 რეალურ დროში საათი RTC არდუინოსთან ერთად

ამ გაკვეთილზე ჩვენ შევიტყობთ რეალურ დროში (RTC) და როგორ არის Arduino და Real Time Clock IC IC DS1307 ერთად შერწყმული, როგორც დროის მოწყობილობა.

Real Time Clock (RTC) გამოიყენება დროის მონიტორინგისთვის და კალენდრის შესანარჩუნებლად. იმისათვის, რომ გამოვიყენოთ RTC, ჩვენ ჯერ უნდა დავპროგრამოთ ის მიმდინარე თარიღით და დროით. ამის დასრულების შემდეგ, RTC რეგისტრების წაკითხვა შესაძლებელია ნებისმიერ დროს, რომ იცოდეთ დრო და თარიღი. DS1307 არის RTC, რომელიც მუშაობს I2C პროტოკოლზე. სხვადასხვა რეესტრის მონაცემების წაკითხვა შესაძლებელია მათი მისამართების წვდომისათვის I2C კომუნიკაციის გამოყენებით.

ნაბიჯი 1: ის, რაც გჭირდებათ

ნივთები რაც თქვენ გჭირდებათ
ნივთები რაც თქვენ გჭირდებათ
ნივთები რაც თქვენ გჭირდებათ
ნივთები რაც თქვენ გჭირდებათ
ნივთები რაც თქვენ გჭირდებათ
ნივთები რაც თქვენ გჭირდებათ

ეს არის შემდეგი რამ, რაც გჭირდებათ ამ ინსტრუქციისთვის:

არდუინო უნო

Ds1307 rtc მოდული

ჯუმბერის მავთულები

3.7 ვ მონეტის უჯრედი

ნაბიჯი 2: კავშირები

კავშირები
კავშირები
კავშირები
კავშირები

გთხოვთ მიჰყევით თანდართულ სმატიკოსებს სურათის განყოფილებაში და დააკავშიროთ ყველაფერი სკამატიკოსების მიხედვით.

ნაბიჯი 3: კოდირების ნაწილი

კოდირების ნაწილი
კოდირების ნაწილი

Arduino– ს დაპროგრამება RTC– ს შესანახი მიმდინარე თარიღისა და დროისათვის; და კითხულობს თარიღსა და დროს RTC– დან.

აქ ჩვენ გამოვიყენებთ Watterott– ის DS1307 ბიბლიოთეკას GitHub– დან.

გადმოწერეთ ეს ბიბლიოთეკა აქედან.:

ამოიღეთ ბიბლიოთეკა და დაამატეთ საქაღალდე სახელწოდებით DS1307 Arduino IDE ბიბლიოთეკების საქაღალდეში.

მას შემდეგ რაც ბიბლიოთეკა დაემატა Arduino IDE- ს, გახსენით IDE და გახსენით მაგალითი ესკიზი სახელწოდებით მაგალითი DS1307 ბიბლიოთეკიდან.

სიფრთხილის სიტყვა: მაგალითის ესკიზში, კონფიგურაციის მარყუჟში, გამოიყენება rtc.set () ფუნქცია. გადაიტანეთ მიმდინარე თარიღი და დრო არგუმენტები, როგორც ეს აღნიშნულია ამ ფუნქციაზე. მაგალითის ესკიზში, ეს განცხადება იქნება კომენტარი. დატოვეთ კომენტარი და ატვირთეთ ესკიზი. მას შემდეგ რაც ესკიზი აიტვირთება, კვლავ გაუკეთეთ კომენტარი კომენტარს და ატვირთეთ ესკიზი. თუ ეს არ გაკეთებულა, ყოველ ჯერზე, როდესაც Arduino UNO– ს დაფა გადატვირთულია ან ჩართულია გამორთვის შემდეგ, თქვენ მიერ მითითებული თარიღი და დრო განმეორებით დაყენდება და თქვენ ვერ შეძლებთ ზუსტი მიმდინარე დროისა და თარიღის წაკითხვას.

/* DS1307 RTC (რეალურ დროში-საათი) მაგალითი

Uno A4 (SDA), A5 (SCL) მეგა 20 (SDA), 21 (SCL) ლეონარდო 2 (SDA), 3 (SCL) */

#მოიცავს "Wire.h"

#მოიცავს "DS1307.h"

DS1307 rtc;

void setup () { /*init სერიული პორტი* / Serial.begin (9600); ხოლო (! სერიული); /*დაელოდეთ სერიული პორტის დაკავშირებას - საჭიროა მხოლოდ ლეონარდოსთვის*/

/*init RTC*/ Serial.println ("დაიწყე RTC …");

/*მხოლოდ თარიღის+დროის დაყენება*/ rtc.set (0, 0, 8, 24, 12, 2014); /*08: 00: 00 24.12.2014 // წმ, წთ, საათი, დღე, თვე, წელი*/

/*გაჩერება/პაუზა RTC*/// rtc.stop ();

/*დაიწყე RTC*/ rtc.start (); }

void loop () {uint8_t წმ, წთ, საათი, დღე, თვე; uint16_t წელი;

/*მიიღეთ დრო RTC– დან*/ rtc.get (& წმ, & წთ, & საათი, & დღე, & თვე, და წელი);

/*სერიული გამომავალი*/ Serial.print ("\ n დრო:"); Serial.print (საათი, DEC); Serial.print (":"); Serial.print (min, DEC); Serial.print (":"); Serial.print (წმ, DEC);

Serial.print ("\ n თარიღი:"); Serial.print (დღე, DEC); Serial.print ("."); Serial.print (თვე, DEC); Serial.print ("."); Serial.print (წელი, DEC);

/*დაელოდეთ წამს*/ შეფერხება (1000); }

დააკოპირეთ ზემოთ მოყვანილი კოდი და ატვირთეთ თქვენს arduino დაფაზე

ნაბიჯი 4: მიიღეთ დრო

დროის მიღება
დროის მიღება
დროის მიღება
დროის მიღება

მას შემდეგ რაც ყველაფერი ერთმანეთთან დააკავშირეთ და კოდი ატვირთეთ თქვენს arduino დაფაზე, გახსენით სერიული მონიტორი თქვენს arduino ide– ში და შემდეგ თქვენ შეძლებთ მიიღოთ თარიღი და დრო, როგორც ჩემი, თქვენს სერიულ მონიტორში, როგორც ხედავთ მე შემიძლია ვნახო ჩემი დრო და თარიღი ჩემს სერიულ მონიტორზე, დემო გამოსაშვებად გთხოვთ მიმართოთ სურათის ზემოთ გამოთქმას და გაერთეთ თქვენს პროექტში RTC საათის დამატებით.

გირჩევთ: