Блоки таймеров общего назначения (GPT1 & GPT2)
Микроконтроллеры
семейства С166 могут содержать один
или два модуля таймеров общего
назначения с внешними входами /
выходами, функциями перезагрузки и
сравнения и возможностью
объединения. Один из модулей (GPT1)
имеет три 16-ти разрядных
реверсивных таймера. Таймер T3
работает как основной, а таймеры T2 и
T4 как дополнительные. Регистр
дополнительного таймера может
служить для перезагрузки основного
таймера при его переполнении или
для захвата содержимого основного
таймера при возникновении внешнего
события. Имеется также возможность
каскадного соединения основного и
одного из дополнительных таймеров
для увеличения разрядности. При
этом образуется 33-х разрядный
таймер (в цепочку включается еще и
триггер на выходе таймера T3). Каждый
из таймеров имеет собственный
регистр управления. На блок-схеме
GPT1 все временные значения
приведены для частоты 20МГц.
Таймеры могут
работать в следующих основных
режимах:
- счетчик внешних
входных импульсов с
максимальной частотой до 1,25
МГц;
- таймер с
внешним сигналом управления
(активный высокий или низкий
уровень);
- таймер с
входным тактом от внутреннего
тактового генератора, который
проходит через делитель с
программируемым коэффициентом
от 8 до 1024.
В таблице
приведены значения входной частоты
и периода таймера при частоте
тактового генератора 20 МГц.
Второй модуль
таймеров (GPT2) имеет два 16-ти
разрядных таймера и более высокое
разрешение по входу (в модуле GPT2
максимальная частота внешних
счетных импульсов может достигать
2.5 МГц). В таблице приведены
значения входной частоты и периода
таймера для различных
коэффициентов деления.
Устройство захвата - сравнения CAPCOM2
Большинство
кристаллов семейства С166 содержит
одно или два устройства захвата -
сравнения (CAPCOM1, CAPCOM2).
Функциональная схема CAPCOM2 для C164CI,
C167 при частоте 20 МГц приведена ниже
(модуль CAPCOM1 имеет аналогичную
структуру). В каждом устройстве CAPCOM
содержится два 16-разрядных таймера
с разрешением 400 нс при частоте 20МГц
с регистром перезагрузки (Reload), 16 (8
для C164CI) независимых 16-разрядных
регистров, программируемых на
работу с любым из таймеров T7/T8 и
регистры управления. Кристалл С167
содержит два устройства CAPCOM, т.е. в
общей сложности 32 канала.
Каждый таймер
может работать как в режиме
таймера, так и в режиме счетчика и
обеспечивает временную
синхронизацию работы каналов
захвата - сравнения. Входные
импульсы на тактовый вход таймеров
поступают или от встроенного
тактового генератора с
коэффициентом деления от 8 до 1024,
или с выхода таймера T6 модуля GPT2.
Это обеспечивает широкий диапазон
значений периода и позволяет точно
подобрать необходимое разрешение.
Разнообразные режимы работы
каналов CAPCOM позволяют реализовать
быстрый ввод-вывод, генерацию
сигналов ШИМ и одиночных импульсов,
простое цифро-аналоговое
преобразование, измерение
интервалов времени. Основные
режимы работы модулей следующие:
- захват значения
таймера по нарастающему /
спадающему фронту входного
сигнала или по любому из
фронтов;
- режимы
сравнения 0 и 1 - возможно
несколько сравнений в течение
одного периода таймера, в
первом случае происходит
только генерация прерывания, а
во втором - происходит
переключение сигнала на выходе
при каждом сравнении;

режимы
сравнения 2 и 3 - возможно только
одно сравнение в течение
одного периода таймера, в
первом случае устанавливается
только флаг прерывания, а во
втором - по первому сравнению
устанавливается флаг
прерывания, и сигнал на выходе
переключается в "1", сброс
выхода осуществляется по
переполнению таймера.
Устройство захвата - сравнения CAPCOM6
В состав C164CI
входит мощное 6-канальное
устройство захвата - сравнения Capture
Compare Unit CAPCOM6, предназначенное
для управления всеми типами
приводов двигателей постоянного и
переменного тока: безщеточными
постоянного тока, шаговыми
двигателями, индукционными
двигателями. Внешний trap-сигнал для
быстрого отключения выводов
обеспечивает высокий уровень
безопасности системы в целом. За
счет алгоритма генерации сигналов
ШИМ, получаемых с точностью 10
разрядов при частоте 20 КГц, и
программируемого интервала
"мертвого времени"
достигается минимальный уровень
шума и потребления. Кроме того,
доступен 8-разрядный Downgrade - C504
с идентичным устройством захвата -
сравнения.
Устройство CAPCOM6 содержит
два блока: 3-канальное 16-разрядное
устройство CAPCOM и
1-канальное 10-разрядное устройство
сравнения COMP для
генерации ШИМ.
Основные функции
устройства CAPCOM
перечислены ниже:
- Каждый канал
осуществляет управление двумя
выходами в режиме сравнения и
одним входом в режиме
считывания на лету. Каналы
программируются на режим
работы, например, управляемый
активный логический уровень
выхода в режиме сравнения
позволяет генерировать два
инверсных сигнала. Скважность
(Duty Cycle) импульсов на выходе
изменяется от 0 % до 100 %.
- В режиме
считывания на лету при
появлении переднего или
заднего фронта сигнала на
выводе CC6x происходит
сохранение содержимого
таймера 1 в регистре CCх.
- Таймер 12 может
работать в одном из двух
режимов: прямой счет и сброс,
прямой счет и обратный счет.
Тактирующая частота таймера 12
задается в пределах от Fcpu до
Fcpu/128. Для автоматической
генерации интервала мертвого
времени (“dead-time“) предусмотрен
регистр смещения Offset T12OFF.
Прерывания вырабатываются при
сбросе таймера, изменении
направления счета, условии
совпадения, считывании на лету.
Устройство
сравнения COMP содержит
таймер 13, тактирующая частота
которого задается в пределах от Fcpu
до Fcpu/128. Основным режимом работы
является генерация стандартной ШИМ
с привязкой к фронту на выходе COUT63.
Кроме того, импульсы, генерируемые
устройством COMP, могут модулировать
сигналы от CAPCOM при их совместной
работе режимах многоканальной ШИМ.
Наиболее интересна работа CAPCOM6 в
режиме сравнения, когда выходы CC6x
изменяют состояние при совпадении
содержимого таймера T12 с
содержимым регистра сравнения ССх
или T13 с содержимым CMP13.
Состояние выходов COUTx может
изменяться синхронно с выходами ССх
или с задержкой. В первом случае
выходы COUTx изменяют
состояние при совпадении
содержимого таймера с содержимым
регистра сравнения ССх, а
во втором - при совпадении
содержимого таймера с содержимым
регистра сравнения ССх
плюс значение регистра смещения
T12OFF. Тем самым осуществляется
генерация интервала “мертвого
времени“. Кроме того, существует
два основных режима работы
таймеров.
Рабочий режим 0 -
стандартная ШИМ (привязка к фронту).
Данный режим характерен для
таймеров T12 и T13.
Таймер считает от 000H до значения в
регистре периода и далее
происходит сброс.
Рабочий
режим 1 - симметричная ШИМ
(привязка к центру). В данном режиме
работает только таймер T12,
который ведет счет в прямом и
обратном направлении между 000H и
значением в регистре периода.
В режимах
многоканальной ШИМ устройства CAPCOM
и COMP совместно вырабатывают
разнообразные сигналы ШИМ:
- 4-х полюсная
многоканальная ШИМ
- 5-и полюсная
многоканальная ШИМ
- 6-и полюсная
многоканальная ШИМ
- Режим
коммутации блоков
При периодическом
опросе датчика следующее
преобразование производится
автоматически по окончании
предыдущего. Времена выборки и
преобразования устанавливаются в
регистре управления АЦП. После
окончания преобразования регистр
результата содержит 10-разрядный
результат и номер канала, а в
регистре управления
устанавливается флаг прерывания.
Если результат преобразования не
считывается до начала следующего
преобразования, устанавливается
флаг ошибки, и вырабатывается
прерывание. Для сохранения
результата внеочередного
преобразования по выбранному
каналу во время непрерывного
преобразования предусмотрен
специальный регистр. Ниже
приведена упрощенная блок-схема
АЦП.
Количество
микроконтроллеров Infineon со
встроенными модулями CAN постоянно
возрастает, в настоящее время это
три 16-разрядных кристалла: С167CS, C167CR,
C164CI. CAN (Controller Area Network)
- это двухпроводная,
последовательная, асинхронная шина
с равноправными узлами и
подавлением синфазных помех, с
хорошим соотношением цена /
производительность. Узел CAN - это
контроллер, осуществляющий
прием-передачу данных со
встроенной логикой обнаружения и
исправления ошибок. На физическом
уровне все устройства,
объединенные CAN - шиной соединены
между собой по схеме “монтажное
И”. CAN изначально был
разработан для автомобильной
промышленности (его иногда
называют Car Area Network), но
позднее был распространен на
широкую область приложений. В нашей
стране наиболее популярными
областями использования являются
железнодорожный транспорт и
промышленная автоматика.
Модуль CAN функционирует в
соответствии со спецификацией V2.0B
active (стандартный и расширенный
CAN со скоростью передачи до 1 Мбит/с)
фирмы BOSH и содержит область
регистровой памяти для хранения 15
независимых сообщений с
собственными идентификаторами,
битами состояния и управления.
Каждое сообщение содержит до 8 байт
данных и идентификатор длиной 11 или
29 бит. Самый мощный и дорогой
микроконтроллер C167СS содержит 2 CAN
модуля, что при совместной работе
модулей позволяет создавать один
общий буфер в 30 сообщений, при
работе в независимом режиме
получаем 2 буфера по 15 сообщений.
Доступ к модулю CAN осуществляется
по внутренней X-шине и происходит
под управлением специального
интерфейса.
Если
микроконтроллер не содержит
встроенный модуль CAN, то для
расширения его возможностей
используется один из кристаллов
Infineon SAE 81C90/91, специально
спроектированный для автономной
работы с CAN-шиной.