Схема подключения ds1307 и принцип работы

0
6

Ds1307 схема включения

Для корректного обмена данными между микроконтроллером и этим устройством, используйте I²C-интерфейс. Контакты SDA и SCL требуют подтяжки резисторами 4.7 кОм к питанию. Напряжение подается в диапазоне 2.5–5.5 В, а потребление в режиме ожидания не превышает 500 нА.

Регистры времени обновляются автоматически каждую секунду. Чтение данных выполняется пакетно: сначала указывается стартовый адрес (0x00 для секунд), затем последовательно считываются 7 байт. Запись требует предварительной остановки генератора установкой бита CH в регистре 0x00.

Как взаимодействовать с микросхемой хронометража DS1307

Электрическое соединение

Особенности обмена данными

Микросхема использует интерфейс I²C с адресом 0x68. Запись и чтение времени выполняются через регистры: 0x00 – секунды, 0x01 – минуты, 0x02 – часы. Для корректной работы бит CH в регистре секунд (0x00) должен быть сброшен в 0. Формат часов – 12- или 24-часовой – задаётся битом 6 в регистре 0x02.

При записи данных сначала указывается адрес регистра, затем значение. Например, для установки 15 часов в 24-часовом формате: запись 0x02, затем 0x15.

Распиновка модуля реального времени и соединение с МК

Для взаимодействия с микроконтроллером используйте 4-проводной интерфейс I²C. Контакты модуля:

  • VCC – питание +5 В.
  • GND – общий провод.
  • SDA – линия данных.
  • SCL – тактовый сигнал.

Порядок соединения

Особенности настройки

Для корректной работы проверьте адрес устройства (0x68 в шестнадцатеричном формате). Убедитесь, что кварцевый резонатор на 32.768 кГц подключен без ошибок. Если используется батарейка для резервного питания, её номинал должен быть 3 В.

Чтение и запись данных, управление регистрами

Для взаимодействия с микросхемой используйте протокол I²C. Адрес устройства – 0x68. Перед началом обмена убедитесь, что шина свободна, и отправьте стартовый сигнал.

Запись текущего времени выполняется через регистры 0x00–0x06. Формат данных – BCD. Например, для установки 23 часа 59 минут передайте последовательность: 0x00 (секунды), 0x59 (минуты), 0x23 (часы). Биты 6 и 7 регистра часов (0x02) управляют режимом (12/24 часа).

Чтение показаний выполняется аналогично. После отправки адреса регистра (0x00), запросите данные. Полученные значения декодируйте из BCD в десятичный формат. Например, если регистр минут вернул 0x59, преобразуйте его в 59.

При сбоях питания проверьте регистр 0x0F (флаг остановки). Если бит 7 установлен в 1, часы не работали. Сбросьте его перед настройкой времени.

Для ускорения обмена данными применяйте пакетную запись. Отправьте стартовый адрес (0x00), затем до 56 байт (регистры 0x00–0x3F). Чтение также поддерживает пакетный режим.

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь