RTC

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Arduiner001, 19 июн 2015.

  1. Arduiner001

    Arduiner001 Гик

    Имеется вот такой замечательный стартовый набор Ардуино: http://wiki.epalsite.com/index.php?title=Starter_Kit_for_Arduino. (Странно, что не матрёшка, а пишу я на форуме Амперки xD. Про Амперку я узнал только после покупки набора. А так я бы с радостью купил бы матрёшку. она дешевле.) В нем есть модуль Real Time Clock (RTC). На этой же странице имеется инструкция, как подключить его к дуине. Она у меня не работает. То есть работает, но нельзя установить время. Как подключить этот модуль правильно?
     
  2. ANV

    ANV Гуру

    Начнем с начала - просто вывод времени в Serial Monitor работает (как в примере 3.28 Lesson 28 Electronic Clock)?
     
  3. Arduiner001

    Arduiner001 Гик

  4. Arduiner001

    Arduiner001 Гик

    А установка времени - нет
     
  5. ANV

    ANV Гуру

    Давайте код посмотрим
     
  6. Arduiner001

    Arduiner001 Гик

    Код как в уроке 28.
     
  7. Megakoteyka

    Megakoteyka Оракул Модератор

    Большинству будет лень качать и смотреть код, ведь это не им нужно, а вам. Выкладывайте сюда.
     
  8. Arduiner001

    Arduiner001 Гик

    Код (Text):
    #include <Wire.h>
    #include "DS1307.h"

    DS1307 clock;//define a object of DS1307 class
    void setup()
    {
        Serial.begin(9600);
        clock.begin();
        clock.fillByYMD(2013,1,19);//Jan 19,2013
        clock.fillByHMS(15,28,30);//15:28 30"
        clock.fillDayOfWeek(SAT);//Saturday
        clock.setTime();//write time to the RTC chip
    }
    void loop()
    {
        printTime();
    }
    /*Function: Display time on the serial monitor*/
    void printTime()
    {
        clock.getTime();
        Serial.print(clock.hour, DEC);
        Serial.print(":");
        Serial.print(clock.minute, DEC);
        Serial.print(":");
        Serial.print(clock.second, DEC);
        Serial.print("    ");
        Serial.print(clock.month, DEC);
        Serial.print("/");
        Serial.print(clock.dayOfMonth, DEC);
        Serial.print("/");
        Serial.print(clock.year+2000, DEC);
        Serial.print(" ");
        switch (clock.dayOfWeek)// Friendly printout the weekday
        {
            case MON:
              Serial.print("MON");
              break;
            case TUE:
              Serial.print("TUE");
              break;
            case WED:
              Serial.print("WED");
              break;
            case THU:
              Serial.print("THU");
              break;
            case FRI:
              Serial.print("FRI");
              break;
            case SAT:
              Serial.print("SAT");
              break;
            case SUN:
              Serial.print("SUN");
              break;
        }
        Serial.println(" ");
    }
     
  9. ANV

    ANV Гуру

    Какую дату отображает serial monitor?