(812) 466-57-84 /
Новости Продукция Номенклатура Статьи О фирме Контакты Вакансии
Архитектура серий С167 и ST10x167
Применение контроллеров
Распределенные системы управления
Проектирование распределенных систем управления
О стандарте PC/104
Изделия в стандарте PC/104 для жестких условий
Одноплатные компьютеры-контроллеры в стандарте PC/104
CAN-интерфейс
Микропроцессорные контроллеры CS, M, 167х
Новые 16-разрядные DSP-микроконтроллеры
Краткое описание микроконтроллера C16x
Краткая система команд C16x/ST10
Полная система команд C16x/ST10x
Дополнительные команды для XC16x и ST10F269
Параллельные порты микроконтроллеров C167 и ST10F269
Блоки формирования импульсных сигналов C16x/ST10x
Формирование ШИМ с повышенным разрешением
Универсальные блоки таймеров
Интерфейс АТ96 (Евростандарт)
Подключение контроллеров
Процессоры цифровой обработки сигналов
Архитектура микроконтроллера TMS320C32
Архитектура микроконтроллера TMS320C33

Формирование ШИМ с повышенным разрешением

Микроконтроллер C167 имеет дополнительно 4 независимых выхода ШИМ (PWM) с разрешением 50 нсек. Диапазон частот выходных сигналов PWM, выравненных по фронту, может быть от 4.8 Гц до 10 МГц, для PWM сигналов, выравненных по центру - от 2.4 Гц до 5 МГц.

Блок генерации PWM сигналов с повышенным разрешением состоит из 4-х независимых каналов. Каждый канал содержит 16-разрядный реверсивный счётчик PTx, 16-разрядный регистр периода с теневым "регистром-защёлкой", 16-разрядный регистр ШИМ с теневым "регистром-защёлкой", 2 модулятора и необходимую управляющую логику.

Схема блока генерации PWM сигналов с повышенным разрешением

Режимы работы

Модуль ШИМ имеет четыре режима работы:

  • Режим генерации стандартного ШИМ-сигнала (синхронизация ШИМ по фронту), для 4-х каналов
  • Режим генерации симметричного ШИМ-сигнала (синхронизация ШИМ по центру), для 4-х каналов
  • Режим генерации пакетов импульсов (Burst mode), объединяет каналы 0 и 1
  • Режим одновибратора (Single Shot Mode), только для каналов 2 и 3

Режим генерации стандартного ШИМ-сигнала (синхронизация ШИМ по фронту)

В этом режиме таймер PTx соответствующего канала PWM наращивает своё значение до тех пор, пока не достигнет значения теневого регистра периода. Во время прихода следующего импульса таймер сбрасывается в 0000h и далее продолжает считать, наращивая своё значение по приходу входных импульсов. Выходной сигнал ШИМ переключается в состояние лог.1, когда значение таймера больше или равно значения теневого регистра ширины импульса.

Сигнал переключается обратно в состояние лог.0, когда соответствующий таймер сбрасывается в состояние 0000h, т.е. его значение меньше значения теневого регистра ширины импульса.

Период результирующего сигнала ШИМ определяется по формуле:

T1pwm = [PPx] + 1

Коэффициент заполнения выходного ШИМ-сигнала управляется значением соответствующего теневого регистра ширины импульса и может изменяться в пределах от 0% до 100%.

Режим генерации стандартного ШИМ-сигнала (синхронизация ШИМ по фронту)

Режим генерации симметричного ШИМ-сигнала (синхронизация ШИМ по центру)

В режиме генерации симметричного ШИМ-сигнала таймер PTx соответствующего канала ШИМ наращивает своё значение до тех пор, пока не достигнет значения соответствующего теневого регистра периода. Во время прихода следующего импульса направление счета изменяется, и таймер начинает считать вниз, пока не достигнет значения 0000h. Следующий импульс снова изменяет направление счета, повторяя цикл генерации симметричного ШИМ-сигнала.

Значение периода в этом режиме вычисляется по формуле:

T2pwm =2 * ([PPx] + 1)
Режим генерации симметричного ШИМ-сигнала (синхронизация ШИМ по центру)

Режим генерации пакетов импульсов (Burst mode)

В этом режиме объединяются сигналы каналов 0 и 1 (логическое И) и подаются на вывод порта 0-го канала.

Каждый из двух каналов может работать как в режиме 0, так и в режиме 1.

Замечание: Выходной cигнал поступает на выход порта синхронно с сигналом внутреннего тактового генератора, что гарантирует отсутствие ложных импульсов.

Режим генерации пакетов импульсов (Burst mode)

Режим одновибратора (Single shot mode)

В режиме одновибратора таймер PTx соответствующего ШИМ-канала запускается программно и наращивает своё значение до тех пор, пока его значение не достигнет значения теневого регистра периода. С приходом следующего импульса таймер обнуляется в 0000h и останавливается.

Сигнал выхода ШИМ переключается в состояние лог.1, когда значение таймера больше или равно значению теневого регистра ширины импульса. Сигнал переключается обратно в состояние лог.0, когда таймер обнуляется.

Режим одновибратора (Single shot mode)

Таким образом, запуск таймера PTx в режиме одновибратора позволяет генерировать один импульс на соответствующем выводе порта, при условии что значение регистра ширины импульса находится между 0000H и значением периода.

Для генерации следующего импульса таймер запускается программно, установкой бита PTRx.

После запуска таймера (т.е. PTRx="1") выходной сигнал можно изменять программно. При записи в таймер PTx изменяется фронт и/или спад выходного сигнала, в зависимости от того, начался импульс (т.е. выход в лог.1) или нет (т.е. выход все еще в лог.0).

При правильной установке значения периода (PPx), начального значения таймера (PTx) и значения регистра ширины импульса (PWx) ширина выходного импульса (tw) и задержка импульса (td) могут изменяться в широком диапазоне.