Українська      English    Реєстрація   |  
 Вхід клієнта   
За складом     За сайтом
  Наприклад: PIC12F629
Головна - Публікації - Публікації microchip

Периферийные модули контроллеров цифровой обработки сигналов dsPIC30F

    Широкая гамма периферийных модулей позволяет получать информацию и управлять внешними устройствами. В зависимости от семейства контроллеры имеют такие модули как таймеры, модули захвата/сравнения/ШИМ, специализированные модули ШИМ для управления электроприводом, интерфейс квадратурного энкодера, 10 и 12-ти разрядный АЦП, интерфейсы USART, SPI, I2C, DCI, CAN.

    Многие модули или их отдельные функции впервые представлены в контроллерах компании Microchip. Рассмотрим более подробно назначение и особенности функционирования отдельных таких периферийных устройств.

    Все микроконтроллеры dsPIC30F имеют несколько 16-и разрядных таймеров, число которых может быть разным в зависимости от типа контроллера. Эти таймера имеют обозначения Timer1, Timer2, Timer3 и т.д. Некоторые из таймеров могут работать совместно как 32-х разрядные таймера. Все 16-ти разрядные таймера присутствующие в dsPIC30F функционально идентичны. Все таймера делятся на три функциональные группы: А, В и С.

    Таймер типа А (обычно это Timer 1) присутствует в большинстве контроллерах dsPIC30F. Таймер типа А может работать с внешним кварцем 32кГц а так же может работать в асинхронном режиме с внешним источником тактовых импульсов. Свойства таймера типа А дают возможность «пробуждать» контроллер из режима SLEEP (т.к. таймер может работать от внешнего асинхронного источника), а оптимизация тока потребления для работы с внешним кварцем на 32768 Гц позволяют организовывать на его основе микропотребляющие часы реального времени (RTC).

    Таймер типа B (обычно это Timer 2 и Timer 4) присутствует в большинстве контроллерах dsPIC30F. Таймер типа В может каскадироваться с таймером типа С для создания 32-х разрядного таймера. Синхронизация тактов для таймера В осуществляется после логики предделителя.

    Таймер типа С (обычно это Timer 3 и Timer 5) может каскадироваться с таймером типа В для создания 32-х разрядного таймера. В режиме сравнения такой таймер может являться инициатором автоматического запуска аналого-цифрового преобразователя (АЦП).

    Таймеры в контроллерах dsPIC могут быть сконфигурированы для работы с внешним входом разрешения счета. В этом случае счет таймера начинается одновременно с установлением высокого уровня на внешнем входе и продолжается до изменения состояния входа или совпадения значения таймера с регистром периода.

    Помимо обычных модулей широтно-импульсной модуляции (ШИМ) в контроллерах dsPIC существуют специализированные модули, которые призваны облегчить формирование многоканальных синхронизированных импульсов ШИМ для систем управления электроприводом и преобразователей мощности. С помощью специализированного модуля MCPWM (MCPWM – ШИМ для управления приводом) можно управлять следующими устройствами:
    - 3-х фазными индукционными двигателями переменного тока (ACIM);
    - 3-х фазными шаговыми двигателями с реактивным ротором, вентильными реактивными электродвигателями (Switched Reluctance (SR) Motor);
    - бесколлекторными двигателями постоянного тока (BLDC);
    - бесперебойными источниками питания (UPS).

    Модули MCPWM имеют следующие особенности:
    - Два вывода на каждый MCPWM_генератор.
    - Комплементарное или независимое управление для каждой пары выходов.
    - Аппаратная реализация “мертвого времени” для комплементарного режима.
    - Программируемая полярность выходных импульсов.
    - Множество режимов формирования выходных импульсов:
    а) ШИМ с выравниванием по фронту;
    б) центрированная ШИМ;
    в) центрированная ШИМ с двойным обновлением;
    г) режим одиночного импульса.
    - Аппаратный вход аварийной ошибки драйвера (FAULT) с программируемой функцией.
    - Возможность синхронизации измерений АЦП с формируемой ШИМ.
    - Возможность индивидуального разрешения каждого выхода ШИМ.

    В dsPIC30F возможно два варианта MCPWM модуля в зависимости от типа контроллера. Модуль с 8_и канальной ШИМ обычно присутствует в контроллерах с 64 или более выводами. Модуль MCPWM с 6_ю каналами реализован в устройствах с меньшим числом выводов.

    MCPWM модуль с 6 выводами используется в однои трехфазных приложениях управления мощностью, в то время как модуль с 8_и канальным ШИМ может управлять четырехфазными двигателями. Модуль 8-и канального ШИМ обеспечивает большую функциональность, так как поддерживает два входа FAULT и два программируемых значения мертвого времени.

    Еще один модуль, служащий для облегчения задач управления электроприводом, это квадратурный энкодер, который используется как аппаратный детектор положения и направления вращения электропривода. Квадратурные энкодеры позволяют построить замкнутую систему управления во многих задачах в системах управления двигателем.

    Типичный энкодер представляет собой колесо, размещенное на валу двигателя и модуль детектора, определяющий положение колеса. Как правило, энкодер имеет три вывода: фаза A, фаза B и индексный выход, информация с которых может быть декодирована для получения информации о вращении вала двигателя, включая скорость и направление вращения.

    В контроллерах dsPIC30F реализован интерфейс связи с квадратурным энкодером, который содержит логику декодирования и интерпретации сигналов энкодера и 16_ти битный реверсивный счетчик для подсчета числа импульсов. Счетчик энкодера при необходимости может быть использован как таймер или счетчик общего назначения. Модуль интерфейса квадратурного энкодера содержит программируемый аппаратный цифровой фильтр для подавления дребезга входных сигналов, что обеспечивает высокую точность определения параметров движения вала двигателя.

    Во всех контроллерах dsPIC30F существует модуль аналого-цифрового преобразователя (АЦП). В зависимости от типа устройств и назначения dsPIC30F имеют 10 или 12_ти разрядный АЦП.

    АЦП последовательного приближения с разрядностью 10бит имеет следующие отличительные особенности:
    - Скорость преобразования до 500 тыс. преобразований в секунду;
    - До 16 аналоговых входов;
    - Возможность подключения внешнего опорного напряжения;
    - Четыре дифференциальных устройства выборкихранения (УВХ);
    - Возможность одновременного (до 4-х каналов) или последовательного измерения;
    - Режим автоматического сканирования каналов;
    - Выбираемый источник запуска старта преобразований;
    - Буфер результатов измерений на 16 значений;
    - Возможность работы в режиме SLEEP и IDLE.

    Структурная схема 10-и разрядного АЦП показана на рис. Аналоговые входы контроллера через мультиплексор подключаются к 4_м устройствам выборкихранения (УВХ). АЦП может быть сконфигурировано для работы с одним, двумя или четырьмя УВХ. Мультиплексор позволяет подключать к УВХ до двух входных сигналов, тем самым предоставляется возможность производить измерения дифференциальных или униполярных сигналов.

    АЦП подключен к буферу результатов, который представляет собой двухпортовое ОЗУ на 16 значений. Результат 10_и разрядного преобразования, при считывании из буфера, может быть преобразован в четыре различных формата представления данных. Буфер АЦП позволяет накапливать результаты измерений для последующей обработки программой пользователя. Для удобства буфер может быть сконфигурирован как один буфер на 16 значений или как два буфера по 8.

    Прерывание от АЦП может устанавливаться после каждого измерения или после каждого 2-го, 3-го, … , 16-го преобразования, что позволяет считывать результаты из буфера по мере его заполнения.

    В контроллерах dsPIC реализовано несколько вариантов последовательности выборка_преобразование. Возможен вариант с одновременным захватом УВХ до 4-х входных аналоговых сигналов с последующим последовательным преобразованием их в цифровой код или автоматическое преобразование последовательно нескольких каналов. Во втором случае после выборки и преобразования 1-го канала запускается выборка и преобразование 2-го канала и т.д.

    Запуск преобразований АЦП может инициироваться программно, изменением состояния внеш_него вывода контроллера, при совпадении значения Таймера 3 (режим сравнения) или завершением интервала ШИМ в модуле MCPWM.

    Отличие 12-и разрядного АЦП заключается в наличии только одного УВХ и уменьшении скорости преобразования до 100 тыс. преобразований в секунду. АЦП в контроллерах семейства dsPIC предоставляют широкие возможности для осуществления измерений в сложных системах управления, измерений и обработки сигналов.

    Последовательный интерфейс I2C предназначен для связи с различными устройствами (EEPROM_памятью, часами реального времени, драйверами LCD_дисплеев и т.п.) или другими контроллерами.

    Модуль I2C в dsPIC поддерживает режим ведомого (SLAVE), ведущего (MASTER) а также режим с несколькими ведущими устройствами (MULTI_MASTER). Реализована поддержка 7_и и 10_и битной адресации устройств а так же поддержка скоростей шины 100КГц и 400КГц.

    В контроллерах содержатся независимые блоки поддержки ведомого и ведущего. Когда активна логика MASTER-блока, SLAVE-блок является так же активным для определения состояния шины и приема своих сообщений в режиме одного ведущего или сообщений другого ведущего в режиме MULTI-MASTER. Модуль I2C в режиме с несколькими ведущими обеспечивает арбитраж и определение конфликтных ситуаций, что исключает потерю сообщений. Собственный генератор скорости передачи данных не требует для своей работы дополнительных ресурсов контроллера.

    В dsPIC контроллерах общего назначения интегрирована поддержка интерфейсов связи DCI (Data Converter Interface). Данный интерфейс реализован во многих звуковых кодерах/декодерах (кодеках), АЦП и ЦАП. DCI поддерживает интерфейсы: I2S, AC_link (AC-97) и последовательную синхронную передачу фреймов (Framed Synchronous Serial Transfer).

    Многие кодеки, которые используются в аудиоприложениях, поддерживают скорость выборок от 8 кГц до 48 кГц. Модуль DCI автоматически определяет временные параметры интерфейса кодека. Длина слова в DCI может быть запрограммирована до 16 бит. Однако часть кодеков имеют длину слова более 16 бит. Поддержка длинных слов в dsPIC реализуется из нескольких 16-ти битных слотов. Эта операция прозрачна для пользователя и данные располагаются последовательно в регистрах контроллера. Модуль DCI поддерживает до 16 временных слотов в фрейме данных, максимальная длина фрейма 256 бит.

    Благодаря высокому быстродействию (тактовая частота до 120МГц), мощной системе команд и наличию большого числа разнообразных периферийных устройств, 16_ти разрядные контроллеры MICROCHIP семейства dsPIC30F найдут широкое применение в системах контроля, управления и обработки звука. Подробная документация на контроллеры dsPIC30F доступна на сайте Microchip www.microchip.com.


Структурная схема 10-ти разрядного АЦП



Структурная схема 12-ти разрядного АЦП


Вернуться назад