Что представляет собой микросхема PCF8583. Какие основные функции она выполняет. Как организована память PCF8583. Какие режимы работы поддерживает эта микросхема. Как настроить и использовать PCF8583 в различных приложениях.
Общее описание и ключевые особенности PCF8583
PCF8583 — это высокофункциональная микросхема часов реального времени (RTC) производства компании NXP Semiconductors. Она объединяет в себе функции часов, календаря, будильника, таймера и счетчика событий, а также имеет встроенную память для хранения пользовательских данных.
Основные характеристики PCF8583:
- Интерфейс I2C для обмена данными
- 240 байт статического ОЗУ для пользовательских данных
- Календарь на 4 года
- Функции будильника и определения переполнения
- Поддержка 12- и 24-часового формата времени
- Внешний тактовый генератор частотой 32,768 кГц или 50 Гц
- Автоматическое увеличение адреса при работе с памятью
- Программируемые функции будильника, таймера и прерывания
- Низкое энергопотребление
Архитектура и организация памяти PCF8583
Микросхема PCF8583 имеет следующую структуру памяти:
- Общий объем памяти — 256 байт
- Первые 16 байт (адреса 00h-0Fh) — регистры специального назначения
- Остальные 240 байт (адреса 10h-FFh) — свободно используемое ОЗУ
Регистры специального назначения включают:
- Регистр управления/состояния (00h)
- Регистры-счетчики для функций часов (01h-07h)
- Регистры сигнализации/будильника (08h-0Fh)
Такая организация памяти позволяет эффективно использовать PCF8583 как для хранения времени и даты, так и для сохранения пользовательских данных.
Режимы работы PCF8583
Микросхема PCF8583 может работать в двух основных режимах:
Режим часов
В этом режиме PCF8583 функционирует как полноценные часы реального времени, отсчитывая и сохраняя текущее время и дату. Основные особенности режима часов:
- Отсчет времени с точностью до сотых долей секунды
- Ведение календаря с учетом високосных лет
- Возможность установки будильника
- Программируемый таймер
Режим счетчика событий
В этом режиме PCF8583 работает как счетчик внешних событий. Ключевые характеристики:
- Подсчет импульсов на входе OSC1
- Трехбайтный счетчик событий
- Возможность генерации прерывания при достижении заданного значения
Выбор режима работы осуществляется путем настройки соответствующих битов в регистре управления (00h).
Интерфейс I2C и адресация PCF8583
PCF8583 использует двухпроводной последовательный интерфейс I2C для обмена данными с управляющим микроконтроллером. Это обеспечивает простоту подключения и экономию выводов микроконтроллера.
Особенности работы PCF8583 по шине I2C:
- Поддержка стандартного (100 кГц) и быстрого (400 кГц) режимов I2C
- 7-битная адресация устройства
- Возможность подключения двух микросхем PCF8583 к одной шине I2C
Базовый адрес PCF8583 на шине I2C — 1010 000b. Младший бит адреса определяется состоянием вывода A0 микросхемы:
- A0 = 0: адрес устройства 1010 000b (A0h)
- A0 = 1: адрес устройства 1010 001b (A2h)
Это позволяет использовать две микросхемы PCF8583 на одной шине I2C, что может быть полезно, например, для создания резервированной системы часов реального времени.
Функции будильника и прерываний в PCF8583
PCF8583 предоставляет гибкие возможности для генерации сигналов будильника и прерываний. Это позволяет эффективно использовать микросхему в различных приложениях, требующих точного отсчета временных интервалов или реакции на определенные события.
Функция будильника
Будильник PCF8583 может быть настроен на срабатывание:
- Ежедневно в заданное время
- Еженедельно в определенный день и время
- В конкретную дату и время
Настройка будильника осуществляется путем записи соответствующих значений в регистры сигнализации (09h-0Fh) и установки битов управления в регистре 08h.
Система прерываний
PCF8583 может генерировать прерывания в следующих случаях:
- Срабатывание будильника
- Переполнение таймера
- Достижение счетчиком событий заданного значения
Сигнал прерывания формируется на выводе INT микросхемы. Этот вывод имеет открытый сток, что позволяет объединять сигналы прерываний от нескольких устройств.
Применение PCF8583 в различных устройствах
Благодаря своей функциональности и низкому энергопотреблению, PCF8583 находит применение в широком спектре устройств:
- Промышленные контроллеры и системы автоматизации
- Портативная электроника (часы, фитнес-трекеры)
- Автомобильные системы
- Измерительное оборудование
- Системы безопасности и контроля доступа
Рассмотрим несколько примеров использования PCF8583:
Система регистрации данных
PCF8583 можно использовать для создания системы регистрации данных с точной привязкой ко времени. Микросхема будет отвечать за хранение текущего времени и даты, а также может использовать свое ОЗУ для буферизации собираемых данных.
Умный будильник
Функции будильника PCF8583 позволяют создать «умный» будильник, который может срабатывать в зависимости от дня недели или даты. Это может быть полезно, например, в устройствах для приема лекарств по расписанию.
Счетчик моточасов
Режим счетчика событий PCF8583 можно использовать для создания счетчика моточасов в промышленном оборудовании. Микросхема будет подсчитывать время работы устройства и сохранять эту информацию даже при отключении основного питания.
Практические аспекты работы с PCF8583
При использовании PCF8583 в реальных проектах следует учитывать несколько важных моментов:
Инициализация микросхемы
После подачи питания необходимо провести инициализацию PCF8583:
- Установить нужный режим работы (часы или счетчик событий)
- Настроить формат времени (12 или 24 часа)
- Установить начальные значения времени и даты
- При необходимости, настроить функции будильника и прерываний
Работа с регистрами
При чтении и записи регистров PCF8583 следует учитывать, что большинство значений хранится в формате BCD (двоично-десятичный код). Это требует соответствующего преобразования данных при обмене с микроконтроллером.
Резервное питание
Заключение
PCF8583 представляет собой мощное и гибкое решение для реализации функций часов реального времени и связанных задач. Благодаря широким возможностям и простоте использования, эта микросхема остается популярным выбором для различных электронных устройств, несмотря на появление более новых альтернатив.
Основные преимущества PCF8583:
- Комплексная функциональность (часы, календарь, будильник, таймер, счетчик событий)
- Простой интерфейс I2C для подключения к микроконтроллерам
- Наличие встроенного ОЗУ для хранения пользовательских данных
- Низкое энергопотребление и возможность работы от резервного питания
- Гибкая система прерываний
При разработке устройств с использованием PCF8583 важно тщательно изучить документацию производителя и учесть особенности работы микросхемы. Это позволит максимально эффективно использовать ее возможности и избежать потенциальных проблем при эксплуатации.
Микросхема часов реального времени PCF8583
Микросхема часов реального времени PCF8583
Микросхема PCF8583 выполняет функции часов реального времени, таймера, счетчика событий и статического ОЗУ емкостью 240 байт. Для передачи данных используется шина I2C. Микросхема изготавливается в 8-ми выводном корпусе.
Назначение выводов
OSC1 – вход внешнего генератора 32768Гц.
OSC2 — выход генератора.
A0 – Линия выбора адреса
Vss – общий провод питания
SDA – линия данных шины I2C
SCL – линия тактового сигнала шины I2C
INT – выход прерывания для внешнего устройства. Требует подключения подтягивающего резистора.
Vdd– линия питания
Схема распределения памяти
Фактически микросхема PCF8583 представляет собой статическое ОЗУ, емкостью 256 байт, у которого первые 16 байт являются регистрами специального назначения. Назначение некоторых регистров зависит от режима работы микросхемы. Режим задается в регистре состояния имеющем адрес 00h. Все числа в регистрах часов по умолчанию хранятся в BCD формате.
Адрес |
Описание | |
---|---|---|
00h |
Регистр состояния |
|
01h |
Доли секунд |
|
1/10с |
1/100с |
|
02h |
Секунды |
|
10с |
1с |
|
03h |
Минуты |
|
10мин |
1мин |
|
04h |
Часы |
|
10ч |
1ч |
|
05h |
Дата |
|
10дн |
1д |
|
06h |
Месяц |
|
10мес |
1мес |
|
07h |
Таймер |
|
10дн |
1д |
|
08h |
Регистр тревог |
|
09h |
Тревога. Доли секунд |
|
1/10с |
1/100с |
|
0Ah |
Тревога. Секунды |
|
10с |
1с |
|
0Bh |
Тревога. Минуты |
|
10мин |
1мин |
|
0Ch |
Тревога. Часы |
|
10ч |
1ч |
|
0Dh |
Тревога.Дата |
|
0Eh |
Тревога. Месяцы |
|
0Fh |
Таймер тревоги |
|
10h…FFh |
Статическое ОЗУ |
Регистр состояния
Регистр состояния содержит биты задания режимов работы микросхемы и флаги.
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
---|---|---|---|---|---|---|---|
SC |
HLC |
CM1 |
CM0 |
Mask |
Alarm |
FT1 |
FT0 |
- FT0 – флаг Timer. Если бит Alarm установлен в 0, данный бит переключается с частотой 1 Гц.
- FT1 – флаг Timer. Если бит Alarm установлен в 0, данный бит переключается с частотой ½ мин.
- Alarm – бит разрешения режима «тревога» ( 0 — запрещен, 1 – разрешен)
- Mask – при установке 1 позволяет считывать значения даты и месяца (05h,06h) в виде числа, а не в BCD формате.
- CM1, CM0 – биты установки режима. 00 – часы с входной частотой 32768Гц, 01 – часы с входной частотой 50Гц, 10 – счетчик событий, 11 – режим тестирования.
- HLC –
- SC – флаг останова счета (0 – счет идет, 1 – счет остановлен по условию)
Режим часов (Clock mode)
Режим часов устанавливается путем записи 00b или 01b в биты 4,5 регистра состояния.
В данном режиме микросхема осуществляет счет импульсов от тактового генератора и на основе этих данных вычисляет время и дату. Значения заносятся в регистры 01h-07h в двоично-десятичном формате. Старший полубайт отвечает за десятки, а младший за единицы. При чтении данных в регистрах 05h,06h рекомендуется устанавливать флаг mask. Это позволяет читать дату и месяц, не проводя дополнительных вычислений. Все регистры доступны на чтение и запись. Это позволяет установить текущее время, просто записав нужное значение в соответствующий регистр.
В режиме часов имеются некоторые особенности работы регистров 04h-05h.
Регистр Часов (04h)
Начальная установка после сброса – 00000000b
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
---|---|---|---|---|---|---|---|
HM |
AM/PM |
Dh2 |
DH0 |
h4 |
h3 |
h2 |
H0 |
- H0-h4 – единицы часов в BCD формате
- DH0-Dh2 – десятки часов
- AM/PM – флаг до и после полудня.
- HM – режим работы регистра часов (0 – 24-часовой формат AM/PM не задействован, 1 – 12-часовой формат с установкой флага AM/PM).
Регистр Дата (05h)
Начальная установка после сброса – 00000001b
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
---|---|---|---|---|---|---|---|
Y1 |
Y0 |
DD1 |
DD0 |
D3 |
D2 |
D1 |
D0 |
- D0-D3 – единицы дней в BCD формате
- DD0-DD1 – десятки дней
- Y0-Y1 – год. В случае установки флага Mask данные биты читаются как 0
Регистр Месяц (06h)
Начальная установка после сброса – 00000001b
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
---|---|---|---|---|---|---|---|
W2 |
W1 |
W0 |
DM0 |
M3 |
M2 |
M1 |
M0 |
- M0-M3 – единицы номера месяца в BCD формате
- DM0 – десятки номера месяца
- W0-W2 – номер недели в месяце. В случае установки флага Mask данные биты читаются как 0
В режиме часов можно запустить таймер (07h). Он включается, если в регистре состояния записывается комбинация ХХ0Х Х1ХХb. Таймер имеет диапазон счета от 0 до 99. В случае переполнения таймера устанавливается флаг Timer в регистре состояния. Сброс этого флага осуществляется программно, путем обнуления соответствующих битов. Выбор функции счета таймера выполняется в регистре тревог — Alarm Control (08h). В этом же регистре возможно подключить выход таймера к выводу INT микросхемы.
Режим Alarm
Микросхема PCF8583 имеет возможность генерировать сигнал события (прерывания) при совпадении значений в счетных регистрах и регистрах alarm. При генерации сигнала могут учитываться не все регистры. Например, при ежедневном сигнале игнорируются значения, находящиеся в регистрах Тревога.Дата, Тревога.Месяцы.
Регистр Alarm Control (08h)
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
---|---|---|---|---|---|---|---|
IntA |
AT |
A1 |
A0 |
IntT |
T2 |
T1 |
T0 |
- T0-T2 – функции таймера
000 – без таймера
001 – десятки и сотни секунд
010 – секунды
011 – минуты
100 – часы
101 – дни
110 – не используется
111 – тестовый сигнал на всех интервалах
- IntT – прерывание от таймера (0 — нет, 1 — есть)
- A0-A1 – функция alarm (00 – нет, 01 – ежедневный alarm, 10 – еженедельный alarm, 11 – alarm по дате).
- AT – alarm по таймеру (0 — выкл, 1 — вкл)
- IntA — прерывание по режиму alarm (0 – нет, 1 – есть)
You have no rights to post comments
1.2.5.1 Основные характеристики pcf8583
I2C-интерфейс.
ОЗУ емкостью 240 байт для пользовательских данных.
Календарь на 4 года.
Функция будильника/сигнализации и определения переполнения.
Поддержка 12- или 24-часовой формата времени.
Внешний тактовый генератор – 32,768 кГц или 50 Гц.
Автоматическое наращивание адреса при работе с памятью.
Программируемые функции будильника, таймера, счетчика событий и
прерывания.
Часы/календарь PCF8583 содержит оперативную память объемом
256
байт. Адреса и данные передаются последовательно через двунаправленную
шину I2C. Встроенный регистр адреса автоматически наращивается после
чтения или записи каждого байта данных [14].
Адресный вывод А0 используется для настройки адресов устройств, что
позволяет подсоединять к одной шине I2C две микросхемы PCF8583.
27
Встроенная микросхема генератора, работающая на частоте 32,768 кГц, и
первые 8 байт оперативной памяти используются для часов, календаря и
функций счетчика. Следующие 8 байт могут быть запрограммированы на
использование в качестве регистров сигнализации (функция будильника), или
же к ним можно обращаться как к свободным адресам памяти. Остальные 240
байт относятся к оперативной памяти.
Таблица 1. Назначение выводов микросхемы PCF8583.
Рисунок 3. Структурная схема часов / календаря PCF8583
Обозначения:
28
Обозначение | Вывод | Описание | |||||
OSC1 (OSCI) | 1 | Вход генератора на частоте 50 Гц или вход для импульса по событию. | |||||
OSC2 (OSCO) | 2 | Выход генератора. | |||||
A0 | 3 | Адресный вход. | |||||
VCC | 4 | Отрицательный импульс. | |||||
SDA | 5 | Последовательная линия данных. | |||||
SCL | 6 | Последовательная линия синхронизации. | |||||
INT | 7 | Выход прерывания с открытым стоком (активный низкий уровень выходного сигнала). | |||||
Vdd | 8 | Положительный импульс. |
PCF8583 OSCILLATOR – тактовый генератор;
POWER-ON RESET – сброс по включению питания;
I2C-BUS INTERFACE – интерфейс шины I2C;
DIVIDER – делитель;
CONTROL LOGIC – логика управления;
ADDRESS REGISTER – адресный регистр.
Таблица 2. Память RTC: регистровая модель
Микросхема PCF8583 содержит оперативную память объемом 256 байт с
8-битным
адресным
регистром,
осуществляющим
автоматическое
29
Назначение ячеек | Адрес | ||||||||||||||||||||||||||
Регистр управления / состояния | 00h | ||||||||||||||||||||||||||
Режим работы «часы» | Режим работы «счетчик событий» | ||||||||||||||||||||||||||
Регистры-счетчики | |||||||||||||||||||||||||||
Сотые доли секунды (BCD) | Младший байт счетчика событий (BCD) | 01h | |||||||||||||||||||||||||
Секунды (BCD) | Средний байт счетчика событий (BCD) | 02h | |||||||||||||||||||||||||
Минуты (BCD) | Старший байт счетчика событий (BCD) | 03h | |||||||||||||||||||||||||
Часы (BCD) | Свободный | 04h | |||||||||||||||||||||||||
Год / дата (BCD) | Свободный | 05h | |||||||||||||||||||||||||
Дни недели / месяц (BCD) | Свободный | 06h | |||||||||||||||||||||||||
Таймер (счет от 0 до 99 BCD), значение 1 тика определяется настройками регистра 08h | Таймер (счет от 0 до 99 в формате BCD), значение 1 тика определяется настройками регистра 08h | 07h | |||||||||||||||||||||||||
Будильник/сигнализация | |||||||||||||||||||||||||||
Регистр управления будильником/сигнализацией | 08h | ||||||||||||||||||||||||||
Регистры сигнализации | |||||||||||||||||||||||||||
Количество сотых долей секунды для сигнализации (BCD) | Младший байт количества событий для сигнализации (BCD) | 09h | |||||||||||||||||||||||||
Количество секунд для сигнализации (BCD) | Средний байт количества событий для сигнализации (BCD) | 0Ah | |||||||||||||||||||||||||
Количество минут для сигнализации (BCD) | Старший байт количества событий для сигнализации (BCD) | 0Bh | |||||||||||||||||||||||||
Количество часов для сигнализации (BCD) | Свободный | 0Ch | |||||||||||||||||||||||||
День месяца (года) для сигнализации (BCD) | Свободный | 0Dh | |||||||||||||||||||||||||
Месяц, день недели для сигнализации (BCD) | Свободный | 0Eh | |||||||||||||||||||||||||
Значение таймера для сигнализации (от 0 до 99 сотых долей секунды, секунд, минут, часов, дней в формате BCD), значение 1 тика определяется настройками регистра 08h | Значение таймера для сигнализации (таймер инкрементируется от 0 до 99 каждый импульс-событие, каждые 100 импульсов, каждые 10000, каждый 1000000, в формате BCD), значение 1 тика определяется настройками регистра 08h | 0Fh | |||||||||||||||||||||||||
ОЗУ данных | 10h- FFh |
инкрементирование адреса, встроенную микросхему генератора (частота 32,768
кГц), делитель частоты, последовательную двунаправленную шину I2C и схему,
осуществляющую сброс по включению питания.
Первые 16 байт ОЗУ (адреса памяти от 00 до 0F) представляют собой
адресуемые 8-битовые регистры специального назначения. Первый регистр
(адрес 00) используется в качестве регистра управления/состояния. Регистры по
адресам с 01 по 07 – счетчики для функций часов. Регистры, расположенные по
адресам с 08 по 0F, могут быть запрограммированы в качестве регистров
сигнализации (функция будильника) или использованы как обычные регистры
памяти (когда сигналы отключены).
Часы и календарь с ОЗУ 240 x 8 бит
Фильтр по
1-5 из 10 документы
Сортировать поРелевантностиНовости/ДатаОт А до ЯОт Я до А
Техническая спецификация
PDFRev 6. 06 октября 2010 г.549.0 KPCF8583Английский
Примечание по применению
PDFRev 1.014 марта 2013 г.763.2 KBAN10853Английский
Гид пользователя
PDFRev 7.01 октября 2021751.0 KBUM10204Английский, 日本語
Требуется авторизация
Гид пользователя
PDF Ред. 2.1 24 июля 2015 г.961.0 KBUM10301Английский
Гид пользователя
PDF Ред. 1.0 6 февраля 2012 г. 749.6 KBUM10528English
Требуется вход
Гид пользователя
PDFRev 1.013 июня 2006 г. 267.7 KBUM10206English
Требуется вход
Брошюра
PDF Ред. 1.0 8 апреля 2018 г. 1.1 MB75016543Английский
Информация о пакете
PDF Ред. 1.0 8 февраля 2016 г. 269.0 KBSOT176-1Английский
Руководство по выбору
PDFRev 4 20 июля 2020 г. 1.1 MBRTCSelectorGuideA4Английский
Вспомогательная информация
PDFRev 1.08 октября 20098.8 KBSO-SOJ-REFLOWАнглийский
Показать все
Подождите, пока загружаются защищенные файлы.
Mouser Electronics — Скоро вернусь…
- Сайт временно недоступен. Пожалуйста, свяжитесь с вашим местным отделением для получения немедленной помощи…
- 本网站暂时不可用。如需即时帮助,请联系您当地的分支机构。
- 本網站暫時無法使用,請與當地分公司聯絡尋求即時支援。
- Tato stránka je dočasně nedostupná. Pro okamžitou pomoc se prosím obraťte na svou místní pobočku.
- Le site est temporairement indisponible. Свяжитесь с местным агентством Veuillez для оказания немедленной помощи.
- Die Seite ist momentan nicht verfügbar. Bitte wenden Sie sich für sofortige Unterstützung an Ihre Regionale Niederlassung.
- Momentaneamente il site non è disponibile. Contatta la sede locale для немедленного получения помощи.
- El site estátempormente не подлежит оплате. Póngase en contacto con la officina local para recibir ayuda inmediata.
- Este site está Temporalmente fuera de servicio. Póngase en contacto con su concesionario local para recibir asistencia inmediata.
Область | Телефон | Факс | Электронная почта |
---|---|---|---|
Америка | |||
США (всемирная штаб-квартира) | 1 (800) 346-6873 | 1 (817) 804-3888 | sales@mouser. com |
Мексика | +52 33 3612 7301 | +52 33 3612 7356 | мексиканские продажи@mouser.com |
Азия/Тихий океан | |||
Гонконг, Китай | +852 3756-4700 | +852 3756-4701 | Гонконг@mouser.com |
Шанхай, Китай | +86 (21) 6360-6111 | +86 (21) 6360-0189 | шанхай@mouser. com |
Сингапур | +65 6788-9233 | +65 6542-6916 | сингапур@mouser.com |
Индия | +91 80 41148091/92 | +91 80 41148093 | Индия@mouser.com |
Тайвань | +886 (02) 2799-2096 | +886 (02) 2799-2095 | Тайвань@mouser. com |
Таиланд | +66 2694 2310 | +66 2694 2276 | таиланд@mouser.com |
Европа | |||
Германия (Европейская штаб-квартира) | +49 (0) 8952 04621 10 | +49 (0) 8952 04621 20 | [email protected] |
Великобритания | +44 (0) 1494-467490 | +44 (0) 1494-467499 | uk@mouser. com |
Чешская Республика | +420 517070880 | +420 517070881 | [email protected] |
Франция | +33 5 55 85 79 96 | +33 5 55 85 79 97 | [email protected] |
Израиль | +972 9 7783020 | +972 9 7458885 | israelsales@mouser. |