А
МИКРОКОНТРОЛЛЕРЫ
1
- комбинация “10” - при каждом совпадении содер-
жимого счетного регистра таймера 1 и регистра
ОСР1А на линии В[1] появляется сигнал лог.О;
- комбинация “11" - при каждом совпадении содер-
жимого счетного регистра таймера 1 и регистра
00131А на линии В[1] появляется сигнал лог.1.
И, наконец, еще один регистр, тесно связанный с
таймерами - регистр специальный функций вБЮ т Его
формат:
- бит 2 - принудительное изменение сигнала на ли-
нии В[1] в соответствии с установками битов 4 и 5 ре-
гистра ТСС131. При записи лог.1 в этот бит сигнал на
линии В[1 ] изменяется так, как если бы сравнение счет-
ного регистра и О С т А уже произошло. Этот бит не
действует на выходной сигнал, если таймер 1 вклю-
чен в режиме ШИМ. При чтении этот бит всегда со-
держит лог.О;
- бит 1 - ручной сброс предварительного делителя
частоты для таймера 1;
- бит 0 - ручной сброс предварительного делителя
частоты для таймера 0.
Регистры ЭСППЗУ
Таких регистров, как и в микроконтроллере
КР1878ВЕ1, в АТТту15 три. Назначение их аналогич-
но назначению таковых в КР1878ВЕ1, но формат уп-
равляющего регистра ЕЕСИ иной:
- бит 3 - разрешить прерывания по окончанию опе-
рации с ЭСППЗУ;
- бит 2 - разрешить запись данных в ЭСППЗУ;
- бит 1 - записать данные в ЭСППЗУ;
- бит 0 - прочитать данные из ЭСППЗУ.
Остальные биты в регистре ЕЕСИ не используют-
ся и должны быть установлены в лог.О. Два бита - бит
разрешения записи и бит записи, - используются для
занесения информации в ЭСППЗУ. Порядок записи
данных в ЭСППЗУ следующий:
- убедиться, что предыдущая операция записи за-
кончена (бит 1 равен лог.О);
- занести в регистр адреса ЕЕДИ адрес записыва-
емого в ЭСППЗУ байта;
- занести в регистр данных ЕЕОИ значение запи-
сываемого байта;
- установить бит 2 в регистре ЕЕСИ;
-
н е п о з д н е е
чем через 4 машинных цикла устано-
вить бит 1 в регистре ЕЕСИ.
Если за 4 машинных цикла операция записи не бу-
дет запущена, бит 2 автоматически сбрасывается ап-
паратурой в лог.О. Со сброшенным битом 2 запуск опе-
рации записи невозможен. Такой “странный” способ
записи продиктован желанием разработчиков защи-
тить содержимое ЭСППЗУ от ошибочных действий
программы. В качестве аналогии достаточно вспом-
нить регистр управления сторожевого таймера
КР1878ВЕ1 - в него перед записью данных тоже необ-
ходимо вначале прописать характерный код, иначе за-
пись данных произведена не будет. Особенность рабо-
ты с ЭСППЗУ в микроконтроллерах АТМЕ1_ - высокая
скорость чтения: считываемые данные в регистре
ЕЕОИ будут готовы уже следом за командой установ-
ки бита чтения в регистре ЕССИ, поэтому техники при-
менения теневого ОЗУ при работе с ЭСППЗУ в мик-
роконтроллерах АТМЕ1. не требуется (тем более, что
там нет и ОЗУ). Впрочем, эта техника в любом случае
оказывается быстрее, чем обращение к ЭСППЗУ; по-
этому в микроконтроллере АТМЕда128, где объем ОЗУ
составляет 4 кБайт, автор вновь будет рекомендовать
использовать теневое ОЗУ.
При использовании прерываний от ЭСППЗУ следу-
ет иметь в виду одну неприятную особенность - пре-
рывание по окончанию записи генерируется микрокон-
троллером не однократно, как можно было бы ожидать,
а беспрерывно, пока в регистре ЕЕСИ не будет “ручка-
ми” сброшен бит разрешения прерываний. Делать это
необходимо в обработчике прерываний от ЭСППЗУ. На-
звать причину столь странного решения разработчи-
ков микроконтроллера автор затрудняется.
Регистр сторожевого таймера
Как и в КР1878ВЕ1, сторожевой таймер управля-
ется всего одним регистром У\ЮТСР:
- бит 4 - разрешение отключения сторожевого тай-
мера;
- бит 3 - отключение сторожевого таймера (лог.О);
- биты 2.
.0 - коэффициент деления предваритель-
ного делителя таймера. Комбинация “ООО” соответству-
ет генерации сигнала сброса микроконтроллера пос-
ле выполнения 16 тыс. машинных циклов, “001” - 32
тыс. машинных циклов и т.д. вплоть до комбинации
“111” - 2048 тыс. машинных циклов.
Для отключения сторожевого таймера требуется
вначале одной командой установить биты 4 и 3 реги-
стра \Л/0ТСП в лог.1, а затем не позднее 4 машинных
циклов сбросить бит 3 в регистре. Та же последова-
тельность действий используется для запуска тайме-
ра в работу, но там бит 3 устанавливается в лог.1 -
идея защиты сторожевого таймера от ошибок програм-
мы реализована таким же способом, что и защита ЭС-
ППЗУ. Для периодического сброса сторожевого тай-
мера в микроконтроллерах АТМЕЦ в отличие от
КР1878ВЕ1, предусмотрена специальная команда \«с!г.
Регистр аналогового компаратора
Аналоговый компаратор встроен в микроконтрол-
лер А"ГПпу15 и позволяет выполнять сравнение вели-
чин двух аналоговых сигналов. Один из аналоговых
сигналов (положительный, или неинвертирующий,
вход) необходимо подавать на линию В[0], второй (от-
рицательный, или инвертирующий, вход) - на линию
В[1]. Когда сигнал на входе В[0] больше сигнала на
входе В[1], выходной сигнал компаратора-лог.1, ина-
че - лог.О. В качестве источника положительного сиг-
нала на вход компаратора можно вместо линии В[0]
подключить внутренний стабилизированный источник
напряжения 1,22 В. По результатам сравнения может
быть сгенерирован сигнал прерывания.
32
[| Радиолюбитель - 0 6 /2 0 0 7
предыдущая страница 32 Радиолюбитель 2007-06 читать онлайн следующая страница 34 Радиолюбитель 2007-06 читать онлайн Домой Выключить/включить текст