Бродин В. Б., Шагурин И. И. Микроконтроллеры (1999) (1095894), страница 42
Текст из файла (страница 42)
переключение осуществляется до обслуживания запроса прерываиия. Таким образом, интервал времени, связанный с обслуживанием прерывания, ие вклинивается в диаграмму формирования выходиого МИКРОКОНТРОЛЛЕРЫ АРХИТЕКТУРА ПРОГРАММИРОЕАНИЕ ИНТЕРФЕИС 208 сигнала.
Программно задавая уровень сигнала на выходе СЕХх пользователь задает тип перепада: «0»-«1», или «1»-«О». Флаг ССГх при обработке прерывания должен сбрасываться программно. Если в процедуре прерывания в регистры ССАРхН / ССАРхЕ новое значение не заносилось, то следующее совпадение произойдет через полный цикл таймера-счетчика. В процессе загрузки следует придерживаться методики, изложенной при описании предыдущего режима. Режим сторожевого таймера. Модуль 4 блока РСА может быть запрограммирован на выполнение функции 16-разрядного сторожевого таймера (ттаес)тт|ой е1тттег — ттт))Т).
В этом режиме при совпадении числа в таймере- счетчике с величиной, занесенной предварительно в регистры данных модуля, осуществляется сброс и инициализация микроконтроллера. Сброс микроконтроллера по истечении установленного времени является стандартным приемом выхода из зависаний программы управления. Рис. 2.22. Блок РСА е режиме Сторожевого таймера Чтобы перевести модуль 4 в режим сторожевого таймера, нужно установить биты ЕСОМ4 и МАТ4 регистра ССАРМ4, а также бит ЖЕРТЕ регистра СМО1). Необходимо, также, выбрать нужный вход для таймера-счетчика с помощью битов СРВО,СРЯ регистра СМОП. Далее следует загрузить 16- разрядное число для сравнения в регистры ССАР4Н/ССАР41.
и 16-разрядное начальное значение в таймер-счетчик СН/СЕ (можно использовать значение ООООН по сбросу). Разность между этими числами, умноженная на частоту входных импульсов РСА, определяет интервал времени, на который взведен сторожевой таймер. 209 ГЛАВА 2 ЫНК КОНТ ЛЛЕРЫ С ЕЙСТВА ЫСВ-51 1Е! Чтобы предотвратить сброс от сторожевого таймера РСА, имеется три возможности: е периодически менять сравниваемое число в ССАР4Н/ССАР41. так, чтобы совпадения не произошло; е периодически менять значения в таймере-счетчике так, чтобы совпадения не произошло; Ф очищать бит ЧЕРТЕ до совпадения, а затем вновь устанавливать его.
Второй вариант не рекомендуется применять, когда работают другие модули, поскольку все они пользуются временным отсчетом. Режим широтно-имлульсной модуляции. Все пять модулей блока РС А могут быть запрограммированы на режим ШИМ (рис. 2.23). При этом на выходах СЕХх выдаются модулированные сигналы, ширина импульсов которых определяется 8-разрядным разрешением. Это позволяет преобразовать цифровой код в аналоговый сигнал при помощи простой внешней схемы (например, интегрирующей цепочки). В этом режиме младший байт таймера-счетчика (СЕ) постоянно сравнивается с содержимым регистра ССАРх1..
Если СЕ<ССАРх(., то на выходе СЕХх уровень сигнала низкий. При совпадении сигнал на выходе приобретает значение «1» и остается таким, пока счетчик не достигает до конца (ООН). После этого выходной сигнал возвращается на низкий уровень, в регистр ССАРх)- загружается значение из регистра ССАРхН н начинается новый цикл счета. Число в ССАРхЕ определяет ширину импульса в текущем цикле, а число в ССАРхН определяет ширину импульса в следующем цикле. При РЕГИСТР РЕЖИМА ССАРМЛ, В=О. Е 2,3,4 Рио.
2.23. Блок РСА в режиме широтно-ивелульсного модулятора г1О ССАРхЕ - 0 ширина импульса составляет 100%, а при ССАРхЕ 225 она равна 0,4%. Частота сигнала на выходе ШИМ равна частоте сигнала на входе таймера-счетчика, деленной на 256. Самая высокая частота имеет место при входе Ровс/4. Если Ровс 16 МГц, то частота сигнала на выходе равна 15,6 кГц. Для перевода модуля в режим ШИМ нужно установить биты ЕСОМх и Р1ЧМх регистра ССАРМх. Далее следует определить вход посредством комбинации битов СРЯО, СРЯ! регистра СМО1).
Затем необходимо занести 8-разрядные числа в регистры ССАРх1. и ССАРхН. Наконец следует установить бит СК управления запуском таймера-счетчика в регистре ССОХ. 2.12.6. Система прерываний У микроконтроллеров 8ХС51РХ имеется семь источников прерываний (до- бавлено прерывание от блока РСА). Система приоритетов осталась четыре- хуровневой, кроме модели 8ХС51РА.
Формат регистров 1Е, 1Р, 1РН и назна- чение отдельных битов следующее: Имя Номер битв бита ЕА 1Е.7 Функция ЕТ1 1Е.З ЕХ1 1Е.2 ЕТО 1Е.1 ЕХО 1Е.О ЕС 1Е.О ЕТ2 1Е.5 ЕЯ 1ЕА миклоконтюллклы: ллкитвотлл лютллммиюакни инталеаяс ЕА ЕС ЕТ2 ЕБ ЕТ! ЕХ1 ЕТО ЕХО Запрещение запросов от всех источник<>в, имеет место при ЕА-0 Запрещение запроса от блока РСА, имеет место при ЕС 0 Запрещение запроса от Таймера 2, имеет место при ЕТ2 - 0 Запрещение запроса от последовательного порта, имеет место прн ЕБ - 0 Запрещение запроса от Таймера 1, имеет место при ЕТ1- 0 Запрещение запроса по входу 1ХТ1№, имеет место при ЕХ1-0 Запрещение запроса от Таймера О, имеет место при ЕТО - 0 Запрещение запроса по входу 1ХТО№, имеет место при ЕХО-0 РРС РТ2 РБ РТ! РХ1 РТО РХО ГРА е мт тР ллеРМ с ей 211 Функция 1РН вЂ” РРСН РАН РЯН РТ! Н РХ1Н РТОН РХОН Имя Номер Функция бита бита Вектор прерывания от блока РСА равен ООЗЗН.
При поллинге источники прерываний опрашива1отся в следующем порядке: Приоритеты прерываний ВХС5ЕРХ при ноллинге Источник Приоритатвнутриуровня Вход 1ХТО№ Высший Таймер О Вход 1ХТ1№ Таймер 1 Блок РСА Последовательный порт Таймер 2, флаг ТГ2 Таймер 2,флаг Т2ЕХ Низший Имя Ноя1ар бита бита 1Р.7 РРС !Р6 РТ2 1Р5 РЗ 1Р4 РТ1 1Р3 РХ1 1Р2 РТО 1Р.! РХО !РО 1РН.7 РРСН 1РН.6 РТ2Н 1РН.5 РЯН 1РНА РТ1Н 1РН.З РХ1Н 1РН.2 РТОН 1РН.! РХОН 1РН.О Зарезервирован Определяет приоритет блока РСА, младший бит Определяет приоритет Таймера 2, младший бнт Определяет приоритет последовательного порта, младший бит Определяет приоритет Таймера 1, младший бнт Определяет приоритет входа 1ХТ1№, младший бит Определяет приоритет Таймера О, младший бит Определяет приоритет входа 1ХТО№, младший бит Зарезервирован Определяет приоритет блока РСА, старший бнт Определяет приоритет Таймера 2, старший бит Определяет приоритет последовательного порта, старший бит Определяет приоритет Таймера 1, старший бит Определяет приоритет входа 1ХТ1№, старший бит Определяет приоритет Таймера О, старший бит Определяет приоритет входа 1ХТО№, старший бит МИКРОКОНТРОЛЛЕРЫ.
АРХИТЕКТУРА ПРОГРАММИРОВАНИЕ ИНТЕРФЕЙС 212 2.13. Микроконтроллеры типа 8ХС510В Эта группа объединяет наиболее функционально развитые, в настоящее время, микроконтроллеры семейства МСЯ-51. Увеличение степени интеграции кристаллов позволило, по сравненнто с младшими моделями, увеличить число параллельных портов ввода-вывода до шести, количество внешних входных сигналов прерывания до восьми, ввести второй блок РСА н аппаратно поддержать функцию сторожевого таймера уу'ОТ. Принципиальным нововведением является вклГочение в состав этих микроконтроллеров и архитектуры всего семейства 8-разрядного аналого-цифрового преобразователя. Изменена система прерываний. В целом, набор функциональных возможностей микроконтроллеров типа 8ХС51ОВ следующий: + 8-разрядное АЛУ с аппаратной реализацией операций типа умножение; Ф внутренняя память программ (8 Кбайт в моделях 83С51ОВ, 87С51ОВ; 16 Кбайт в модели 8351ОВ-1; 32 Кбайт в модели 8751ОВ-1); ЕР внутреннее ОЗУ данных 256 байт; Ф шесть универсальных программируемых параллельных 8-разрядных портов; Ф три 16-разрядных программируемых счетчика-таймера; 1 дуплексный последовательный порт с расширенными возможностями; + дополнительный последовательный порт БЕР; ЕР два блока РСА; + блок сторожевого таймера ЖПТ; + система прерываний: 8 внешних источников, 15 векторов, 4 уровня при- оритетов; + 2 режима пониженного энергопотребления; Ф 3 уровня защиты памяти; + релсим отладки 01ХСЕ.
Расширение набора выполняемых функций потребовало применить корпус с увеличенным количеством выводов (68РЕСС). Функции выводов микроконтроллеров тигщ 8ХС51ОВ приведены в таблице ниже. 1Уежим отладки ОО1СЕ, режимы пониженного энергопотребления, алгоритм программирования внутреннего ПИЗУ, методы защиты внутренней памяти программ у микроконтроллеров 8ХС51СВ аналогичны рассмотренным ранее и полностью соответствуют архитектуре семейства МСЯ-51. ГЛАВА е микРОкОнтРОллеРы с мейстВА мса"В1 151 г1З Табл.
2.2. Функции выводов микроконтроллеров типа 8ХС81ВВ Имя альтер- нативной Имя бита Номер вывода Функция нкции РОО..Р0.7 65..68, 1..4 АРО..А07 Р1.0 Т2 Т2ЕХ Р1.1 23 Р1.2 Р1.3 24 25 ЕС! СЕХО СЕХ1 Р1.4 26 27 СЕХ2 Р1.5 Р!.6 28 СЕХЗ Р1.7 СЕХ4 Ста шнй байт ад са Р2.0..Р2.7 57.,64 А8..А15 Р4.0 Р43 Р4.2 Р4.3 ЗЕРСЕК ЗЕР!7АТ ЕС!! С1ЕХО Р4.4 9 Р4.5 10 Р4.6 11 Р4.7 12 С!ЕХ1 С1ЕХ2 С1ЕХЗ С!ЕХ4 РЗ.О Р3.1 Р3.2 РЗ.З РЗА Р3,5 РЗ.О Р3.7 31 32 33 34 35 36 37 38 Вх17 Тх17 11>!ТО№ 1ЫТ! № ТО Т! '1АГВ№ к!7№ М льтиплекси ванная шина ад с-данные Вход тактовых импульсов. Выход импульсов, формиремых Таймером 2 Вход управления перезагрузкой и фиксацией, направлением счета Таймера 2 Вход тактовых импульсов блока РСА Модуль 0 блока РСА. Вход при фиксации, выход при сравнении и ШИМ Модуль 1 блока РСА.
Вход при фиксации, выход при сравнении и ШИМ Модуль 2 блока РСА. Вход при фиксации, выход при сравнении и ШИМ Модуль 3 блока РСА. Вход при фиксации, выход прн сравнении н ШИМ Модуль 4 блока РСА. Вход при фиксации, выход п и с авнении и ШИМ Вход приемника последовательного порта Выход передатчика последовательного порта Вход внешнего прерывания 0 Вход внешнего прерывания 1 Вход внешних тактовых импульсов Таймера 0 Вход внешних тактовых импульсов Таймера 1 Строб записи во внешнюю память Ст чтения из внешней памяти Выход частоты БЕР Вход-выход данных ЗЕР Вход тактовых импульсов блока РСА1 Модуль Облока РСА1. Вход при фиксации, выход прн сравнении и ШИМ Модуль 1 блока РСА1. Вход при фиксации, выход при сравнении и ШИМ Модуль 2 блока РСА!. Вход при фиксации, выход при сравнении и ШИМ Модуль 3 блока РСА1.
Вход при фиксации, выход при сравнении н ШИМ Модуль 4 блока РСА1. Вход при фиксации, выход и и с авнении и ШИМ г14 Табл. 2.2 (продолжение). Функции выводов микроконтроллеров типа 8ХС81ГЗВ Имя альтернативной нкцни Имя бита Номер вывода Функция Р5.0 Р5.1 Р5.2 Р5.3 Р5.4 Р5.5 Р5.5 Р5.7 14 15 1О 17 18 19 19 21 Нег Нет Вход внешнею прерывания 2 Вход внешнего прерывания 3 Вход внешнего прерывания 4 Вход внешнего прерывания 5 Вход внешнего прерывания 5 Нет 1ХТ2 1ХТЗ 1ХТ4 1ХТ5 1ХТ5 !3 ЗО 39 40 41 42 43 44 45 46 47 48 49 50 51 52 ХТА1.2 РЗЕХ№ А1.Е 53 54 55 РКОС№ ЕА№ Рассмотрим структурные нововведения, связанные именно с этой производ- ственной группой.