Бродин В. Б., Шагурин И. И. Микроконтроллеры (1999) (1095894), страница 21
Текст из файла (страница 21)
Структура аналого-цифрового преобразователя (СВХ), которая сохраняет выбранный потенциал в течение времени, необходимого для преобразования, и схему преобразования (СП), работающую по алгоритму последовательных приближений. Первый каскад этой схемы, реализованный на базе 256-ярусного резистивного делителя, позволяет получить 8-разрядный код результата; второй каскад, использующий метод взвешивания заряда с помощью емкостных связей, увеличивает точность преобразования в четыре раза, обеспечивая получение 10-разрядного результата. Для питания аналоговой части, а также регистра РО Р1Х, используется отдельный источник, подключаемый к выводам питания Чап и земли Чаз.
Этот же источник служит для питания датчиков аналоговых сигналов. Вывод Чаз должен быть соединен с выводом Чз. Значения потенциалов Чап, Чаз определяют шаг преобразования (квантования) Чш, величина которого равна Чш - (Чап-Чаз)/256 при 8-разрядном результате и Чш (Чап-Чаз)/1024 при 10-разрядном результате. Рекомендуемое значение Чап - 5, 12 В, при этом ошибка квантования, равная Чш/2, составляет 10 мВ при 8-разрядном или 2, 5 МВ при 10-разрядном преобразовании. Допустимый диапазон входных напряжений Чвх - (Чап..Чаз).
В регистр А)) ВЕЯП(.Т при 8-разрядном преобразовании заносится двоичный код Х = 255 (Чвх-Чаз)/(Чап-Чаз)- 255 Чвх/Чап, при 10-разрядном преобразовании Х = 1023 (Чвх-Чаз)/(Чап— -Чаз) = 1023 Чвх/Чап. Режим работы АЦП определяется содержимым регистра АО СОММАХ1) (рис. 1.38а), в котором поле АР СНАХ БЕЕ задает номер вывода 4..7 порта Р0, используемого в качестве аналогового входа, бит СО указывает способ запуска преобразователя, поле А1) МОВŠ— вид преобразования (табл. 1.30).
При значении ОО - 1 преобразователь запускается сразу после загрузки регистра АО СОММАХ(), при ОО - 0 запуск АЦП осуществляется сигналом, поступаТошнм от процессора событий. Помимо обычного 8- или 10-разряд- микРОкОнтРОллеРы: АРхитектуРА. НРОГРаммироеани интеРФейс 102 ного преобразования АЦП может быть запрограммирован для выполнения сравнения входного потенциала с пороговым значением, величина которого Чпп задается загрузкой в регистр последовательного приближения (адрес 1ГАВН) 8-разрядного числа А: Чпп - А (Чап-Чаз)/256. В результате сравнения вырабатывается запрос прерывания АР РОХЕ, если входной потенциал Чвх больше Чпп (прн АР МОРЕ - 10) или меньше Чпп (при АР МОРЕ - 11).
7 6 5 4 з г 1 6 аариериивиаио Ап МООЕ ОО АО СНАХ 5Ей ° ) АП СОММАХП (аарои !ГАСН) 5 4 СОХ)Т 5АМ 6) АО Т(МЕ (алри: !РАЕН) 4 З 2 1 О :Фроериироиаио о) АП ТЕЕТ (аароо !РАЕН) 15 6 5 4 3 2 1 6 АП ЕЕЯП.Т:мраприироиви АО 5ТАТО5 АО СНАХ ХОМ и) АП ЕЕЯЛ.Т (акрос !ЛААН) Рис.
1.33. Формат регистров АО СОММАНО, АО Т!МЕ, АО ТЕНТ, АО ЕЕЗКИ.Т Регистр АР Т1МЕ (рис. 1.386) определяет время Тз, необходимое для накопления входного потенциала схемой выборки-хранения и времени аналого-цифрового преобразования Тс. Время накопления определяется выражением Тз " 2 (45+1)/Гс, где 5 — двоичное число, указанное в поле БАМ регистра Табл. 1.30. Режимы работы АЦП МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА МСЕ-ЕЕ 1ОЗ АП Т1 МЕ. Для микроконтроллеров 8ХС196ХТ величина Я должна иметь такое значение, чтобы время Те было не менее 1 мкс.
Время преобразования определяется выражением Тс - (2В (С+1)+3)/Гц где  — число разрядов в результате (8 или 10), С вЂ” число, указанное в поле СОХЧ регистра АП Т1МЕ. Величина Тс должна находиться в диапазоне 10..15 мкс прн В - 10 и 7..20 мкс при В - 8. Таким образом, содержимое регистра АП Т1МЕ задает общее время преобразования, которое равно (Тз + Тс). Ввод содержимого АП Т1 МЕ должен производиться до загрузки регистра АП СОММАХО.
АЦП может также использоваться для определения величины потенциалов Нап, Чаз. Если в регистре А() ТЕ5Т (рис. 1.38в) установлен бит ТЕ- 1, то при ТЧ - 1 в регистр АО КЕЯПТ заносится величина потенциала Чап, а при ТЧ - 0 — величина Чаз. Обычно эти потенциалы определяются до начала измерений входных потенциалов, чтобы вычислить ошибку измерения из-за отклонения Чап, Чаз от номинальных значений. Для компенсации атой ошибки в поле ОРГ5ЕТ регистра АО ТЕ5Т вводится двух- разрядный код (табл. 1.31), задающий вычисленное с помощью специальной программы напряжение смещения пуля: +2, 5 мВ, -2, 5 мВ или -5, 0 мВ. Табл.1.31. Задаваемые значения напряжения смещения нуля Результат аналого-цифрового преобразования считывается из 16-разрядного регистра АП КЕЯЛ.Т (рис.
1.38г). В старших 8 или 10 разрядах регистра (поле АП КЕНЕШ.Т) содержится число Х, определяющее величину выбранного потенциала Чвх или Нап, Чаз. Младшие три разряда (поле АП СНАХ ХУМ) указывают номер выбранного вывода (соответствует полю АП СНАХ БЕЕ в регистре АП СОММАХ1)). Бит А1Э ОСТАТОК принимает значение «1» спустя восемь тактов после начала преобразования; после завершения преобразования устанавливается АВ ШТАТ()5-0. 1.8.8. Особенности функционирования процессора событий и реализации прерываний Обработка временных интервалов осуществляется в микроконтроллере 8ХС196ХТ с помощью процессора событий (ПРС), реализованного на базе таймеров Т! МЕК1 и Т1МЕК2.
Основными особенностями их функционирования по сравнению микроконтроллерами 8ХС196ХР, Х() являются миклоконтлоллелм. ллкитектк л леоглкммиеоални интелесно 104 существенное увеличение числа модулей в ПРС: десять модулей захвата- сравнения ЕРА9..0 и два модуля сравнения СОМР1, О, а также возможность использования модулей ПРС для запуска АЦП. Функционирование модулей ЕРА описано в разделе 1.6. Режим работы каждого модуля определяется содержимым регистра управления ЕРАх СОХ (рис. 1.22), в котором зарезервированный бит 2 используется в качестве бита АП, запускатощего АЦП: при значении этого бита АВ - 1 поступление сигнала на вход модуля Е РАх (в режиме захвата) или формирование сигнала на выходе этого модуля (в режиме сравнения) вызывают запуск АЦП.
Формат содержимого регистров ЕРАх СО)т) с номерами х - О, 2, 4, 5..9 соответствует рис. 1.22а, регистров с номерами х - 1, 3 — рис. 1.226. Модули ЕРА7..0 используют в качестве входов и выходов выводы Р1.7..0 порта Р1; модули ЕРА8 и СОМРО используют совместно вывод Р6.0, модули ЕРА9 и СОМР1 — вывод Р6.1 порта Р6. Эти выводы должны быть запрограммированы для выполнения специальных функций. Модули СОМРО, 1 функционируют аналогично модулям ЕРА, работающим в режиме сравнения (см.
раздел 1.5). Каждый из модулей содержит регистр управления СОМРх СОХ и регистр СОМРх Т1МЕ, определяющий время формирования выходного сигнала аналогично регистру ЕРАх Т1МЕ. Формат содержимого регистра СОМРх СОИ приведен на рис. 1.39. Бит СЕ разрешает (при СЕ " 1) или запрещает (при СЕ - 0) функционирование данного модуля; бит АВ разрешает (при АВ " 1) запуск АЦП в момент времени, заданный регистром СОМРх Т1МЕ. Остальные биты в регистре СОМРх СО)т( имеют такое же назначение, как и в регистре ЕРАх СО)ч (рис.
1.22а) при работе в режиме сравнения. Модули СОМРО и ЕРА8, СОМР1 и ЕРА9 могут совместно использоваться для изменения состояния соответствующего вывода Р6.0 или Р6.1. При этом модули ЕРА8, 9 должны работать в режиме сравнения. В результате можно обеспечить формирование на выводах Р6.0 или Р6.1 последовательностей импульсов различной частоты и скважности или одиночных импульсов необходимой длительности без помощи прерываний. Каждый из модулей ЕРАх, СОМ РО, 1 фомирует запрос прерывания, который может обслуживаться контроллером прерываний (КПР) или периферийным сервером (ПСР).
Различные причины, вызывающие формирование запросов на прерывание 7 8 5 4 3 2 1 0 ТВ СЕ МОВЕ ЕЕ АВ КОТ ЕТ СОМР 0 СОХ (адрес 1Р88Н), СОМР 1 СОХ (адрес 1Р8СН) Рис. 1.39. Формат регистра СОМРх СОН МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА МСЕ-ЕЕ 105 Табл.
1.32. Запросы прарываний ВкС 19б !ЧТ Обозна- ченне Стандартное обе нненне Спецнелнзнровенное об неенне Причина црерынення П» П» номе некто некто номе ОРРА012Н Н енный колоне аннн ОРР2010Н Команда ТПАР ПЧТ 15 ОРРЗОЗЕН ПЧТ 14 ОРТАОЗСН ПЧТ ! 3 ОРР203АН 30 НМ! Внешннй согнал Внешннй снпнш Зе ен сеяно 14 РТБ 14 ОРР205СН РТБ 13 ОРР205АН 29 13 РТБ! 2 ОРР2058Н РТБ 11 ОРЩ056Н ПЧТ 12 ОРР2038Н ПЧТ 1! ОРР2036Н !2 27 П! Послед»нательный ввод Последокзтгльный вывод 26 Синхронная ооследояктельнкя передача, кянкл ! кенкл 0 РТБ 10 ОРР2054Н РТБ 09 ОРР2052Н 25 24 ПЧТ 10 ОРР2034Н ПЧТ 09 ОРР2032Н 10 9 БЩО ! 8810 0 ПЧТ 08 ОРР2030Н РТБ 08 ОРР2050Н 23 СВР Псе!теленке комкнды »снстеыный ос т ПЧТ 07 ОРР200ЕН РТБ 07 ОРРАО«ЕН ВЕ Вясд нз снег«много и к 22 РТБ 06 ОРР204СН ПЧТ 06 ОРР200СН ОВР Вывод я сметенный по ПЧТ 05 ОР1~00АН ПЧТ 04 ОРР2008Н РТБ 05 ОРР204АН РТБ 04 ОР!п4048Н 20 АВ ВОНЕ Зк шенне А Снгнхк ПРС мод дым !9 ЕРА 0 Согнал ПРС, мод ль 1 ЕРА 1 ПЧТ 03 ОРРАООЕН РТБ 03 ОРР2046Н !8 РТБ 02 ОНЮ««Н РТБ 0 ! ОРР2042Н Согнся ПРС, ыод ль 2 Снгнах ПРС, мод кь 3 ПЧТ 02 ОРР2004Н ПЧТ 01 ОРЩООЗН 17 ЕРА 2 ЕРА 3 16 Снгнклы ПРС н тайм ое " РТБ 00 ОРР2004Н 15 ЕРА х ПЧТ 00 ОРРАОООН ») П вЂ” уровень приоритета обслуживания: 30 — максимальный, 0 — минимальный.
"») Причинами црерыненнй являются снгнаны модулей 4..9 ПРС, переполнение модулей 0..9 ПРС, сигналы сравнения от модулей СМР О, 1 ПРС, переполнение таймера 1 нлн 2. Приоритет обслуживания определяется содержимым регистра ЕРА!РЧ, в микроконтроллере 8ХС196ХТ, перечислены в табл. 1.32, где указаны также их приоритеты (Π— минимальный, 30 — максимальный) и адреса ячеек памяти на странице ОРРН, где хранятся начальные адреса подпрограмм обработки. Как видно из сравнения таблиц 1.31 и 1.14, в данном микроконтроллере дополнительные запросы прерываний формируются системным портом (СВЕ 1ВЕ, ОВР), каналами синхронного последовательного порта (ЯЯ100, 83101), АЦП (А1) 1)ОХЕ).
Внешний маскируемый сигнал прерывания ЕХТ1ХТ подается на вывод Р2.2 порта 2, запрограммированный на выполнение специальных функций. Сигналом запроса служит положительный перепад потенциала на этом выводе. При формировании запроса прерывания устанавливается значение «1» соответствующего бита в регистрах 1ХТ РЕХ1), 1ХТ РЕХО1 (рис. 1АО).
Можно запретить (маскировать) обслуживание определенных запросов, установив значение «1» соответствующего бита в регистрах 1ХТ МАЯК, 1ХТ МАЯК1 Обслуживание запроса с помощью ПСР выполняется, если в регистре РТЯ ЯЕ) (рис. 1А1) установлено значение «1» соответствующего бита. Для выполнения МИКРОКОНТРОЛЛЕРЫ: АРХИТЕКТУРА ПРОГРАММИРОВАНИЕ, ИНТЕРФЕЙС 106 7 6 5 4 3 2 1 0 !ВР ОВЕ А(Т ЕРА 0 ЕРА 1 ЕРА 2 ЕРА 3 ЕРА х а) 1ХТ МАБК (адрес 08Н), 1МТ РЕХ1) (адрес 09Н) 5 4 3 2 1 0 ММ1 ЕХТ!МТ резерв К! Т1 5310 1 551О 0 СВР б) 1МТ МАЯК1(адрес 13Н), 1МТ РЕХШ (адрес 12Н) Рис. 1.40.
Форматы регистров 1ИТ РЕМЮ, 1МТ РЕМО1 1МТ МАЕК, !МТ МАЗК1 7 6 5 4 3 2 1 0 1ВЕ ОВР АЕТ ЕРА 0 ЕРА 1 ЕРА 2 ЕРА 3 ЕРА х 15 14 13 !О 9 12 11 резерв ЕХТ !ХТ резерв К1 Т1 ББ!О! 551О 0 БВЕ РТБ БЕ1 (адрес 04Н), РТБ БКтГ (адрес 06Н) Рис.1.41. Форматы регистров РТЗ ЗЕ1., РТЗ Зйе обслуживания ПСР выбирает блок управляющих данных, начальный адрес которого хранится в фиксированной ячейке памяти, указанной в табл. 1.32 (вектор специализированного обслуживания). Когда ПСР завершает обслуживание запроса, соответствующий бит в регистре РТБ БЕ1.