Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Микроконтроллеры PIC фирмы Microchip для начинающих выпуск №24


РАССЫЛКА Микроконтроллеры PIC фирмы Microchip для начинающих
Ведущий: Алексей (pont_a@mail.ru)


Доброго времени суток, дамы и господа!!

Сегодня начинаем рассматривать периферийный модуль АЦП (аналого-цифровой преобразователь) микроконтроллера PIC18F452! Этот выпуск будет посвящен общим вопросам.

Очень часто в разрабатываемых устройствах приходится работать с аналоговыми сигналами. Это и всевозможные датчики температур, освещенности, положения и т.п. Поэтому в микроконтроллерах предусмотрен периферийный модуль, который позволяет работать с таким типом входных сигналов.
Открываем наш datasheet  и находим пункт 17.0 COMPATIBLE 10-BIT ANALOG-TO-DIGITAL CONVERTER (A/D) MODULE.
В данном разделе описывается модуль АЦП.  Читаем, что модуль представляет собою 10-ти разрядный преобразователь аналогового сигнала в цифровой код. Диапазон измеряемого аналогового сигнала АЦП определяется, так называемой опорой (опорным напряжением Vref+ и Vref-). Простыми словами, входной сигнал должен изменяться в пределах от Vref- до Vref+.  Т.е., если входной сигнал будет равен Vref-, то мы получим код равный 0x0000 (минимальное значение), если аналоговый сигнал будет равен Vref+, то 0x03FF (максимальное значение). В идеале, расчет кода аналогового входного сигнала (Vain) производится по следующей формуле:
Kadc = ((Vain – Vref-)/(Vref+ – Vref-))*1023
где, 1023 = 2^10 – 1, т.к. у нас 10-ти битное преобразование.  Почему в идеале? Потому что, такая формула даст точный результат, если функция пересчета преобразователем аналогового сигнала в цифровой код линейна. На практике же, существует нелинейность преобразователя.  

Ниже приведена структурная схема периферийного модуля АЦП.

Структурная схема АЦП

Как мы видим, микроконтроллер PIC18F452 имеет 8 аналоговых входов, которые обозначаются аббревиатурой ANx. Данные входы не выделяются аппаратно, а являются альтернативными функциями дискретных входов/выходов. Таким образом, перед тем как использовать АЦП, необходимо эти функции задействовать. Также, необходимо определить способ формирования опорного напряжения: его можно задать, как от питания микроконтроллера, так и от внешнего стабилизатора. Как это делать, мы изучим в следующем выпуске.
По схеме видим, что блок, преобразующий аналоговый входной сигнал в цифровой код один, а 8 каналов мультиплексируются на этот блок.  Поэтому в единицу времени можно анализировать только один аналоговый входной сигнал – параллельная работа одновременно с несколькими каналами невозможна. Если необходимо обрабатывать в программе несколько аналоговых сигналов, то необходимо, после очередного преобразования, переключать мультиплексором на блок преобразователя новый канал и так далее, по кругу, обрабатывать все необходимые аналоговые сигналы.
    
В следующем выпуске, продолжим рассматривать аналого-цифровой преобразователь микроконтроллера PIC18F452. Рассмотрим регистры управления данным периферийным модулем.

Полный архив рассылки Вы можете прочитать на нашем сайте!  При любом опубликовании текстов данной рассылки ссылка на сайт http://www.2aplusa.ru обязательна!


Желаю Вам удачи! До скорой встречи!


С уважением, Алексей pont_a@mail.ru
Cайт разработчиков 2AplusA http://2aplusa.ru


В избранное