Rambler's Top100

Встроенный аналого-цифровой преобразователь


Характеристики
Конфигурация АЦП
Работа АЦП
Автор

Характеристики

Встроенный АЦП в зависимости от модели контроллера может иметь до 8 каналов. Во всех моделях реализован 10-разрядный АЦП, имеющий следующие параметры:

  Абсолютная погрешность		- 2 LSB
  Нелинейность				- 0.5 LSB
  Время преобразования			- 70...280 мкс
  Тип преобразования			- последовательное поразрядное 
  					приближение
 

Оглавление Оглавление

Конфигурация АЦП

Блок-схема АЦП



Регистр ADMUX - аналоговый мультиплексор

- - - - - MUX2 MUX1 MUX0

MUX0...MUX2 - номер канала мультиплексора.

Регистр ADCSR - регистр контроля и состояния АЦП

ADEN ADSC - ADIF ADIE ADPS2 ADPS1 ADPS0

ADEN - Если установлен, АЦП включен.
ADSC - Строб начала преобразования. Запись "1" в этот бит активизирует АЦП. Сбрасывается аппаратно по окончании преобразования.
ADIF - Флаг прерывания АЦП. Устанавливается по окончании преобразования аппаратно и сбрасывается при выходе из обработчика прерывания.
ADIE - Бит разрешения прерывания по окончании преобразования. Если установлен, прерывание разрешено.
ADPS0...ADPS2 - Предделитель частоты преобразования.

ADPS2 ADPS1 ADPS0 Частота
0 0 0 Неопределено
0 0 1 CLK/2
0 1 0 CLK/4
0 1 1 CLK/8
1 0 0 CLK/16
1 0 1 CLK/32
1 1 0 CLK/64
1 1 1 CLK/128

Регистр ADCL и ADCH - регистр данных

- - - - - - ADC9 ADC8
ADC7 ADC6 ADC5 ADC4 ADC3 ADC2 ADC1 ADC0

Данные доступны после того, как установлен флаг ADIF.
Оглавление Оглавление

Работа АЦП

Сначала необходимо выбрать частоту преобразования. Это зависит от параметров входного сигнала и делается обычно на берегу при инициализации. Чем выше частота входного сигнала, тем меньшее число должно быть в предделителе. Не забывайте, что на 0 контроллер частоту не поделит.
Затем выбираем канал через мультиплексор. Это как раз можно (и как правило нужно) делать перед началом преобразования. Также если у вас не ATMega, то вам придётся проследить за тем, чтобы используемый вывод был настроен на ввод (получился каламбур). В ATMega АЦП "висит" на порте F, который на вывод не работает
АЦП запускается после того, как установлен бит ADSC (если установлен бит ADCE). Дальше по желанию: можно ждать установки ADIF, а можно перед при инициализации разрешить всё таки прерывание по готовности данных и контроллер известит вас о ней неожиданным броском в сторону (конечно программным).
Дискрета АЦП определяется как

d = Uref/1024,

где Uref - напряжение на входе AREF. Соответственно, точность и нелинейность должны определяться относительно Uref.
Оглавление Оглавление


© Берёзкин С.Е., 2001 г.

stlab@rambler.ru



Оглавление

Главная

Микроконтроллеры



Рейтинг@Mail.ru bigmir)net TOP 100 Rambler's Top100 AllBest.Ru Яндекс цитирования