4.23.4. Программируемое число преобразований в измерительной последовательности
Рассмотренный ранее модуль ATD в составе МК 68HC12 мог исполнять измерительные последовательности, состоящие из 4 или из 8 преобразований. В МК HCS12 число измерений в последовательности может быть любым в диапазоне от 1 до 8. Если бит MULT регистра управления ATDCTL5 установлен в 0, то все измерения в последовательности выполняются для одного канала. При этом номер канала определяют биты CC:CB:CA регистра ATDCTL5, а число измерений в последовательности – биты S8C:S4C:S2C:S1C. Например, если MULT = 0, CC:CB:CA = 010b, а S8C:S4C:S2C:S1C = 0101b, то измерительная последовательность будет состоять из 5 преобразований сигнала канала 2. Обратите внимание, что формат регистра ATDCTL5 в модуле аналого-цифрового преобразования HCS12 изменен (рис. 4.93).
Если бит MULT установлен в 1, то в измерительной последовательности будет производиться оцифровка сигналов разных каналов. При этом биты CC:CB:CA будут определять номер первого канала в последовательности, а биты S8C:S4C:S2C:S1C — число измерений в последовательности. Например, MULT = 1, CC:CB:CA = 010 b, а S8C:S4C:S2C:S1C = 011 b. Измерительная последовательность будет состоять из трех преобразований, последовательно будут измерены напряжения в каналах 2, 3, 4.
Дополнительные возможности по выборке данных из регистров результата модуля ADT HCS12 предоставляет режим FIFO (First In First Out — первым пришел, первым вышел). Если бит FIFO в регистре ATDCTL3 равен 0, то реализуется ранее рассмотренный порядок записи кодов преобразования в регистры результатов. При FIFO = 1 регистры результата образуют накопительный банк, который хранит 8 последних измерений. При каждом следующем преобразовании, результат преобразования записывается в банк, при этом первое из 8 хранящихся в банке измерений теряется.
4.23.5. Увеличение числа аналоговых входов
Увеличение числа аналоговых входов для подключения измеряемых сигналов в МК семейства HCS12 ведется не путем изменения структуры модуля ATD, который имеет 8 аналоговых входов, а путем увеличения числа модулей аналого-цифрового преобразования в составе отдельных моделей МК. Так МК MC9S12DP256B имеет в своем составе два модуля аналого-цифрового преобразования (ATD0 и ATD1).
4.23.6. Регистры модуля ATD HCS12
На рис. 4.93 приведены форматы новых, дополнительных по сравнению с ранее рассмотренной версией модуля ATD регистров специальных функций ATDSTAT0, ATDSTAT1, ATDDIEN, а также тех регистров, которые, сохранив прежнее имя, претерпели изменение формата.
Регистр состояния ATDSTAT0
Регистр состояния ATDSTAT0 — это однобайтовый регистр. Флаг завершения измерительной последовательности SCF этого регистра устанавливается в 1, если все преобразования назначенной измерительной последовательности завершены.
Флаг SCF может быть сброшен тремя способами:
• Программной установкой бита SCF в 1 (обычный способ);
• Программным запуском новой измерительной последовательности посредством записи в регистр ATDCTL5;
• Чтением регистра результата при установленном флаге разрешения режима быстрого сброса AFFC в регистре ATDCTL2.
Регистр состояния ATDSTAT1
Регистр состояния ATDSTAT1 — также однобайтовый регистр состояния. Содержит биты CCF7…CCF0, которые устанавливаются, когда в процессе выполнения измерительной последовательности произошла запись в одноименный регистр результата.
Регистр разрешения цифрового входа порта ATDDIEN
Регистр ATDDIEN содержит восемь битов IENn (n — номер канала). Если бит IENn равен 1, то соответствующая линия порта AD работает в режиме обычной линии ввода (цифровой ввод), при IENn = 0 линия порта AD с номером n работает в режиме аналогового ввода.
4.24. Подсистема широтно-импульсной модуляции
Микроконтроллер 68HC912B32 и все МК семейства HCS12 имеют в своем составе модуль широтно-импульсного модулятора PWM (Pulse Width Modulation). Широтно-импульсная модуляция (ШИМ) — это способ регулирования скорости вращения двигателя постоянного тока посредством изменения среднего значения напряжения, приложенного к обмоткам двигателя. ШИМ-сигнал может также использоваться для изменения направления движения радиоуправляемой модели автомобиля.
Среднее значение напряжения на обмотках двигателя определяется отношением длительности импульса напряжения (состояние «on» на рис. 4.94) к длительности периода следования импульсов. Это отношение называют коэффициентом заполнения γ, который является величиной безразмерной. Например, если коэффициент заполнения равен 80%, то длительность импульса напряжения (состояние «on») составляет 80%, а длительность паузы (состояние «off») — 20% от длительности периода следования импульсов. На рис. 4.94 показана форма напряжения на обмотках двигателя постоянного тока при двух значениях коэффициента заполнения γ = 20% и γ = 80%.
Читать дальше