Файл: Курс лекций по микроконтроллерам.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 16.06.2025

Просмотров: 1052

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

86

Замечание: Со всеми прерываниями-ловушками связан один вектор прерывания (ОАН), для определения возникшей ошибки используется специальный регистр флагов-ловушек (TFR –Trap Flag Register)

В ОМК имеется 8 входов быстрой обработки прерываний (Р2.8÷Р2.15). Если обычные входы запросов прерываний опрашиваются каждые 400 нс (20 МГц), то входы быстрой обработки каждые 50 нс (20 МГц). Эти внешние входы могут программно задавать признак прерываний. Управляются они через специальный регистр EXICON (0E0H).

Прерывания – ловушки (типа trap) генерируется ОМК при возникновении ошибочной ситуации или поступление запроса прерывания на вход NMI (немаскируемое прерывание).

С каждым источником прерывания связан регистр управления прерыванием (xxIC). Все они имеют одинаковую структуру:

15

0

xxIR xxIE ILVL GLVL

xxIR–бит запроса прерывания (1-если этот источник выставил запрос) xxIE–бит разрешения/запрещения данного прерывания (0-запрешено) ILVL–уровень приоритета прерывания данного источника (0-низший;

15-высший)

GLVL–групповой уровень приоритета (0-низший; 3-высший) анализируется при одновременном (групповом) поступлении запросов с одинаковыми уровнями ILVL.

Биты регистра ххIC устанавливаются программно пользователем. При поступлении запроса от устройства ОМК читает его уровень

приоритета ILVL и сравнивает с приоритетом текущей программы (поле ILVL в PSW). Если приоритет поступившего прерывания выше оно обрабатывается, иначе – игнорируется.

Замечание: всем прерываниям типа trap соответствует один и тот же вектор прерывания (ОАН), т.е. при их возникновении вызывается одна п/п обработки и для определения типа возникшей ошибки ОМК используется регистр TFR (trap Flag Register).

6.9. Периферийный контроллер событий (PEC)

РЕС имеет восемь независимых каналов обработки прерываний. Каждый из каналов позволяет обрабатывать свой запрос прерывания на аппаратном уровне.

При обработке прерываний РЕС осуществляет передачу 1байта (слово) между двумя устройствами или памятью. Каждому каналу контроллера событий РЕС соответствует по два регистра: SRCPх (х=0…7) – это регистр для хранения адреса устройства источника информации; DSTPx – регистр для хранения адреса устройства приемника информации.

Кроме того каждый канал РЕС имеет свой регистр управления РЕССх

(х=0…7). Его формат:

15

10 9

8 7

0

mod

BWT

COUNT


87

COUNT –счетчик реализованных обменов данными (битами, словами) по каналу РЕС.

Счетчик COUNT вычитаемый и при его обнулении генерируется обычное прерывание для обработки полученного массива байт (слов).

BWT–определяет тип передаваемой информации (байт или слов); mod–определяет режимы модификации адресов в регистре SRCPx и

DSTPx после каждого обмена. Mod=00 – адреса не модифицируются; mod=01

– после каждого обмена SRCPx+1(2) – увеличивается на1 или 2 (режим используется при передачи массива из памяти); mod=10 – после каждого обмена DSTPx+1(2). Используется для сохранения массива информации в памяти; mod=11 – не используется.

Замечание: РЕС удобно использовать:

–при чтении данных из АЦП В память;

–при реализации обмена данными между памятью и последовательными интерфейсами.

6.10. Модули захват-сравнение ОМК С167

В ОМК реализованы два модуля захват-сравнение (CAPCOM – CAPTURE/COMPARE): CAPCOM1 и CAPCOM2. Они позволяют реализовать до 32 каналов захват-сравнение, каждый из которых может работать с 4 таймерами: Т0, Т1, Т7, Т8.

Каждый канал захват-сравнение связан со своим выводом ОМК ССхIO (х=0,…,31).

Для реализации выводов ССхIO используются выводы портов Р1, Р2, Р7, Р8 в альтернативном режиме работы.

Каждый из каналов захват-сравнение может работать в двух основных режимах:

–режим захвата.

–режим сравнения.

Каналы САРСОМ наиболее часто используют:

–для генерации сигналов широтно-импульсной модуляции (ШИМ) высокоточные во времени;

–для генерации различных конфигураций логических сигналов;

–для точной фиксации во времени внешних событий.

–для формирования до 32 программных таймер - счетчиков. Разрешающая способность (точность) САРСОМ ~400нс (20МГц) Общая структура модулей САРСОМ1 (2) имеет вид:

Каждый модуль САОСОМ содержит два 16-разрядных таймера:

–САРСОМ1: Т0/Т1

–САРСОМ2: Т7/Т8

Таймеры в свою очередь управляются регистрами управления T01CON, T78CON и каждый имеет регистр автоперезагрузки T0REL,…,T8REL. Синхронизация работы счетчиков – таймеров может осуществляться, как от внешних источников, так и от частоты синхронизации ОМК (с предварительным делением ее с помощью таймера Т6)

88

6.11. Встроенный начальный загрузчик ПО или ОС ОМК С167

Встроенный загрузчик, позволяет загрузить в память ОМК по сигналу сброс, через последовательный интерфейс программу (таблицу кодов).

Загрузчик передает данные получаемые из интерфейса ASCO во внутреннем ОЗУ ОМК. После передачи осуществляется переход на загружаемую программу.

Замечание: Если полученная программа может осуществлять прием данных из последовательного интерфейса и перезаписывает их во внешнее ОЗУ. Т.о. в системах с ОМК С167 можно работать вообще без ПЗУ.

Замечание: Этот механизм загрузки широко применяют в отладочных системах, а также для записи информации во FLASH –память или для загрузки ОС в ОМК.

6.12. Встроенный модуль ШИМ ОМК С167

В настоящее время во многих СУ мощными устройствами (двигателя, электромагнитные исполнительные устройства, печи) находит распространение принципа кода в аналоговую величину посредством ШИМ.

Замечание: Преобразование кода в величину напряжения (тока) с помощью АЦП, реализует АИМ.

ШИМ – широтно-импульсная модуляция (Pulse Width Modulation)– PWM, отличается от АИМ, тем что преобразование не в величину напряжения, а в длительность импульса.

код

k3

k2

k1

t

t1

t2

t3

А

T

T

T

t

τ1 =α к1

τ2 =α к2

τ3 =α к3

Т=const –период следования импульсов.

В простейшем случае схема Управления двигателем постоянного тока с помощью ШИМ:


89

+

U п двиг

код

DC-мотор

U упр

t

А=const

1

2

IGBT

драйвер

транзистор

t

(оптронная развязка,

световод)

T=const

В более сложных случаях управления АС –двигателями, вентильными или индукторными используют мостовые схемы включения транзисторов ( тиристоров ), инверторы напряжения.

Генерация импульсов управления транзисторами осуществляется с помощью модулей ШИМ ОМК.

ШИМ ОМК позволяет генерировать четыре независимые последовательности импульсов (4-канала ШИМ). Размещающая способность изменения τ: ∆τ=50нс.

Частота следования импульсов ШИМ: от 2,4 Гц до 10(5) МГц. Существует четыре способа формирования ШИМ:

–генерация стандартного ШИМ;

–генерация симметричного ШИМ;

–генерация пакетов импульсов;

–режим одновибратора

6.13. Встроенный контроллер промышленной

CAN-сети (CAN-модуль)

Контроллер CAN-сети позволяет связать посредством шины (витая пара, коаксиальный кабель, световод) ряд станций (контроллеров, ЭВМ). Протокол взаимодействия станций по шине реализуется при этом на аппаратном уровне.

CAN-модуль позволяет, автоматически от центрального процессора, осуществлять прием и передачу CAN-сообщений в соответствии со стандартом CAN V2.0B.

Передаваемые сообщения делятся на :

–стандартные, с 11-разрядным идентификатором

–расширенные, с 29разрядным идентификатором

Каждое сообщение содержит 8 байт данных. Одновременно CANмодуль может передавать и принимать до 15 сообщений (15 каналов связи)

При приеме/передачи сообщений CAN-модуль обеспечивает:

–скорость передачи до 1 Мб/с

–несколько средств контроля ошибок, в том числе циклическое кодирование с исправлением до 5 ошибок в сообщении.

–при обнаружении большого числа ошибок в принятом сообщении автоматически CAN-модуль формирует повторный запрос. Это


90

обеспечивается аппаратно, пока сообщение не будет принято верно, либо не переполнится счетчик ошибок (128).

Схема подключения ОМК С167 c CAN-сетью.

витая пара

120

120

TxD

RxD

ОМК1

УС1

УСn

ОМКn

TxD

RxD

УС1,…,УСn-устройства согласования с сетью (например можно использовать драйвер интерфейса RS-485, MAX485)