- •3.4.1 Введение 65
- •Содержание курса
- •Введение в системы управления
- •Датчики
- •Принципы построения систем управления и контроля рэсбн
- •Однокристальные контроллеры
- •Системы дистанционного управления
- •Определения и термины
- •Характеристика системы ду rc-5
- •Архитектура системы ду по протоколу rc-5
- •Система дистанционного управления по протоколу rc-5
- •Протокол передачи в системе ду rc-5
- •Пульт ду на основе контроллера рса84с122а
- •Передатчик команд ду по протоколу rc-5 saa3010
- •Приемная часть системы ду
- •Система rc-5 и распределение команд
- •Система дистанционного управления по протоколу itt
- •Архитектура системы ду
- •Синтез сигналов ду по протоколу itt
- •Пульт ду на основе передатчика команд saa1250
- •Приемная часть системы ду
- •Шины управления и обмена информацией
- •Введение
- •Шина i2c
- •Концепция i2c-шины
- •Общие характеристики
- •Передача бита
- •Условия start и stop
- •Передача данных в i2c – шине
- •Байтовый формат
- •Подтверждение приема (квитирование)
- •Синхронизация
- •Арбитраж
- •Формат 7-и битной адресации
- •Особенности 7-и битной адресации
- •Расширенная спецификация i2c-шины
- •Введение
- •Электрические и временные характеристики i2c-шины
- •Адаптер параллельного порта принтера
- •Однокристальная эвм архитектуры mcs-51
- •Структура оэвм км1816ве51
- •Организация памяти мк51
- •Память программ
- •Память данных
- •Регистры специального назначения
- •Устройство управления и синхронизации
- •Порты ввода/вывода
- •Доступ к внешней памяти
- •Доступ к внешней памяти программ
- •Доступ к внешней памяти данных
- •Совмещение адресов впп и впд
- •Таймеры/счетчики
- •Последовательный порт
- •Режимы работы уапп
- •Скорость передачи
- •Режимы пониженного энергопотребления
- •Система прерываний
- •Источники прерываний
- •Приоритеты прерываний
- •Процесс прерывания
- •Запись в память программ мк51
- •Система команд оэвм кр1816ве51
- •Команды передачи данных
- •Арифметические команды
- •Логические команды
- •Команды операций с битами
- •Команды передачи управления
- •Пример составления простейших программ для оэвм кр1816ве51
- •Микропроцессорная система на основе оэвм кр1816ве51
- •Развитие архитектуры mcs-51
- •Отображение и ввод информации в брэа
- •Термины и определения
- •Вакуумные люминесцентные индикаторы
- •Жидкокристаллические индикаторы
- •Принцип действия и конструктивные модификации
- •Управление жки
- •Долговечность жки
- •Полупроводниковые знакосинтезирующие индикаторы
- •Единичные ппзси
- •Многоэлементные ппзси
- •Другие типы индикаторов
- •Ввод информации в микро-эвм
Режимы пониженного энергопотребления
Для применений, где потребление энергии критично, например, при питании от батарей, МК51 имеет два режима пониженного энергопотребления: режим ожидания Idle (холостого хода) и режим микропотребления PD (Power Down). Для активизации этих режимов требуется установить соответствующие биты PCON.0 (IDL) или PCON.1 (PD) (таблица 4.9)
Режим ожидания. При поступлении команды, которая установит бит IDL, МК переходит в режим ожидания (холостого хода). В контроллере работает внутренний тактовый генератор, работает схема прерываний, таймеры и последовательный порт. Останавливается процесс выборки команд, сохраняются данные в регистрах и на разрядах портов.
Для выхода из режима ожидания можно воспользоваться одним из двух способов:
аппаратный сброс. Используется сигнал сброса
.
При этом переопределяются многие
регистры блока специальных функций,
но сохраняется содержимое РПД;
прерывание. Активизация любого разрешенного прерывания приведет к сбросу бита IDL, вызову программы обслуживания прерывания и возврату в основной программе к команде, следующей за командой, которая включила режим ожидания.
Режим пониженной мощности. При выполнении команды, которая установит бит PD, МК перейдет в режим низкого потребления Power Down. В этом режиме выключается работа тактового генератора, все функции МК замораживаются, но РПД и блок регистров специальных функций сохраняют свои значения. Напряжение питания схемы при этом можно понизить до +2 В. Важно не понижать напряжение до самого момента включения режима Power Down, иначе может произойти аппаратный сброс.
Для выхода из данного режима можно использовать аппаратный сброс, или разрешенное прерывание от внешнего источника. Перед выходом из режима необходимо восстановить нормальный уровень питания и удержать его не менее 10-3 с. В этом случае успеет запуститься тактовый генератор, и его частота станет стабильной к моменту активизации МК.
Система прерываний
Источники прерываний
МК51 имеет пять источников прерываний (внешние прерывания , , прерывания от таймеров Т0, Т1 и прерывания от последовательного порта).
Внешние прерывания. Прерывания и могут быть вызваны либо уровнем, либо отрицательным перепадом на одноименных входах МК. Выбор определяется состоянием программно изменяемых бит IT0 и IT1 регистра TCON (TCON.0, TCON.2). При значении соответствующего бита «1», данное внешнее прерывание вызывается отрицательным перепадом.
Для генерации внешних прерываний используются флаги IE0 и IE1, находящиеся в регистре TCON (TCON.1, TCON.3). Если прерывание было вызвано отрицательным перепадом, то биты прерывания сбрасываются при вызове программы обслуживания прерываний. Если прерывание вызвано низким уровнем внешнего сигнала, то сброс флагов прерывания связан со снятием активного уровня запроса прерывания.
При формировании запроса прерывания по перепаду высокий и низкий уровни входных сигналов должны удерживаться не менее одного машинного цикла.
Если внешние прерывания или вызываются низким уровнем сигнала, внешний источник должен удерживать активный уровень до вызова программы обслуживания прерывания. Запрос необходимо снять до завершения программы прерывания.
Прерывания таймеров. Прерывания вызываются флагами TF0 и TF1 регистра TCON (TCON.5, TCON.7). Флаги устанавливаются при переполнении соответствующего таймера/счетчика. Флаги сбрасываются аппаратно при вызове программы прерывания.
Прерывания последовательного порта. Прерывание от последовательного порта вызывается при единичном значении одного из флагов RI или TI регистра SCON (SCON.0, SCON.1). Значения флагов проверяются по логическому условию ИЛИ. Программа обслуживания прерывания от последовательного порта должна сама определить флаг, вызвавший прерывание, и сбросить его программно.
Все перечисленные флаги прерываний программно доступны, поэтому программа пользователя может вызвать любое прерывание и сбросить его флаг аналогично аппаратной реакции и с тем же результатом. Таким способом можно отлаживать соответствующие программы обслуживания прерываний или выполнять их для нужд решаемой задачи.
За векторами прерываний (таблица 4.10) закреплены фиксированные адреса, по которым должны находиться команды безусловного перехода на начало соответствующей программы обслуживания прерывания.
Таблица 4.10 - Адреса векторов прерываний
Источник прерывания |
Бит запроса прерывания |
Сбрасывается аппаратно |
Адрес вектора |
INT0 |
IE0 |
Нет (уровень) Да (переход) |
0003H |
Таймер 0 |
TF0 |
Да |
000BH |
INT1 |
IE1 |
Нет (уровень) Да (переход) |
0013H |
Таймер 1 |
TF1 |
Да |
001BH |
Последователь-ный порт |
RI, TI |
Нет |
0023H |
В системе прерываний МК51 имеется возможность индивидуально разрешать и запрещать реакцию системы на любое прерывание. Кроме этого имеется возможность группового запрета всех прерываний, независимо от индивидуального разрешения/запрета.
Для управления процессом разрешения и запрета используется специальный регистр масок прерываний IE (таблица 4.11).
При разрешении некоторого прерывания требуется отменить запрет всех прерываний (EA=1), и установить нужный бит. Если сбросить бит (EA=0), все прерывания запрещаются, независимо от индивидуального разрешения.
Таблица 4.11 - Регистр IE
Такой способ группового запрета позволяет быстро и просто на заданное время сделать систему нечувствительной к запросам прерываний (например, для выполнения важной процедуры, чувствительной к времени выполнения).
