выключение внешних устройств в заданное время. Часы могут быть реализованы
как программно, так и аппаратно.
Программная реализация требует решения многих проблем. При аппаратной
реализации основная задача – передать показания электронных часов на шину
данных. Желательно также иметь возможность по командам блока управления
корректировать показания часов, устанавливать время срабатывания
будильника.
К сожалению, большинство БИС, предназначенных для электронных часов,
нельзя непосредственно связать с блоком управления. Для этого необходимо
разработать довольно сложную схему сопряжения. Но, в настоящее время
промышленностью выпускается микросхема 512 ВШ, специально предназначенная
для работы в составе микропроцессорных устройств в качестве часов реального
времени с будильником, календарем, а также ОЗУ общего назначения ёмкостью
50 байт.
Микросхема выполнена по КМОП технологий, питается от одного источника
питания от 3 до 8 В. Потребляемая мощность очень мала, что позволяет питать
микросхему от автономного источника (батареи), сохраняя при этом, при
отключении основного источника питания микропроцессорной системы,
правильный ход часов и информацию, занесенную во внутреннее ОЗУ.
|Время цикла записи или |Uп |
|считывания информации | |
|1 мкс |5 В |
|до 5 мкс |3 В |
Микросхема совместима по логическим уровням с микросхемами ТТЛ. Все выводы
допускают нагрузку током до 10 мА.
Условное обозначение и основная схема включения:
+5 В
R2 +4+6В
C1 R1 VD2 18
VD1
C2 22
К шине 19
AD0[pic]AD7
микропроцессора
к
мик-
ропро-
23 цессор
К шине ной
Управления 21 сис-
теме
С3
3
R4
С4 R3
Можно использовать резонаторы, имеющие резонансную частоту:
1) 32768 Гц
2) 1048576 Гц
3) 4194304 Гц
Ток потребления зависит от fr.
f=32768 Гц In[pic]мкА
при [pic]f Iпотр может доходить до 4 мА.
Сигнал тактового генератора можно снять с выхода CKOUT для
использования в других устройствах системы. Он поступает на этот вход
непосредственно (CKFS=1) или после деления частоты на четыре (CKFS=0).
Микросхема имеет выход ещё одного сигнала (SQW), получаемого делением
частоты тактового генератора. Коэффициент деления задается командами,
поступающими от процессора. Включается и выключается этот сигнал также
командами процессора.
Распределение памяти микросхемы 512ВИ1:
|Адрес |Данные |
|00Н |Секунды |
|01 |Секунды (будильник) |
|02 |Минуты |
|03 |Минуты (будильник) |
|04 |Часы |
|05 |Часы (будильник) |
|06 |День недели |
|07 |День месяца |
|08 |Месяц |
|09 |Год |
|0А |Регистр А |
|0В |Регистр В |
|0С |Регистр С |
|0D |Регистр D |
|OE-3 FH |ОЗУ общего назначения |
Микросхема связана с микропроцессором через двунаправленную
мультиплексированную шину адреса – данных (AD0[pic]AD7). Для управления
записью и считыванием информации служат входы [pic] (выбор микросхемы), AS
(строб, адреса), DS (строб данных) и R/[pic] (чтение – запись).
[pic] - «1» шина AD, входы DS и R/[pic] отключены от шин процессора и
снижается мощность потребления.
[pic] - «0» должен сохраняться неизменным во время всего цикла записи
и чтения.
Сигнал AS подается в виде положительного импульса во время наличия
информации об адресе на шине AD0[pic]AD7. Адреса записываются во внутренний
буфер микросхемы по срезу этого импульса.
В этот же момент анализируется логический уровень сигнала на входе DS
и в зависимости от него устанавливается дальнейший режим работы входов DS и
R/[pic]. В нашем случае на вход AS подаем сигнал ALE, который генерируется
процессором для фиксации адреса.
Если при AS – «1»-[pic] «0» DS – «0», то
запись производится при DS – «1», R/[pic]-«0»,
а чтение производится при DS – «1», R/[pic]-«1».
Если во время среза импульса AS (AS – «1» [pic] «0») DS – «1», то для
считывания необходимо DS-«0» R/[pic]-«1»,
а для записи DS-«1» R/[pic]-«0».
Такая сложная логика используется для подключения к микропроцессорам
различных типов. На вход R/[pic] будем подавать сигнал WR, а на вход DS-RD,
которые генерируются процессором.
Выход [pic] (запрос прерывания) предназначен для сигнализации
процессору о том, что внутри микросхемы произошло событие, требующее
программной обработки. Прерывания бывают 3-х типов:
1) после окончания обновления информации
2) по будильнику
3) периодические (с периодом SQW)
Вход [pic]предназначен для установки в исходное состояние узлов
микросхемы, ответственных за связь с микропроцессорной системой. [pic] -
«0» – никакое вмешательство со стороны процессора невозможно. На ход часов,
календарь и содержание ячеек ОЗУ этот вход не влияет.
Вход PS (датчик питания) – контроль непрерывности подачи питающего
напряжения. Он подключается таким образом, чтобы напряжение на нем падало
до 0 при любом, даже кратковременном отключения питания микросхемы.
Для управления работой микросхемы и анализа её состояния предназначены
регистры А…D.
Формат управляющих регистров:
|Адрес |D7 |D6 |D5 |D4 |D3 |D2 |D1 |D0 |
|OAH |UIP* |DV2 |DV1 |DV0 |RS3 |RS2 |RS1 |RS0 |
|OBH |SET |PIE |AIE |VIE |SQWE |DM |24/12 |DSE |
|OCH |IRQF* |PF* |AF* |VF* |O* |O* |O* |O* |
|ODH |VRT* |O* |O* |O* |O* |O* |O* |O* |
* - можно только считывать информацию.
Регистр А.
UIP – единица в этом разряде означает, что происходит или начнется
менее чем через 244 мкс обновление информации о времени. На UIP не
действует сигнал [pic]. Записав единицу в разряд SET регистра В, можно
запретить обновление и тем самым сбросить UIP.
DVO…DV2 – устанавливает режим работы внутреннего делителя частоты в
соответствии с используемой опорной частотой.
Установка опорной частоты:
|DV2 |DV1 |DV0 |Частота |
|0 |0 |0 |4194304 Гц |
|0 |0 |1 |1048576 Гц |
|0 |1 |0 |32768 Гц |
|1 |1 |0 |сброс делителя |
RS0…RS3 – устанавливает частоту сигнала на входе SQW и период
повторения периодических колебаний.
|RS3 |RS2 |RS1 |RS0 |f, Гц |Т (4194304 |f |T |
| | | | | |1048576) | |(32768) |
|0 |0 |0 |0 |- |- |- |- |
|0 |0 |0 |1 |32768 |30,517 мкс |256 |3,90625 мс |
|0 |0 |1 |0 |16384 |61,035 мкс |128 |7,8125 мс |
|0 |0 |1 |1 |8192 |122,07 мкс |8192 |122,07 мкс |
|0 |1 |0 |0 |4096 |244,14 мкс |4096 |244,14 мкс |
|0 |1 |0 |1 |2048 |488,28 мкс |2048 |488,28 мкс |
|0 |1 |1 |0 |1024 |976,56 мкс |1024 |976,56 мкс |
|0 |1 |1 |1 |512 |1,95312 мс |512 |1,95312 мс |
|1 |0 |0 |0 |256 |3,90625 мс |256 |3,90625 мс |
|1 |0 |0 |1 |128 |7,8125 мс |128 |7,8125 мс |
|1 |0 |1 |0 |64 |15,625 мс |64 |15,625 мс |
|1 |0 |1 |1 |32 |31,25 мс |32 |31,25 мс |
|1 |1 |0 |0 |16 |62,5 мс |16 |62,5 мс |
|1 |1 |0 |1 |8 |125 мс |8 |125 мс |
|1 |1 |1 |0 |4 |250 мс |4 |250 мс |
|1 |1 |1 |1 |2 |500 мс |2 |500 мс |
Регистр В.
SET – если в этом разряде записан “0”, то каждую секунду выполняется
цикл обновления информации о текущем времени и сравнение текущего времени с
заданным. Единица в этом разряде запрещает обновление, позволяя записать в
регистры начального значения времени, календаря, будильника.
PIE – разрешение прерываний с периодом, задаваемым PS0[pic]PS3.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12