roboforum.ru

Технический форум по робототехнике.


Часы RTC DS3231 к Orange PI через i2c не работает

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Часы RTC DS3231 к Orange PI через i2c не работает

Сообщение lonely_warrior » 15 мар 2019, 15:58

Доброго всем.
Давно меня тут не было и вот припекло.

Есть задача прикрутить RTC часы к orange pi pc plus. Чтобы системное время не сбивалось.
Причины: перебои с электричествои и интернетом на объекте.

Сделать это у меня не получается, поэтому прошу помощи.

Итак, купил три модуля: DS1302, DS1307 и DS3231

Вариант с DS1302 пока не хочу использовать из-за отсутствия на нём i2c.
Интерфейс у DS1307 и DS3231 так понимаю идентичный. Пытаюсь подключить через гребёнку GPIO. Подключаю как на фото.

VCC к 3.3 вольта
GND к GND
SDA к PA11 (TWI0-SCK)
SCL к PA12 (TWI0-SDA)
(Последние два от безисходности пробовал менять местами)

Далее устанавливаю на оранж i2c-tools. Во всех найденых инструкциях указано, что устройство должно застолбить себе 68 порт на i2c интерфейсе.
Пробую:
Код: Выделить всёРазвернуть
i2cdetect -y 0

ну и мало ли
Код: Выделить всёРазвернуть
i2cdetect -y 1


на 68 порту у меня ничего не показывает, пусто. Соответственно рушится вся дальнейшая цепочка действий по полключению модуля.
Команда
Код: Выделить всёРазвернуть
echo ds3231 0x68 > /sys/class/i2c-adapter/i2c-0/new_device

конечно приводит к появлению устройства /dev/rtc1 и порт 68 помечается UU
Но время с него не получишь, hwclock говорит что там пусто.

Я естественно предположил, что модули неисправны. Чтобы проверить это, взял ардуину, залил в неё вот этот скетч - http://robotchip.ru/obzor-chasov-realno ... ni-ds1307/
Подключил модуль DS3231
В мониторе отладки получил на удивление правильную дату-время.
То есть я что-то не так делаю на оранже.
Может кто сообразит что именно?
Вложения
410d5f.jpg
Аватара пользователя
lonely_warrior
 
Сообщения: 17
Зарегистрирован: 18 мар 2013, 05:08
прог. языки: c#, python, js

Re: Часы RTC DS3231 к Orange PI через i2c не работает

Сообщение Angel71 » 15 мар 2019, 18:34

к апельсине не подключал, но на всякий предупреждаю о возможной другой проблеме. некоторые такие модули часов расчинаты на аккумулятор, а не на батарейку. поищите про свои модули. переделка обычно простенькая.
Аватара пользователя
Angel71
 
Сообщения: 10668
Зарегистрирован: 18 апр 2009, 22:18
Предупреждения: -1

Re: Часы RTC DS3231 к Orange PI через i2c не работает

Сообщение sergey2x » 16 мар 2019, 00:08

https://github.com/fivdi/i2c-bus/blob/master/doc/raspberry-pi-i2c.md (для Raspberry Pi)
https://orangepi.su/content.php?p=112&c=OrangePi%20PC%20rabotaem%20s%20GPIO,%20UART%20i%20i2c
Смысл в том, что некоторая переферия, по умолчанию, может быть отключена.
sergey2x
 
Сообщения: 235
Зарегистрирован: 14 янв 2015, 16:18
Откуда: СПб

Re: Часы RTC DS3231 к Orange PI через i2c не работает

Сообщение lonely_warrior » 16 мар 2019, 20:39

Всё, разобрался.
Действительно было отключено.

В новых версиях armbian нужно запустить armbian-config и в разделе System/Hardware включить нужный интерфейс.

Ну и на прикреплённом в посте фото подключение неправильное, наоборот надо (прикрепил ещё фото).
Вложения
lscd_rtc_bb.png
Снимок экрана от 2019-03-16 11-52-38.png
Аватара пользователя
lonely_warrior
 
Сообщения: 17
Зарегистрирован: 18 мар 2013, 05:08
прог. языки: c#, python, js


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 15