Автономные часы, проблема с I2C, модулем rtc ds1307. Срочная помощь

threight_ee
Offline
Зарегистрирован: 07.01.2021

Здравствуйте, заранее прошу прощения за большой текст, попытаюсь дать как можно больше инфы о проблеме.

Я собрала автономные часы, подключила всё так, как описано в статье |http://wiki.amperka.ru/arduino-projects:stand-alone-clock#автономные_часы|, прошила указанный скетч, но ничего не работает. Часы показывают 00 00, при нажатии кнопок ничего не происходит, точка-разделитель также не мигает. Ответьте, пожалуйста, очень срочно, в чём может быть проблема?

Подключено всё так, как описано, D-D, C-C, V-V, G-G, в том же месте Troyka-шилда, где это показано в статье. Батарейка новая, CR1225 от Трофи, вставлена в модуль с часами тоже точно так же, как описано в статье. Модуль с часами я покупала в Амперке, часы по типу DS1307. Только сама Arduino Uno была куплена на Озоне, но у меня с ней работали отлично простые часы, без модуля rtc.

В поисках решения проблемы я прочла, что можно попробовать отсканировать плату на I2C-устройства

|https://playground.arduino.cc/Main/I2cScanner/|, и если часы подключены, то выведется их адрес. У меня же вечный "scanning...", т.е. ничего не обнаруживается. Я пробовала подсоединить модуль с часами к области А Troyka-шилда, где тоже есть входы для D и C, но часы также не работают и сканер ничего не обнаруживает.

Помогите, пожалуйста, в чём может быть проблема? Может ли быть такое, что модуль с часами неисправен? или батарейка? или сама плата? Как это можно проверить и устранить проблему? Мне необходимо собрать эти часы, а впоследствии собрать бионический будильник. Питаю и прошиваю плату через COM-порт в ноутбуке.

Заранее спасибо за ответ и потраченное время. И предупрежу, что опыта у меня нет, делаю свой первый проект, первое физическое устройство на базе Arduino Uno. До этого всё обучение проходило в Tinkercad'e, и если по части кода я хоть в чём-то разбираюсь, то как решать такие проблемы я совершенно не знаю. Очень срочно.

С рождеством.

UPD: Пробовала прошить скетчи из примеров библиотеки iarduino_RTC.h (например, settime: |https://github.com/iarduino/iarduino_RTC/blob/master/iarduino_RTC/RTC_Trema_modul/settime/settime.ino|). Должно выводиться в монитор порта время с интервалом в одну секунду: день-месяц-год, час:минута:секунда, Месяц

Что выводится у меня: 00-00-2000, 00:00:00, Dec

бесконечно эта строка, без изменений, даже когда в settime устанавливается другое начальное время.

Также прошивала скетч отсюда: |https://github.com/amperka/TroykaRTC/blob/master/examples/testClock/testClock.ino|. Он написан специально для моего модуля часов реального времени, должен также выводить дату, но в моём случае ничего не происходит.

Собрано всё так, как указано в статье Амперки, но фотографию прикреплю на всякий случай:
cdpvFkGQqM4.jpg?size=803x1080&quality=96

 

AndreyD
AndreyD аватар
Offline
Зарегистрирован: 07.10.2018
sadman41
Offline
Зарегистрирован: 19.10.2016

Самое простое - протыкать контакты мультиметром. 

Для начала я бы оставил на шилде только одни часы и просканировал их скетчем I2C-scaner. Если есть провода типа dupont - подключил бы модуль часов напрямую к плате Arduino. Исправность батареи на ход часов во включенном состоянии не влияет.

Обратите внимание на следующее примечание: http://wiki.amperka.ru/products:arduino-troyka-slot-shield : "При коммуникации с управляющими платами с большим USB разъёмом, контакты Troyka Shield могут замкнутся между собой. Для решение проблемы наклейте пару слоёв изоленты на коннектор USB." 

Можно просто картонку просунуть между разъемом USB и шилдом.

threight_ee
Offline
Зарегистрирован: 07.01.2021

Да, первоначальный текст сообщения с поломанными ссылками был залит одним из представителей моих заботливых родителей в какой-то другой форум. Возможно, вы видели его там.

У вас есть какие-либо советы? Как можно было бы удостовериться в неработоспособности модуля с часами? Ибо в подключении у меня сомнений нет, на фотографии всё видно в общем-то, точно по указаниям. Я хотела заказать другой модуль, но если проблема здесь не в нём, то это обернётся в пустую трату денег.

threight_ee
Offline
Зарегистрирован: 07.01.2021

sadman41 пишет:

Для начала я бы оставил на шилде только одни часы и просканировал их скетчем I2C-scaner.

Здравствуйте! Спасибо за отклик, указанное я как раз-таки проделала, причём в  разных пригодных зонах шилда, но сканер нигде не обнаружил I2C устройств.

sadman41 пишет:

Если есть провода типа dupont - подключил бы модуль часов напрямую к плате Arduino.

Да, действительно есть, этого я ещё не пробовала, сделаю прямо сейчас. Спасибо большое.

Green
Offline
Зарегистрирован: 01.10.2015

Ну а остальные модули, кроме часов работают? На видео часы работают и без модуля RTC.

v258
v258 аватар
Offline
Зарегистрирован: 25.05.2020

threight_ee пишет:

Да, первоначальный текст сообщения с поломанными ссылками был залит одним из представителей моих заботливых родителей в какой-то другой форум. Возможно, вы видели его там.

Они уже и заказ в платном разделе сделали ))))

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

воткните модуль в слот А и посмотрите

threight_ee
Offline
Зарегистрирован: 07.01.2021

Остальные модули, кроме модуля реальных часов, работают.
У меня, конечно, есть план Б: заменить этот модуль на модуль кнопок, если не удастся решить проблему, и сделать схожий проект. Вместо будильника с точными часами сделать будильник с настройкой времени с помощью кнопок, но зато реализовать установку времени пробуждения с помощью второго модуля кнопок (потому что в текущем проекте время пробуждения устанавливается программно, мне это показалось неудобным в бытовой эксплуатации, а вот несбивающееся время не так уж необходимо, ибо дома всегда можно узнать текущее время и настроить будильник, если тот был отключён от питания).
Но проблема в том, что времени мало, проект нужно будет сдать 18 января, подготовив презентацию и материалы сверх самого устройства, поэтому хочется решить проблему с модулем часов, если она легко решаема и идти дальше.
Но если проблема не решится, то да, остальные компоненты работают, и другой план имеется.

threight_ee
Offline
Зарегистрирован: 07.01.2021

Здравствуйте, пожалуйста, прочтите выше. Я втыкала этот модуль в слоты A-B-C, но ни в одном I2C-scanner ничего не обнаружил. Спасибо за отклик!

threight_ee
Offline
Зарегистрирован: 07.01.2021

Авхах. Как раз-таки благодаря этой новости я залезла сюда сама, ибо уверена, что при исчерпывающем количестве информации о проблеме будут какие-либо "бесплатные" идеи, как можно ошибку найти и исправить.
Простим заботливым родительским сердцам их неосторожность и незнание :)

AndreyD
AndreyD аватар
Offline
Зарегистрирован: 07.10.2018

Какие же заботливые родители, всем бы таких.

threight_ee
Offline
Зарегистрирован: 07.01.2021

Подсоединила напрямую к Ардуино.
Результат:
I2C Scanner
Scanning...
No I2C devices found

Подключала С-5, D-4, V-5V, G-Gnd. Не обнаружил.
 

Green
Offline
Зарегистрирован: 01.10.2015

C-A5, D-A4?

threight_ee
Offline
Зарегистрирован: 07.01.2021

Извиняюсь, первоначально нет... Невнимательность.
Но сейчас подключила так, прошила - результат прежний: No I2C devices found.

sadman41
Offline
Зарегистрирован: 19.10.2016

Предварительный диагноз - модуль неисправен.
Дальше только мультиметром тыкать.

threight_ee
Offline
Зарегистрирован: 07.01.2021

О чудо!!!
Я подложила картон и... Счастью нет предела. 

В общем:
Scanning...
I2C device found at address 0x68  !
done

По памяти, я гуглила, это как раз адрес rtc и должен быть.
Огромное спасибо вам; и всем, кто пытался помочь. Выглядит сейчас это нелепо, но ерунда.
Большое спасибо, я застряла на этом ещё 3 дня назад, прошивала разные скетчи, чтобы понять, что происходит и почему - оказалось, нужно было лишь перечитать фрагмент статьи.
Думаю, можно считать тему закрытой, но если есть какие-то ещё советы, то пишите. Не могу перестать радоваться. Сейчас сразу попробую прошить скетч из той статьи.

Green
Offline
Зарегистрирован: 01.10.2015

Как то вы невнимательно читаете...  sadman41 вам ещё в #2 об этом говорил.(

threight_ee
Offline
Зарегистрирован: 07.01.2021

Нет, я обратила внимание, но старалась сразу отвечать на каждое сообщение, потом вот подсоединила напрямую часы к плате (это было тоже намного позже, чем совет поступил), сразу после этого отписала о результате и пошла за картоном :)
Спасибо вам тоже за отклик!
Кстати говоря, прошила скетч с сайта Амперки, и он работает. Завтра уже буду переписывать код и проовать другую библиотеку.

sadman41
Offline
Зарегистрирован: 19.10.2016

Что же он на проводках не сканировался...

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

sadman41 пишет:
Что же он на проводках не сканировался...

китайский дюпон...
осталось проверить I2C точно отражен на все три посадочных места? по маркировке этого не скажешь, а на презентации чел об этом вещает