Периферийные устройства
Микросхема часов реального времени DS3231.
Микросхема DS3231 выполнена в виде полностью законченного устройства, содержащего все необходимые элементы. На кристалле размещены непосредственно часы реального времени, генератор тактовой частоты и схема температурной компенсации. Такое решение позволило отказаться от дополнительных внешних радиодеталей, за исключением необходимых для реализации интерфейса I2C.
Генератор частоты в разных модификациях микросхем отличается по принципу работы. В корпусе DS3231 упакован классический кварцевый резонатор. Модификация DS3231M использует более продвинутую технологию MEMS-резонатора. Размещение генератора в корпусе прибора упростило конструирование пользовательских устройств, а благодаря температурной компенсации обеспечивается высокая точность хода. Модуль термокомпенсатора включает в себя термодатчик и управляемый температурой делитель частоты. Нестабильность хода часов DS3231 не превышает примерно 2 секунд за год в обычных условиях. При работе в области высоких или низких температур нестабильность оказывается в полтора раза выше. Для DS3231M нестабильность уменьшена примерно до 0.5 секунды за год. Также в схеме предусмотрена компенсация смещения частоты, вызываемого старением устройства.
Типовая схема включения DS3231 |
Часы DS3231 поддерживают работу с секундами, минутами, часами, днями, месяцами и годами. Максимальное значение года не может превышать 2100. Формат данных использует двоично-десятичное представление числа. Часы можно отображать в 12 или 24-часовом формате. В DS3231 реализовано две уставки сигнализации. Формат задания ограничен значением даты. Управление конкретным способом срабатывания ведется через значения старших битов регистра уставок.
Результаты измерения температуры доступны для пользователя. Точность термометра заявлена производителем на уровне 3 градусов. Результат измерений температуры представляется 10-битным числом с учетом знака. Период определения температуры составляет 64 секунды. Пользователь также может запросить преобразование в любой момент времени.
Расположение выводов DS3231 и DS3231M |
DS3231 собрана в корпусе SO-16, размер которого больше других аналогичных устройств. Очевидно это дань реализованному резонатору. Для общения с внешними устройствами используется шина I2C, дополненная выводами 32KHz и Reset. Электрические параметры этих линий совпадают с требованиями стандарта I2CАдрес микросхемы на шине 11010000 в двичном формате.Более современный вариант DS3231MZ получил корпус SO-8. При этом его распиновка позволяет применять эту микросхемe вместо ее более крупных моделей.
В серии DS323xвыпускаются еще две микросхемы:DS3232 и DS3234. Первая оснащена встроенной памятью SRAM емкостью 236 байт. Среди других особенностей более сложная система управления микросхемой и ограничение нижней частоты работы интерфейса. В DS3234 емкость памяти увеличена до 256 байт, а интерфейс заменен на SPI.
Описание выводов DS3231 и DS3231MZ
Номер вывода |
Обозначение |
Описание |
|
SO-16 |
SO-8 |
||
1 |
1 |
32kHz |
Выход частоты 32768Гц. Открытый сток. Требует подключения через внешний резистор к шине питания. Может оставаться не подключенным. |
2 |
2 |
Vcc |
Вход напряжения питания. Открытый сток. Должен быть подключен к земле, если не используется. |
3 |
3 |
INT/SQW |
Выход прерывания/частоты. Открытый сток. Требует подключения через внешний резистор к шине питания. Может оставаться не подключенным. В режиме прерывания активное состояние – низкое. |
4 |
4 |
RST |
Вход сброса. Активное состояние – низкое. |
5-12 |
NC |
Не используются |
|
13 |
5 |
GND |
Земля |
14 |
6 |
Vbat |
Вход резервного питания. Если не используется, то должен быть подключен к земле. |
15 |
7 |
SDA |
Информационный вход шины I2C. Требует подключения через внешний резистор к шине питания. |
16 |
8 |
SCL |
тактовый вход шины I2C. Требует подключения через внешний резистор к шине питания. |
Электрические характеристики микросхемы DS3231
Параметр |
Значение |
Размерность |
||||
Мин. |
Типовое |
Макс. |
||||
Напряжение питания |
Vcc |
2.3 |
3.3 |
5.5 |
В |
|
Напряжение питания от батареи |
Vbat |
2.3 |
3.0 |
5.5 |
В |
|
Ток, потребляемый в активном режиме |
Vcc=5.5В |
Icca
|
|
300 |
мкА |
|
Vcc=3.63В |
200 |
мкА |
||||
Ток, потребляемый при отсутствии обмена по шине |
Vcc=5.5В |
Iccs |
|
110 |
мкА |
|
Vcc=3.63В |
170 |
мкА |
||||
Ток, потребляемый в режиме измерения температуры |
Vcc=3.63В |
Iccsconv |
|
575 |
мкА |
|
Vcc=5.5В |
650 |
мкА |
||||
Ток, потребляемый в активном режиме при работе от батареи |
Vbat=5.5В |
Ibata |
|
150 |
мкА |
|
Vbat=3.0В |
70 |
мкА |
||||
Ток, потребляемый в спящем режиме при работе от батареи |
Vbat=5.5В |
Ibatt |
|
0.84 |
3.0 |
мкА |
Vbat=3.0В |
1.0 |
3.5 |
мкА |
|||
Ток, потребляемый в режиме измерения температуры при работе от батареи |
Vbat=5.5В |
Ibatс |
|
575 |
мкА |
|
Vbat=3.0В |
650 |
мкА |
||||
Выходная частота на 32kHz |
Fout |
|
32.768 |
|
кГц |
|
Частота работы линии SCL |
Fscl |
0 |
|
400 |
кГц |
|
Диапазон рабочих температур для коммерческого исполнения |
|
0 |
|
+70 |
Град. Цельсия |
|
Диапазон рабочих температур для индустриального исполнения |
|
-40 |
|
+85 |
Град. Цельсия |
Описание регистров микросхемы DS3231
Для организации обмена по шине I2C и задания режимов работы микросхемы, предусмотрено 19 регистров. В разных моделях имеются некоторые отличия в составе битов управления.
Адрес |
Бит 7 |
Бит 6 |
Бит 5 |
Бит 4 |
Бит 3 |
Бит 2 |
Бит 1 |
Бит 0 |
Функция |
Диапазон |
00h |
0 |
Десятки секунд |
Единицы секунд |
Секунды |
00-59 |
|||||
01h |
0 |
Десятки минут |
Единицы минут |
Минуты |
00-59 |
|||||
02h |
0 |
12/24 |
AM/PM |
10 Часов |
Единицы часов |
Часы |
1-12+AM/PM 00-23 |
|||
20 Часов |
||||||||||
03h |
0 |
0 |
0 |
0 |
0 |
День недели |
Дни |
1-7 |
||
04h |
0 |
0 |
Десятки даты |
Единицы даты |
Дата |
1-31 |
||||
05h |
Столетие |
0 |
0 |
Десятки месяца |
Единицы месяца |
Месяц/Столетие |
1-12+Столетие |
|||
06h |
Десятки года |
Единицы года |
Год |
00-99 |
||||||
07h |
A1M1 |
Десятки секунд |
Единицы секунд |
Уставка 1 Секунды |
00-59 |
|||||
08h |
A1M2 |
Десятки минут |
Единицы минут |
Уставка 1 Минуты |
00-59 |
|||||
09h |
A1M3 |
12/24 |
AM/PM |
10 Часов |
Единицы часов |
Уставка 1 Часы |
1-12+AM/PM 00-23 |
|||
20 часов |
||||||||||
0Ah |
A1M4 |
DY/DT |
Десятки даты |
День недели |
Уставка 1 Дни |
1-7 |
||||
Единицы даты |
Уставка 1 Дата |
1-31 |
||||||||
0Bh |
A2M2 |
Десятки минут |
Единицы минут |
Уставка 2 Минуты |
00-59 |
|||||
0Ch |
A2M3 |
12/24 |
AM/PM |
10 часов |
Единицы часов |
Уставка 2 Часы |
1-12+AM/PM 00-23 |
|||
20 часов |
||||||||||
0Dh |
A2M4 |
DY/DT |
Десятки даты |
День недели |
Уставка 2 Дни |
1-7 |
||||
Единицы даты |
Уставка 2 Дата |
1-31 |
||||||||
0Eh |
EOSC |
BBSQW |
CONV |
RS2 |
RS1 |
INTCH |
A2IE |
A1IE |
Регистр управления |
- |
0Fh |
OSF |
0 |
0 |
0 |
EN32kHz |
BSY |
A2F |
A1F |
Регистр состояния |
- |
10h |
SIGN |
DATA |
DATA |
DATA |
DATA |
DATA |
DATA |
DATA |
Смещение |
- |
11h |
SIGN |
DATA |
DATA |
DATA |
DATA |
DATA |
DATA |
DATA |
Старший байт температуры |
- |
12h |
DATA |
DATA |
0 |
0 |
0 |
0 |
0 |
0 |
Младший байт температуры |
- |
Регистр управления
Бит 7 |
Бит 6 |
Бит 5 |
Бит 4 |
Бит 3 |
Бит 2 |
Бит 1 |
Бит 0 |
|
EOSC |
BBSQW |
CONV |
RS2 |
RS1 |
INTCH |
A2IE |
A1IE |
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
Значение при подаче питания |
Бит 7. EOSC – Включение генератора. Если бит установлен в единицу, генератор работает всегда. Если бит равен 0, генератор выключается при переходе на батарейное питание. После включении питания бит находится в нулевом состоянии.
Бит 6 BBSQW - Включение выхода. Если бит установлен в 1 и INTCN=0, разрешено формирование выходного импульсного сигнала. Частота сигнала задается RS1 и RS 2. В микросхеме DS3231M частота постоянна и равна 1 Гц. Если бит равен 0, выход INT/SQW переведен в высокоимпедансное состояние. После включении питания бит находится в нулевом состоянии.
Бит 5. CONV – Преобразование температуры. Установка бита запускает процесс измерения температуры. Бит находится в единичном состоянии все время, пока не закончится процесс преобразования. Перед установкой данного бита требуется проверить состояние BSY.
Бит 4 и Бит 3. RS1 и RS2 - Установка выходной частоты. Биты не реализованы в DS3231M. В других микросхемах их значение устанавливает выходную частоту на выводе SQW, при установленном бите BBSQW
RS1 |
RS2 |
Частота на выводе SQW |
0 |
0 |
1 Гц |
0 |
1 |
1.024 Гц |
1 |
0 |
4.096 Гц |
1 |
1 |
8.192 Гц |
Бит 2. INTCN - Контроль прерываний. При нулевом значении бита выходной сигнал определяется битом BBSQW. При единичном значении выход INT/SQW устанавливается в 1 при совпадении счетных регистров времени и регистров уставки. Флаги совпадения времени и уставки A1F и A2F устанавливаются независимо от состояния INTCN. После подачи питания значение бита равно 1.
Бит 1. A2IE - Разрешение тревоги 2. При установке в 1 бит разрешает формирование сигнала тревоги по уставке 2 на выводе INT/SQW при INTCN=1.
Бит 0. A1IE - Разрешение тревоги 1. При установке в 1 бит разрешает формирование сигнала тревоги по уставке 1 на выводе INT/SQW при INTCN=1.
Регистр состояния
Бит 7 |
Бит 6 |
Бит 5 |
Бит 4 |
Бит 3 |
Бит 2 |
Бит 1 |
Бит 0 |
|
OSF |
0 |
0 |
0 |
EN32kHz |
BSY |
A2F |
A1F |
|
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
Значение при подаче питания |
Бит 7. OSF – Флаг останова генератора. Значение 1 в этом бите указывает что генератор остановлен Причины останова могут быть следующие:
- Подано питание, инициализация не произведена.
- Напряжения, на входах VCC и VBAT, недостаточны для генерации колебаний.
- Бит EOSC выключен, микросхема работает от батареи.
- Внешние воздействия на кристалл (то есть шум, утечка,и т.д.).
Биты 6 – 4. Не используются
Бит 3. EN32KHZ - Разрешение выхода 32kHz. При установке в единицу, на выходе 32kHz формируется частота 32768 Гц при условии работы генератора. Значение 0 переключает выход в высокоимпедансное состояние.
Бит 2. BSY - Флаг преобразования температуры. Значение 1 сигнализирует о процессе преобразования температуры. По завершении бит сбрасывается в 0.
Бит 1. A2F - Флаг тревоги 2. Бит устанавливается в 1, когда значение счетного регистра совпадает с уставкой 2. Сбрасывается в 0 пользователем.
Бит 0. A1F - Флаг тревоги 1. Бит устанавливается в 1, когда значение счетного регистра совпадает с уставкой 1. Сбрасывается в 0 пользователем.
Выбор режима работы уставок
Микросхема DS3231 имеет возможность задавать несколько типов уставки, для реагирования на разные временные интервалы. Для задания конкретного типа используются биты A1M1-A1M4 для первой уставки, и биты A2M2 - A2M4 для второй.
Выбор режима для первой уставки
DY/DT |
Маска битов уставки |
Функция |
|||
A1M4 |
A1M3 |
A1M2 |
A1M1 |
||
х |
1 |
1 |
1 |
1 |
Срабатывание один раз в секунду |
х |
1 |
1 |
1 |
0 |
Срабатывание по значению секунд |
х |
1 |
1 |
0 |
0 |
Срабатывание по значению минут и секунд |
х |
1 |
0 |
0 |
0 |
Срабатывание по значению часов, минут и секунд |
0 |
0 |
0 |
0 |
0 |
Срабатывание по значению даты, часов, минут и секунд |
1 |
0 |
0 |
0 |
0 |
Срабатывание по значению дня недели, часов, минут и секунд |
Выбор режима второй уставки
DY/DT |
Маска битов уставки |
Функция |
||
A2M4 |
A2M3 |
A2M2 |
|
|
х |
1 |
1 |
1 |
Срабатывание один раз в минуту (00 секунд) |
х |
1 |
1 |
0 |
Срабатывание по значению минут |
х |
1 |
0 |
0 |
Срабатывание по значению часов и минут |
0 |
0 |
0 |
0 |
Срабатывание по значению даты, часов и минут |
1 |
0 |
0 |
0 |
Срабатывание по значению дня недели, часов и минут |