Модуль АЦП
МОДУЛЬ АЦП
Модуль АЦП в микроконтроллерах РIС16FХХХ имеет от 5 до 8 каналов, преобразование в которых производится последовательно. Входной аналоговый сигнал заряжает конденсатор выборки и хранения, значение которого затем оцифровывается методом последовательного приближения.
Результатом преобразования является 10-битное число.
АЦП может работать в режиме пониженного энергопотребления микроконтроллера. В этом случае АЦП тактируется от внутреннего RС-генератора. По окончании преобразования в зависимости от того разрешена обработка прерывания от модуля АЦП или нет, может производиться пробуждение (переход из режима пониженного энергопотребления в рабочий режим) микроконтроллера.
Модуль АЦП управляется 4-мя регистрами: регистры результата преобразования – ADRESH, ADRESL и регистры конфигурации – ADCON0, ADCON1.
С помощью регистра ADCON0 осуществляется управление работой АЦП, а регистром ADCON1 - конфигурируется выводы, с целью выбора режима их работы (аналоговый вход, цифровой вход/выход, опорное напряжение для модуля АЦП)
Регистр ADCON0
ADCS1...ADCS0: Выбор частоты преобразования АЦП (00-FOSС/2, 01-FOSC/8, 10- FOSC/32, 11-FRC);
CHS2…CHS20: Выбор канала для преобразования (двоичный код соответствующий номеру канала);
GO/DONE: Установка бита запускает преобразование в выбранном канале, по завершению аппаратно сбрасывается.
ADONE: 1/0 - включение, выключен не модуля АЦП
Регистр ADCON1
| ADFM | - | - | - | PCFG3 | PCFG2 | PCFG1 | PCFG0 |
| Бит 7 | Бит 0 |
ADFM: Выбор форматирования результата преобразования.
1 - по правому краю - 6 старших бит регистра ADRESH нулевые;
0 - по левому краю - 6 младших бит регистра ADRESL нулевые.
PCFG3… PCFG0 - конфигурация выводов модуля АЦП
Конфигурация выводов модуля АЦП (РIС16F873/76)

Для выполнения преобразования аналогового напряжения с помощью модуля АЦП необходимо выполнить следующие операции:
• Сконфигурировать модуль АЦП.
• задать режим каналов АЦП, выбрать источники опорного напряжения;
• выбрать канал преобразования;
• задать частоту преобразования;
• включить модуль АЦП.
• Включить обработку прерывания от модуля АЦП по окончании преобразования (если требуется)
• сбросить флаг прерывания ADIF;
• установить бит разрешения прерывания ADIE;
• установить бит глобальной обработки прерываний GIE;
• Осуществить задержку на время подготовки выбранного канала TACQ;
• Запустить преобразование установкой бита GO/DONE;
• Ждать завершения преобразования, опрашивая бит GO/DONE или ожидая прерывания от модуля АЦП:
• Считать результат преобразования (регистры ADRESH: ADRESL), сбросить флаг ADIF, если используется обработка по прерыванию от АЦП.
• Для следующего преобразования перейти к шагу 1 или 2. Минимальный интервал преобразования для получения одного бита результата TAD определяется таблицей на следующем слайде. Минимальная задержка перед подготовкой следующего преобразования составляет 2
TAD.
Зависимость времени преобразования для получения одного бита результата ТAD от частоты преобразования и тактовой частоты микроконтроллера.

Замечания:
1 - обычное время преобразования при тактировании от RС-генератора составляет 4 мкс; при тактовой частоте микроконтроллера превышающей 1 МГц, преобразование данного типа рекомендуется использовать только в режиме пониженного энергопотребления.
2 - данные значения не применимы в реальной работе, т.к. фирма-производитель не гарантирует правильность получаемых результатов;
Обратите внимание на лекцию "2.1. Деградация ксенобиотиков с помощью микроорганизмов".
3 - рекомендуется применение более высокочастотного кварцевого резонатора для уменьшения времени преобразования;
Время подготовки канала для зарядки конденсатора выборки - хранения перед выполнением преобразования при рекомендуемом сопротивлении источника сигнала 10 кОм составит порядка 14 мкс. На выполнение полного цикла преобразования для получения 10-битного результата требуется 12
ТAD циклов.
Источник опорного напряжения
Структурная схема источника опорного напряжения

В регистре VRCON - биты управления источником.























