CANNY 5 Nano. Драйвер широтно-импульсного модулятора (ШИМ)
Общее описание
Три из восемнадцати каналов ввода-вывода (Канал №5, Канал №7 и Канал №16) CANNY 5 Nano поддерживают работу в режиме широтно-импульсного модулятора.
Использование драйвера ШИМ позволяет указанным каналам контроллера работать асинхронно функциональной диаграмме, что дает возможность добиться максимальной стабильности временных параметров генерируемого сигнала.
Драйвер ШИМ CANNY 5 Nano имеет два основных режима работы, задаваемых раздельно для каждого из трех каналов: низкочастотный и высокочастотный. Низкочастотный режим, позволяет реализовывать импульсный режим работы соответствующего канала с периодом от 2 до 65536 миллисекунд с шагом 1 миллисекунда, при использовании стандартных настроек системного таймера, и периодом от 200 до 6553600 микросекунд с шагом 100 микросекунд, при использовании увеличенного разрешения системного таймера.
В режиме высокочастотного ШИМ, период задается в диапазоне от 2 до 256 микросекунд, с шагом 1 микросекунда вне зависимости от настроек масштаба времени системного таймера.
Каналы могут быть задействованы независимо друг от друга и иметь индивидуальные настройки заполнения (скважности) ШИМ и подтяжки линии. В режиме низкочастотного ШИМ каналы также могут иметь и индивидуальные настройки значений периода, в то время как в режиме высокочастотного ШИМ, период является параметром, общим для всех использующих данный режим ШИМ каналов.
Каналы ШИМ имеют независимую во всех режимах работы настройку активного потенциала канала: открытый коллектор либо +5В.
Определение параметров работы канала для работы в режиме ШИМ, определяется записью ряда констант, в соответствующие регистры драйвера. Для конфигурации драйвера пользователю доступны несколько именованных констант.
Параметр | Перечень допустимых значений |
---|---|
Конфигурация высокочастотного режима ШИМ | Высокочастотный режим канала ШИМ включен, разрешение, 1мкс; Высокочастотный режим канала ШИМ выключен, разрешение, 1мс / 100мкс. |
Конфигурация режима открытого коллектора ШИМ | Режим открытого коллектора канала ШИМ включен; Режим открытого коллектора канала ШИМ выключен. |
Именованные константы, содержатся в разделе «Конфигурация каналов ввода-вывода» справочника констант CannyLab, доступ к которому осуществляется через контекстное меню входа функционального блока, имеющего тип «Константа».
Для перевода канала контроллера в режим широтно-импульсного выхода, необходимо:
- в «Регистр включения драйвера ШИМ канала №ХХ» передать числовое значение, отличное от «0»;
- в «Регистр включения высокочастотного режима ШИМ канала №ХХ» передать значение именованной константы, соответствующей выбранному режиму работы;
- в «Регистр установки режима открытого коллектора ШИМ канала №ХХ» передать значение именованной константы, соответствующей выбранному режиму работы;
- в «Регистр установки периода ШИМ канала №ХХ» передать числовое значение, устанавливающее период генерируемых импульсов: от 0 до 65565 мс - для низкочастотного ШИМ; от 0 до 256 мкс для высокочастотного ШИМ;
- в «Регистр установки скважности ШИМ канала №ХХ» передать числовое, устанавливающее заполнение (скважность) генерируемых импульсов: от 0 до 65565 мс - для низкочастотного ШИМ; от 0 до 256 мкс - для высокочастотного ШИМ.
Регистры драйвера
Ниже приведено описание допустимых значений регистров управления работой драйвера широтно-импульсного модулятора.
Для каждого из каналов, поддерживающих работу в режиме ШИМ, настройки параметров импульсных сигналов доступны с помощью индивидуальных, для каждого из них, регистров драйвера.
Параметр | Ожидаемые значения |
---|---|
Регистр установки периода ШИМ канала №ХХ | В режиме низкочастотного ШИМ (мс / 0,1мс): 1…65535 = задать период генератора ШИМ указанного канала. В режиме высокочастотного ШИМ (мкс): 1…256 = задать период генератора ШИМ указанного канала. Значение превышающее 256 будет взято по модулю 256 |
Регистр установки заполнения (скважности) ШИМ канала №ХХ | В режиме низкочастотного ШИМ (мс / 0,1мс): 1…65535 = задать заполнение (скважность) ШИМ указанного канала. В режиме высокочастотного ШИМ (мкс): 1…256 = задать заполнение (скважность) ШИМ указанного канала. Значение превышающее 256 будет взято по модулю 256. |
Регистр включения драйвера ШИМ канала №ХХ | 1…65535 = перевести канал контроллера в режим широтно-импульсного модулятора; ШИМ указанного канала. 0 = использовать канал контроллера в обычном режиме. |
Регистр установки режима открытого коллектора ШИМ канала №ХХ | 1…65535 = режим открытого коллектора включен, полярность генерации ШИМ для канала «воздух» / GND; 0 = режим открытого коллектора выключен, полярность генерации ВЧ ШИМ для канала +5В / GND. |
Регистр включения высокочастотного режима ШИМ канала №ХХ | 1…65535 = перевести канал контроллера в режим высокочастотного широтно-импульсного модулятора; 0 = использовать канал в режиме низкочастотного ШИМ. |
Особенности работы
Для корректной работы драйвера ШИМ в высокочастотном режиме, в регистрах установки периода ШИМ всех каналов работающих в высокочастотном режиме должны быть установлены одинаковые значения.
При включении драйвера ШИМ канала, в случае если значение его периода указано равным 0, то, вне зависимости от указанного значения заполнения (скважности), канал ШИМ будет всегда находиться в состоянии «GND». В случае если значение заполнения (скважности) указано равным 0, то, вне зависимости от других заданных параметров, канал ШИМ будет всегда находиться в состоянии «GND».
Если значение заполнения (скважности) больше значения периода или равно ему, то канал ШИМ будет всегда находиться в состоянии +5В или «воздух», в зависимости от значения регистра установки режима открытого коллектора ШИМ канала.
При использовании для работы с низкочастотным ШИМ режима увеличения разрешения системного таймера значения периода и заполнения задается в сотнях микросекунд, иначе — в миллисекундах.
При изменении значений периода или заполнения ШИМ во время работы канала в режиме ШИМ новые значения обновленных параметров будут применены драйвером только в начале следующего периода ШИМ. Для ускоренного применения новых параметров ШИМ очень низкой частоты, необходимо выполнять изменение значения через выключение режима ШИМ с последующим его включением.
Если канал включен в режиме ШИМ, т. е. в «Регистр включения драйвера ШИМ канала №ХХ» установлено значение, отличное от 0, то при установке в него значения 0 работа ШИМ канала немедленно прекращается и канал передается под управление драйвера ввода-вывода.
Примеры
ВНИМАНИЕ! Каналы CANNY 5 Nano не имеют защиты от короткого замыкания или перегрузки. Во избежание выхода каналов из строя, избегайте прямого подключения каналов с включенным выходным потенциалом «GND» к силовым цепям положительной полярности!