ВСТРОЕННЫЕ ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА микроконтроллеров
В составе МК (рис.2.1), кроме центрального процессора, выполняющего основные алгоритмы обработки данных, присутствуют так называемые периферийные устройства, также выполняющие функции обработки данных, но только собственными средствами по собственным специализированным алгоритмам, освобождая основной процессор от многих вспомогательных процедур.
Рисунок 2.1 Типовая структура микроконтроллера семейства MCS-196
К ним можно отнести следующие устройства:
- модуль скоростного ввода/вывода данных (встроенный процессор событий);
- встроенные многоканальные ШИМ-генераторы;
- встроенный аналого-цифровой преобразователь;
- последовательные порты обмена данными;
- встроенный контроллер прерываний;
- сервер периферийных транзакций.
Далее будут рассмотрены более подробные описания и схемотехнические решения перечисленных модулей на примере реализаций в МК фирмы «Intel» MCS-196 [1]. В МК других производителей эти модули также могут присутствовать в аналогичном или в модифицированном виде.
2.1.Порты ввода/вывода
Порты ввода/вывода представляют собой 8-ми или 16-ти разрядные регистры специального назначения (РСН), связанные с внешними выводами (pin) корпуса микросхемы и встроенными периферийными устройствами МК. Все порты подразделяются на три вида: порты только для ввода данных; порты только для вывода данных и порты ввода/вывода.
Внутренние структуры соответствующих портов, в целях упрощения, приведены на рис.2.2 одноразрядными.
Порт ввода данных соединяет входы микросхемы МК и внутреннюю шину через последовательно соединенные защитный согласующий резистор, буфер преобразования уровня входного сигнала, регистр данных порта и буфер. Транзисторные ключи Q1-Q4 являются частью схемы защиты и программной настройки порта, необходимой для установки одного из альтернативных режимов работы: ввод аналоговых сигналов или ввод дискретных сигналов. В случае установки режима ввода аналоговых сигналов информация после входного резистора направляется к аналоговому мультиплексору и затем к АЦП, схема которого будет рассмотрена далее. В случае установки режима ввода дискретных сигналов буфер преобразователя уровня усиливает или ослабляет входной сигнал, в зависимости от соотношений уровня сигнала на входе с соответствующими пороговыми значениями, принятыми для уровней «0» или «1» дискретных сигналов.
В регистр данных по сигналу «строб» будет занесена информация в виде «0» или «1», после чего по команде «чтение из порта» информация поступит на внутреннюю шину МК.
Порт вывода данных получает данные с внутренней шины МК и с помощью схемы комбинационной логики подсоединяет вывод микросхемы к питанию или к общей точке в соответствии с выводимой информацией.
Порт ввода/вывода может осуществлять передачу информации в одном из двух направлений, в зависимости от потребности разработчика системы в конкретном проекте. Для установки режима ввода или вывода все универсальные порты должны быть проинициализированы, т. е. должным образом настроены до начала их использования целевой программой МК.
Обычно это делается в начальных блоках программы, называемых блоками инициализации.
2.2.Модуль скоростного ввода/вывода данных
Для целей промышленного применения, ориентированных на управление событиями в реальном времени, в кристалл микроконтроллера встраиваются устройства скоростного ввода/вывода данных (или процессор событий). Эти устройства используются для точного формирования периодических сигналов в функции времени, а также для измерения временных интервалов между внешними событиями, например для измерения частоты, периода скважности, фазового сдвига импульсных последовательностей с датчиков обратных связей (измерение скорости вращения двигателей по сигналу импульсного датчика положения ротора).
В состав модуля входят таймеры, один из которых является счетчиком тактовых внутренних сигналов прямого счета, а второй может считать как внутренние тактовые сигналы, так и внешние, причем как в прямом, так и в обратном направлении. Инициализация таймеров должна быть произведена до начала работы основной программы.
В процессе работы модуль аппаратно контролирует изменение потенциала внешнего сигнала на (назначенных) входах с помощью встроенной схемы детектора перепадов входного сигнала. При этом детекторы могут быть программно настроены на подъем и/или на потенциал.. Перепад рассматривается как внешнее событие, момент наступления которого фиксируется по текущим показаниям таймера и вместе со статусом входов записывается в стек процессора.
Эта процедура носит название «захват события» и сопровождается формированием запроса на прерывание центральному процессору для обслуживания модуля.
В программе обслуживания прерываний учитывается номер входа, вызвавшего событие, и содержимое таймера в момент наступления события. Таким образом, вычитая из времени наступления текущего события время предыдущего события, можно с высокой точностью определить интервал между событиями, как показано на рис.2.3.
Например, скорость вращения ротора генератора агрегата или электродвигателя можно определить, если установить на него зубчатый металлический диск, а индукционный датчик поместить так, чтобы он выдавал импульс от проходящих мимо него зубцов. Тогда измеренное значение периода следования импульсов позволит вычислить частоту вращения агрегата.
Существенным является то, что работа модулей высокоскоростного ввода/вывода и процессора событий в моменты захвата событий происходит почти автономно от работы основного процессора и не требует никаких дополнительных аппаратных затрат.
2.3.Встроенные многоканальные ШИМ-генераторы
Несмотря на универсальность, гибкость и широкие функциональные возможности применения процессоров событий, данный модуль все же требует некоторого «отвлечения» процессора на обслуживание программ прерывания. Это может проявляться в ограничениях значений максимальной и минимальной скважностей ШИМ-сигналов.
Поэтому для генерации ШИМ-сигналов на высоких несущих частотах (до 40 кГц) более удобен встроенный многоканальный (чаще всего трехканальный) ШИМ-модулятор (рис.2.4.).
Этот генератор копирует структуры классических ШИМ-генераторов с «цифровой пилой» задания и отдельными компараторами для каждого из каналов и не имеет ограничений в регулировании скважности с точностью до 1/255 ширины импульса опорной частоты.
Встроенный ШИМ-генератор может быть использован для прямого цифрового управления электронными коммутаторами, ключами инверторов напряжения и тока, а также в качестве простейших цифроаналоговых преобразователей в системах управления и контроля.
В последнем случае достаточно дополнительно установить на выходе фильтр нижних частот.
2.4.Встроенный аналого-цифровой преобразователь
Встроенный многоканальный аналого-цифровой преобразователь (рис.2.5.) включает входы аналоговых сигналов (обычно используются входы одного или двух дискретных портов ввода данных, которые заранее инициализированы для соответствующего режима работы), программно-управляемый аналоговый мультиплексор, устройство выборки и хранения аналогового сигнала, схему преобразования, регистры времени выборки и времени преобразования, регистр команд, в котором задается номер канала и условия запуска преобразователя, регистр результата.
Уникальной возможностью является автоматический запуск АЦП от модуля высокоскоростного вывода или от процессора транзакций. Эти режимы позволяют полностью автоматизировать не только процесс запуска АЦП, но и процесс получения результатов в определенном месте оперативной памяти ОЗУ (режим сканирования АЦП). При этом все преобразования выполняются как бы самостоятельно, в фоновом режиме, почти без «отвлечения» процессора от решения собственно задач управления.
Многоканальность (от 8 до 16) встроенного АЦП позволяет «одновременно» вводить сигналы от датчиков напряжений и токов, частоты, а также от датчиков технологических параметров, например давления, температуры, расхода. Это позволяет создавать системы комплексной автоматизации.
Среднее быстродействие АЦП составляет от 7 до 20 мкс при разрядности от 8 до 12. Эти показатели для большинства практических задач оказываются удовлетворительными. На рис. 13 приведены варианты схем подключения источников аналоговых сигналов. Схема на рис. 13, а является простейшей. Наличие сопротивлений резисторов, включенных последовательно с входной цепью, ограничивает входной ток при возникновении перенапряжений. Этим же целям служат защитные диоды. Конденсатор вместе с резистором образуют фильтр нижних частот, снижающий чувствительность к высокочастотным помехам. В схеме на рис. 13, б использован неинвертирующий операционный усилитель, позволяющий повысить точность преобразования, а также согласовать уровень входного сигнала с допустимым значением аналогового входа МК ( 0…5 В, Uref), подбором соотношений сопротивлений резисторов R1 и R2. Для этой схемы входное напряжение на входе МК определяется выражением
Uвых = (1+ R2/R1)Uвх.
Схема на рис. 13, в позволяет подключать реверсивные (относительно нуля) входные сигналы, преобразовать уровни входных напряжений и защитить вход МК от перенапряжений. Входное напряжение на входе МК определяется выражением
Uвых = (R2/R1)( Umax – Uвх).
Дата добавления: 2016-10-17; просмотров: 1589;