Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy_i_otvety_MPT.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
3.94 Mб
Скачать

Таймеры микроконтроллеров

Для выполнения функций, связанных с управлением в реальном времени, в состав МК включают специальные аппаратные средства, которые называются таймером.

Модули таймеров служат для приема информации о времени наступления тех или иных событий от внешних датчиков, а также для формирования управляющих воздействий во времени.

В процессе развития модули таймеров в составе 8-разрядных МК непрерывно совершенствовались. Рассмотрим принцип действия одного из первых модулей, который входит в состав МК 8051 фирмы Intel. Схемотехникой МК предусматривается использование таймера в режиме счетчика внешних событий, поэтому его часто называют таймером/счетчиком.

Таймер представляет собой 16-разрядный счетчик со схемой управления (рис. 10.3). В карте памяти МК счетчик отображается двумя регистрами: ТН – старший байт счетчика, TL – младший байт. Регистры доступны для чтения и записи. Направление счета – только прямое, то есть при поступлении входных импульсов содержимое счетчика инкрементируется. В зависимости от программных настроек счетчик может использовать один из двух источников входных сигналов:

1) импульсную последовательность с выхода управляемого делителя частоты;

2) внешнюю импульсную последовательность, поступающую на один из входов МК.

В первом случае говорят, что счетчик работает в режиме таймера, во втором – в режиме счетчика событий. При переполнении счетчика устанавливается в «1» триггер переполнения TF, который генерирует запрос на прерывание, если прерывание от таймера разрешены. После переполнения работа счетчика продолжается. Последовательность изменения кодов следующая: FFFFh, 0000h, 0001h и т.д. Пуск и останов счетчика могут выполнятся только под управлением программы посредством установки или сброса соответствующего бита в регистре управления таймером. Программа также может установить старший TH и младший TL байты счетчика в произвольное состояние или прочитать текущий его код.

Главный недостаток модуля «классического» таймера – невозможность одновременного обслуживания (измерения или формирования импульсного сигнала) сразу в нескольких каналах. Совершенствование структуры подсистемы реального времени 8-разрядных МК ведется по двум направлениям:

1) простое увеличение числа модулей таймеров. Этот путь характерен для фирм, выпускающих МК со структурой MCS-51;

2) модификация структуры модуля таймера, при которой увеличение числа каналов достигается не увеличением количества счетчиков, а введением дополнительных аппаратных средств входного захвата и выходного сравнения. Такой подход используется в МК фирм Motorola, Microchip, более поздних моделей семейства MCS-51.

Рис. 10.3. Структура таймера/счетчика

11. Средства аналогового ввода/вывода микроконтроллеров: назначение, принцип построения компаратора напряжения и модуля аналого-цифрового преобразования, принцип получения аналогового выходного напряжения.

Необходимость приема и формирования аналоговых сигналов требует наличия в МК модулей аналогового ввода/вывода.

Простейшим устройством аналогового ввода в МК является встроенный компаратор напряжения. Компаратор представляет собой простую схему, которая сравнивает два напряжения: входное аналоговое напряжение UВХ с опорным UREF и устанавливает на выходе логическую 1, если входное напряжение больше опорного (рис. 11.1,а).

Разрешение на работу компараторов делается обычно с помощью весьма простой операции – требуется лишь предварительно перевести выводы МК, использующиеся для сравнения, в режим входов. Время срабатывания компараторов очень мало, что позволяет быстро формировать сигналы тревоги или какие-либо другие ответные реакции на изменение соотношения входных сигналов (рис. 11.1,б ). В МК с помощью компараторов напряжения можно инициировать прерывание при каждом очередном изменении состояния соответствующих входов.

Однако более широкие возможности для работы с аналоговыми сигналами дает аналого-цифровой преобразователь (АЦП). Отличительная особенность многих современных 8-разрядных МК - интегрированный на кристалл МК модуль многоканального АЦП. Он предназначен для ввода в МК аналоговых сигналов с датчиков физических величин и преобразования этих сигналов в двоичный код с целью последующей программной обработки. Структурная схема типового модуля АЦП представлена на рис. 11.2.

Рис. 11.1. Принцип работы компаратора напряжения:

а) - условное обозначение; б) - временные диаграммы

Многоканальный аналоговый коммутатор К служит для подключения одного из источников аналоговых сигналов (выводы порта Рx.0 ... Рx.7) ко входу АЦП. Выбор источника сигнала для преобразования осуществляется посредством записи номера канала коммутатора в соответствующие разряды регистра управления АЦП.

Диапазон измеряемых значений напряжения аналоговых входов определяется напряжением опоры Uоп. Разрешающая способность АЦП составляет Uоп/2n, где n – число двоичных разрядов в слове результата. Максимальное значение опорного напряжения, как правило, равно напряжению питания МК. Два вывода модуля АЦП используются для задания опорного напряжения: UREFH – верхний предел Uоп, UREFL – нижний предел. Разность потенциалов на входах UREFH и UREFL и составляет Uоп. Если измеряемое напряжение Uизм  UREFH, то результат преобразования будет равен FFh. Код 00h соответствует напряжениям Uизм  UREFL. Для достижения максимальной точности измерения следует выбрать максимально допустимое значение Uоп. В этом случае напряжение смещение нуля входного каскада и нелинейность передаточной характеристики АЦП будут вносить относительно малые погрешности.

Собственно аналого-цифровой преобразователь выполнен по способу последовательного приближения. Разрядность такого АЦП обычно составляет 8, реже 10 разрядов.

Длительность такта преобразования задает генератор синхронизации: один цикл получения очередного разряда выходного кода равен двум периодом частоты генератора TАЦП. Время преобразования АЦП можно рассчитать по формуле:

tпр= (2n + 1)ТАЦП.

Последний цикл необходим для переноса результата в регистр данных АЦП. Время преобразования для типовых модулей АЦП микроконтроллеров составляет от единиц до десятков микросекунд.

Рис. 11.2. Типовая структура модуля АЦП

Источником синхронизации модуля АЦП может служить встроенный RC-генератор (Г) или импульсная последовательность тактирования внутренних шин МК. В первом случае частота синхронизации АЦП обязательно окажется оптимальной, то есть той, которая рекомендуется в техническом описании. Во втором случае выбранная по другим соображениям BUS может оказаться неподходящей для модуля АЦП. На этот случай в составе некоторых модулей предусмотрен программируемый делитель частоты BUS.

Большинство модулей АЦП имеет только режим программного запуска: установка одного из битов регистра режима запускает очередное измерение. Момент завершения цикла преобразования АЦП отмечается установкой триггера готовности данных. Если прерывания от модуля АЦП разрешены, то генерируется запрос на прерывание. Как правило, чтение регистра результата сбрасывает триггер готовности.

Цифро-аналоговые преобразователи в составе МК являются большой редкостью. Обычно функция цифро-аналогового преобразователя реализуется средствами модуля программируемого таймера в режиме ШИМ. На одном из выводов МК формируется высокочастотная импульсная последовательность. Полученный сигнал сглаживается фильтром нижних частот с целью получения непрерывной осредненной величины.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]