Подключение Tiny RTC i2C
- Войдите на сайт для отправки комментариев
Чт, 27/06/2013 - 16:49
Доброго времени суток.
Пытаюсь подключить часики к Arduino. Часики такие:
Библиотеку качал отсюда. Подключаю к Funduino mega. vcc и gnd запитываю от блока питания, scl и sda подключаю к 20 и 21 пину.
Заливаю стандартный пример
#include <Wire.h> #include "RTClib.h" RTC_DS1307 RTC; void setup () { //Initialize the serial port, wire library and RTC module Serial.begin(9600); Wire.begin(); RTC.begin(); //We check if the RTC module is working, if not we sent Error if (! RTC.isrunning()) { Serial.println("RTC is NOT running!"); //If we remove the comment from the following line, we will set up the module time and date with the computer one RTC.adjust(DateTime(__DATE__, __TIME__)); } } void loop () { DateTime now = RTC.now(); //We print the day Serial.print(now.day(), DEC); Serial.print('/'); //We print the month Serial.print(now.month(), DEC); Serial.print('/'); //We print the year Serial.print(now.year(), DEC); Serial.print(' '); //We print the hour Serial.print(now.hour(), DEC); Serial.print(':'); //We print the minutes Serial.print(now.minute(), DEC); Serial.print(':'); //We print the seconds Serial.print(now.second(), DEC); Serial.println(); //We check the time and sent through the serial port every 3s delay(3000); }
А на выходе получаю
RTC is NOT running! 165/165/2165 165:165:85 165/165/2165 165:165:85
Куда копать?
Копать найденые темы на этом форуме по запросу "DS1307". Земли у модуля и дуины соединены?
Земля соеденена, да и при подключении питания от ардуины, ситуация не меняется. По форуму искал, дельного ничего не нашел.
Upd: Стоило написать, как проблема решилась. Виновником оказалось отволившееся заземление кварца.
проблемой могла быть еще и отсутствующая резервная батарейка (о ней вы тоже ничего не сказали, кстати)
Посмотрите это, может поможет:
В качестве эталона таблице ниже показано, где TWI контакты расположены на различных досках Arduino.
Взял здесь: http://arduino.cc/en/Reference/Wire
Кто в курсе, батарейка в модуле была очень уставшей (0.8В), поменял. Без нагрузки 3.5В, не вопрос. На пине ВАТ уже 2В. Соответственно идет пока есть электрика (или до ресета). Далее отлетает на 09:00:00 Это батарейке конец или часам, что так просаживают?
ПыСы. Корпус кварца не припаян к земле как и у автора темы, но часы идут.
либы отсюда http://www.freetronics.com/pages/rtc-real-time-clock-module-quickstart-guide
дак и будут идти, но не точно.
Померял сегодня 3.45В и 1.91В соответственно. Не может же быть столь хреновая батарейка? или модуль и правда столько жрет?
Так и пишу, что при 3.5 на батарейке, на Vbat 2... Сегодня уже 3.3 и 1.85... ну не может же он так жрать по даташиту. При чем и не работая то по сути.
ёкарный бабай... Там, если не врут, то что в комплекте, это аккум ли-ион. Теперь вопрос, а как его заряжать? Vbat на +5 посадить? Я его случайно не выкинул. Вопрос отпал, заряжается от Vcc.
Пытаюсь подключить данный модуль к контроллеру, код к торому пишу на microC. Получается косяк с I2C: записываю данные в один из регистров DS1307 и потом пытаюсь прочитать с него , но этот регистр оказывается пустой. В чем проблема?
1
RTC
is
NOT running!
2
165/165/2165 165:165:85
3
165/165/2165 165:165:85
попробуйте сначала применить скетч с установкой времени. а потом уж со считыванием. Гдето тож этот модуль не выходил на связь. пока ему дату сначала не прописал (при этом запускается время.