Читаем Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С полностью

где PWPERx — десятичный эквивалент кода в регистре периода PWPERx, PWDTYx — десятичный эквивалент кода в регистре коэффициента заполнения PWDTYx, PPOLx — бит выбора полярности сигнала канала в регистре конфигурации PWPOL, CENTR — бит выбора формы сигнала в регистре управления PWCTL, fx — частота тактирования счетчика канала с номером «x».

Для центрированной ШИМ (CENTR = 1) расчет временных параметров выходного сигнала следует производить по формулам:

• Период ШИМ–сигнала равен

TPWM = 2 × (PWPERx + 1)/fx

• Длительность импульса с высоким активным уровнем при PPOLx = 1 равна

TIMP = 2 × (PWDTYx + 1) / [(PWPERx + 1) × fx]

Коэффициент заполнения в этом же режиме равен

γ = (PWPERx – PWDTYx)/[(PWPERx + 1) × fx] × 100%

• Длительность импульса с высоким активным уровнем при PPOLx = 0 равна

TIMP = 2 × (PWPERx – PWDTYx) / [(PWPERx + 1) × fx]

Коэффициент заполнения в этом же режиме равен

γ = [(PWDTYx + 1)/(PWPERx + 1)] × 100%,

Обратите внимание, что при одинаковой частоте тактирования и одинаковых кодах в регистрах периода и коэффициента заполнения длительность импульса и период формируемого сигнала центрированной ШИМ будет в два раза больше, чем при фронтовой ШИМ. А коэффициент заполнения при этом остается одинаковым, поскольку является величиной относительной.

4.24.3. Система тактирования

Структурная схема системы тактирования модуля PWM представлена на рис. 4.100. Первичным генератором для тактирования счетчиков каналов модуля PWM служит импульсная последовательность E_CLOСK. На выходе программируемого делителя формируются две импульсные последовательности CLOСK_A и CLOСK_B. Причем сигнал CLOСK_A используется для тактирования каналов 0 и 1, а CLOСK_B — каналов 2 и 3. Коэффициенты деления для последовательностей CLOСK_A и CLOСK_B задаются битами PCKA[2:0] и PCKB[2:0] регистра конфигурации PWCLK. Возможные значения коэффициентов деления приведены в таблице рис. 4.101.

Рис. 4.100. Структурная схема системы тактирования модуля PWM


PCKA2 (PCKB2)PCKA1 (PCKB1)PCKA0 (PCKB0)Частота CLOСK_A, CLOСK_B
000E
001E + 2
010E + 4
011E + 8
100E + 16
101E + 32
110E + 64
111E + 128

Рис. 4.101. Выбор частоты тактирования счетчиков каналов модуля PWM


При необходимости коэффициент деления может быть увеличен посредством подключения дополнительного делителя на входе каждой пары каналов. Делитель 0 обслуживает каналы 0 и 1 (рис. 4.100), он формирует свой выходной сигнал из импульсной последовательности CLOСK_A. Делитель 1 обслуживает каналы 2 и 3 (рис. 4.100) и формирует выходной сигнал из последовательности CLOСK_B. Коэффициент деления каждого из этих делителей определяет код в регистрах PWSCAL0 и PWSCAL1.

4.24.4. Регистры модуля PWM 

Множество регистров специальных функций, которые обслуживают модуль PWM, можно разделить на следующие группы:

• Регистры конфигурации;

• Регистр разрешения работы каналов; 

• Регистр дополнительного делителя;

• Регистры делителей 0 и 1;

• Регистры счетчика каналов;

• Регистры периода каналов;

• Регистры коэффициента заполнения каналов;

• Регистр управления;

• Регистр специальных режимов модуля;

• Регистры работы с портом P.

Рассмотрим перечисленные регистры более подробно.

Регистр конфигурации PWCLK

Регистр конфигурации PWCLK выполняет две функции. Во-первых, его биты определяют, будут ли каналы модуля использоваться в 8-разрядном режиме, или эти каналы объединят попарно для работы в 16-разрядном режиме. Во-вторых, биты регистра назначают два коэффициента деления частоты для образования из импульсной последовательности E_CLOСK сигнала тактирования каналов 0 и 1 (CLOСK_A) и сигнала тактирования каналов 2 и 3 (CLOСK_B).

Формат регистра PWCLK представлен на рис. 4.102. Биты CON23 и CON01 определяют режимы работы пар каналов 2:3 и 0:1 соответственно. Если значение бита CON23 равно 0, то каналы 2 и 3 работают независимо друг от друга с 8-разрядным разрешением. При CON23 = 1 каналы 2 и 3 объединяются в один 16-разрядный генератор ШИМ-сигнала. Действие бита CON01 по отношению к каналам 0 и 1 аналогично.

Рис. 4.102. Формат регистра конфигурации PWCLK


Если каналы объединены в пару, то ШИМ-сигнал пары 0:1 формируется на линии 0 порта PORT P, пары 2:3 — на линии 2 порта PORT P. Однако управление полярностью выходных сигналов 16-разрядных ШИМ-генераторов осуществляется битами PPOL1 для пары 0:1 и PPOL3 для пары 2:3. Биты управления полярностью PPOLx располагаются в регистре PWPOL.

Регистр конфигурации PWPOL
Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT