Бродин В. Б., Шагурин И. И. Микроконтроллеры (1999) (1095894), страница 43
Текст из файла (страница 43)
Набор регистров специальных функций микроконтрол- леров 8ХС510В следующий (вновь введенные регистры отмечены). Е Параллельные порты Р4, Р5. Схемотехника и функционирование этих пор- тов полностью соответствует схемотехнике и работе портов Р1, РЗ. После сб1юса защелки линий портов Р4, Р5 устанавливаются в состояние «0». ЧСС КЗТ№ АЧгКЕР АЧ55 СОМР КЕР АСН7 АСКО АСН5 АСН4 АСНЗ АСН2 АСН! АСНО ТК101Х Ч55 ХТАЕ! микРОкОнтРОллеРы: АРкитекГТРА ПРОГРАммиРОЕАни интеРФейс Питание микроконтроллера Сброс Питание АЦП Земля АЦП Эталонное напряжение для режима сравнения АЦП Вход аналогового канала 7 Вход аналогового канала О Вход аналогового канала 5 Вход аналогового канала 4 Вход аналогового канала 3 Вход аналогового канала 2 Вход аналогового канала 1 Вход аналогового канала 0 Вход внешнего запуска АЦП Земля Вход ннвертируюшего усилителя для сннхрогенератора Выход ннвертнруюшего усилителя для сннхрогенератора Разрешение чтения нз памяти программ, выход Строб адреса, выход.
/Вход программирования для 87С510В Вход переключения нижней области памяти программ. /Напряжение программирования для ОТР ве нй 215 ССАРЗН хххххххх ССАР4Н хххххххх ССА1гн хххххххх ССАРОН ХХХХХХХХ ССАР1Н хххххххх СН оооооооо Г8 В оооооо оо ССАРЗЬ хххххххх ССАР4С хххххххх ССАР21. хххххххх ССАРОЬ хххххххх сь оооооооо ССАР11- хххххххх Е8 АСС оооооо оо ЕО ССАРМЗ хооооооо ССАРМ4 «ооооооо ССАРМ2 «ооооооо ССАРМО хооооооо ССАРМ! «ооооооо СМОВ Оохххооо ССОН ОохООО ОО ГЗ8 РЕЗВ оооооо оо ГЗ7 ГЗО КСАРгс оооооооо тнг оооооооо КСАР2Н Т1.2 00000000 00000000 тгсОН 00000000 Т2МОВ 00000000 С7 Со 1Р х00000 00 ВАВЕХ 00000000 ВЕ 1РН х0000000 РЗ 11111111 В7 во АЕ ЗА1ХЖ 00000000 1Е 00000000 Р2 111!11!1 А7 АО ЯВ13Р хххххх хх зсОН 00000000 Р1 11!11111 90 ТЫ ТНО 00000000 00000000 ТСОХ 000000 00 ТМО!З 000000 00 ТН! 00000000 ТЫ 00000000 8Е ЗР 00000111 РО 1!111111 РСОА Оохоооо ВРЬ 00000000 РРН 00000000 80 2.13.1.
Аналого-цифровой преобразователь Восьмиразрядный встроенный АЦП обслуживает, с помощью мультиплек- сора, восемь аналоговых входов АСНО..АСН7 (рис. 2.24). Время преобразо- вания для одного канала составляет около 26 мксек при тактовой частоте микроконтроллера 12 МГц. Блок АЦП имеет вход внешнего запуска ТК1ОЩ линии отдельного аналогового питания Ааааа и АЪ'ге!',, вход напряжения сравнения СОМРКЕЕ Он снабжен десятью регистрами специальных функций. В регистрах данных АОО..АГЗ7 (адреса 84Н, 94Н, ОА4Н, ОВ4Н, ОС4Н, ОО4Н, ОЕ4Н, ОЕ4Н) хранятся результаты преобразований по каждому из каналов.
Регистр флагов АСМР хранит результаты операций сравнения напряжений на входах АСНО..АСН7 с напряжением на входе СОМРКЕЕ Бит СМРх устанавливается, если Г)АСН>Г) СОМРКЕЕ В противном случае он сбрасывается. 216 а!с!и ЧРТР СЕ сно сн7 СОМРЙЕР АЧМ Рис.
2.24. Блок АЦП микроконтроллеров ВХСВ10В Регистр управления АСОМ содержит флаг прерывания А1Г, бнт разреше- ния преобразования АСЕ, биты определения номера канала АСЯ! и АСЗО, биты определения режима преобразования А1М и режима запуска АТМ. АСМР СМРО СМР1 МР2 СМРЗ СМР4 СМР5 Мрб СМР7 Функция Имя Ноееер бита бита СМР6 АСМР7 СМР1 АСМ?16 СМР2 АСМР5 СМРЗ АСМР4 СМР4 АСМРЗ СМР5 АСМР2 СМР6 АСМР.1 СМР7 АСМРО микРОкОнтРОллеРы: АРхитектуРА, ОРОГРАммиРОВАние, интеРФейс Флаг сравнения канала О.
СМРО = 1 при !!АСНО>!!СОМРКЕГ Флаг сравнения канала 1. СМР! - 1 при !7АСН1>!!СОМРКЕГ Флаг сравнения канала 2. СМР2 1 при !!АСН2>!7СОМРКЕГ Флаг сравнения канала 3. СМРЗ = 1 при !!АСНЗ>1!СОМРКЕР Флаг сравнения канала 4. СМР4 = 1 при !!АСН4>1!СОМРКЕГ Флаг сравнения канала 5. СМР5 = 1 при !!АСН5>!!СОМРКЕР Флаг сравнения канала 6.
СМР6- 1 при !!АСН6>1!СОМРКЕГ Флаг сравнения канала 7. СМР7 1 при 1!АСН7>!!СОМРКЕГ 217 ГЛАВА2 МИКРОКОНТРОЛЛЕРЫ СЕМ ЭА МСЕ-51 151 АСОМ вЂ” — А1Р АСЕ АСБ! АСБО А1М АТМ Имя Номер Функция бита бита — АСОХ.7 Зарезервирован — АСОХ.6 Зарезервирован А1Р ЛСОХ.5 Флаг прерывания. Устанавливается после окончания преобразования в 7-м канале АСЕ АСОХА Бит разрешенияпреобразования. При АСЕ=О преобразование во всех каналах прекращается АСБ1 ЛСОХ.З Бит 1 выбора канала ЛСБО ЛСОХ.2 Бит О выбора канала Л1М АСОХ.1 Бит режима выбора каналов АЦП.
А1М - Π— режим сканирования, при А1М - 1 — режим выбора канала АТМ АСОХ.О Бит режима запуска. АТМ = Π— режим внутреннего запуска, при АТМ = 1 — режим внешнего запуска Сравнение аналоговых сигналов. С помощью блока АЦП можно быстро выполнить операцию сравнения по напряжению двух аналоговых сигналов. Сравнение выполняется всегда, если разрешена работа блока АЦП в целом. Выполняемой функцией является последовательное сравнение напряжений на входах АСИО-АСН7 с опорным напряжением на входе СОМРЕЕЕ Соответствующий бит СМРх регистра АСМР устанавливается, если ()АСН>!)СОМРЙЕЕ После разрешения аналого-цифрового преобразования начинается сравнение (последовательно с О-го по 7-й канал) и обновление битов регистра АСМР независимо от выбранного режима выбора каналов (Бсап п1оГ!е, Бе!ес1 шос!е).
Режимы выбора каналов. Имеется два режима выбора каналов (входов), сигналы которых подлежат аналого-цифровому преобразованию. Выбор режима производится с использованием бита А1М регистра АСОМ. При А1М = О имеет место режим сканирования входов (Бсап 1поде). При этом к преобразователю последовательно подключаются входы АСНО, ЛСН1,,ЛСН7, код преобразования помещается в регистры А!)О, АШ..А07. При А!М - 1 имеет место режим выбранного канала (Бе!ест шос1е).
При этом в начале последовательно производится 4 преобразования сигнала на одном из выбранных с помощью битов АСБ1, АСБО входов АСНО..АСНЗ. Результаты преобразования помещаются в регистры А1)О..А!)3. Далее производится коммутация каналов АСН4 ..АСН7, аналогично режиму сканирования. Результаты преобразования помещаются в регистры А!)4..АП7. 218 МИКРОКОНТРОЛЛЕРЫ' АРХИТЕКТУРА ПРОГРАММИРОВАНИЕ ИНТЕРФЕЙС Режимы запуска АЦП. Имеется два режима запуска, выбор производится с использованием бита АТМ регистра АСОХ.
При АТМ - 1 имеет место режим запуска от внешнего сигнала. При этом преобразование начинается по перепаду «1»-»0» на входе ТВ1О1Х, вход опрашивается в каждом машинном цикле. Следовательно, для запуска АЦП сигнал на этом входе должен иметь высокий уровень в течение не менее одного машинного цикла, а затем низкий уровень в течение не менее одного машинного цикла. После запуска выполняется преобразование сигналов последовательно на всех входах АСНО..АСН7, затем устанавливается флаг запроса прерывания А1Е До окончания этого процесса сигнал на входе Тт«1О1Х игнорируется. При АТМ = 0 имеет место режим внутреннего запуска.
Преобразование начинается в машинном цикле, следующем за командой, в которой был установлен бит АСЕ регистра АСОХ. После запуска выполняется преобразование сигналов последовательно на всех входах АСНО..АСН7, затем устанавливается флаг запроса прерывания А1Е После завершения одного цикла преобразования аналоговых сигналов во всех каналах начнется следующий цикл, при этом новые значения в регистрах А1РО..А1Р7 будут затирать старые. Для того, чтобы каждый канал был обработан только один раз, необходимо сбросить бит АСЕ регистра АСОХ. 2. 1 3.2. Блок сторожевого таймера (%ОТ) В структуру микроконтроллеров типа 8ХС51СВ включен самостоятельный блок сторожевого таймера уу'ПТ, Он работает Всегда, когда функционирует центральный процессор, и сбрасывает микроконтроллер по истечении установленного времени, позволяя таким образом выходить из зависаний программы управления.
Под самостоятельностью сторожевого таймера ЖРТ подразумевается его полная независимость от функции сторожевого таймера, которая может быть реализована программно на основе блока РСА. Блок уу'1)Т выполнен на основе 14-разрядного таймера, который считает машинные циклы, т.е. переключается с частотой Ровс/12. Собственно таймер уу'ОТ программно недоступен, при его переполнении вырабатывается внутренний сигнал сброса микроконтроллера, который на внешнем выводе ГАЕЯЕТ не появляется. Управляет сторожевым таймером регистр спецфункций утГПТВ5Т, он доступен только для записи. После сброса и инициализации микроконтроллера сторожевой таймер ЮАРТ очищен. Чтобы сторожевой таймер не переполнился и не сбросил микроконтроллер, нормально работающая программа управления должна не позже, чем через 16386 машинных циклов записывать байты 01ЕН и 01ЕН (последовательно) в регистр УУ'ОТ1«ЗТ.
ГЛЯВЯ 2 МИКРОКОНТРОЛЛЕРЫ СЕМЕЙ ВЯ МСВ- 1 1»1 219 При переходе в режим холостого хода (!Г!!е) сторожевой таймер %1?2Т продолжает работать, следовательно его нужно обслуживать. Для этого можно использовать параллельно работающий таймер-счетчик, процедура прерывания которого выводит микроконтроллер из режима холостого хода, пере- загружает Ж?2Т и возвращает микроконтроллер в режим холостого хода.
При переходе в режим микропотреблення (ротчегс?отец) сторожевой таймер тлГ'РТ прекращает счет, поскольку нет синхросигнала. В это время его обслуживать не надо. Счет возобнавляется после выхода из этого режима посредством сброса или по сигналу внешнего прерывания. Если микроконтроллер выходит из режима микропотребления по сбросу, сторожевой таймер Ю?)Т обслуживается обычным образом. При выходе из этого режима по прерыванито в целях надежного запуска внутреннего синхрогенератора активное значение «О» внешнего сигнала прерывания должно оставаться стабильным в течении некоторого времени. Запуск Ж?)Т и обслуживание прерывания начинаются при возвращении сигнала в состояние «1».
Рекомендуется перезагрузить сторожевой таймер Ю?)Т перед входом в режим микропотребления. 2.13.3. Схвма обнаружвния сбоя тактового гвнвратора ОРО Эта схема вызывает сброс микроконтроллера при уменьшении частоты РОВ ниже значения, указанного в документации. Она включается после инициализации микроконтроллера и после выхода его из режима роВГегГ?отчп. Чтобы предотвратить сброс микроконтроллера в режиме роВГегг?ОВГ1ц необходимо запретить работу этой схемы посредством записи кода «ОЕ1Н, 0 1ЕН» в регистр ОВСА.
Определить состояние схемы ОР?) можно при помощи чтения регистра ОЗСК. Если в младшем разряде регистра записана «1», то цепь разрешена. Если в младшем разряде регистра записана «0», то цепь запрещена. 2.13.4. Блоки РСА Микроконтроллеры типа 8ХС51ОВ имеют два блока этого типа: РСА и РСА1. Основным отличием РСА1 является то, что он программно не поддерживает режим сторожевого таймера 17ГГ?)Т.