Характеристики |
Конфигурация АЦП |
Работа АЦП |
Автор |
Характеристики
Встроенный АЦП в зависимости от модели контроллера может иметь до 8 каналов. Во всех моделях реализован 10-разрядный АЦП, имеющий следующие параметры:
Абсолютная погрешность - 2 LSB Нелинейность - 0.5 LSB Время преобразования - 70...280 мкс Тип преобразования - последовательное поразрядное приближение
Конфигурация АЦП
Регистр ADMUX - аналоговый мультиплексор
- | - | - | - | - | MUX2 | MUX1 | MUX0 |
Регистр ADCSR - регистр контроля и состояния АЦП
ADEN | ADSC | - | ADIF | ADIE | ADPS2 | ADPS1 | ADPS0 |
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 |
Работа АЦП
Сначала необходимо выбрать частоту преобразования. Это зависит от параметров
входного сигнала и делается обычно на берегу при инициализации. Чем выше частота
входного сигнала, тем меньшее число должно быть в предделителе. Не забывайте,
что на 0 контроллер частоту не поделит.
Затем выбираем канал через мультиплексор. Это как раз можно (и как правило нужно)
делать перед началом преобразования. Также если у вас не ATMega, то вам
придётся проследить за тем, чтобы используемый вывод был настроен на ввод (получился каламбур).
В ATMega АЦП "висит" на порте F, который на вывод не работает
АЦП запускается после того, как установлен бит ADSC (если установлен бит ADCE).
Дальше по желанию: можно ждать установки ADIF, а можно перед при инициализации
разрешить всё таки прерывание по готовности данных и контроллер известит вас о
ней неожиданным броском в сторону (конечно программным).
Дискрета АЦП определяется как
d = Uref/1024,
где Uref - напряжение на входе AREF. Соответственно, точность и нелинейность должны определяться относительно Uref.© Берёзкин С.Е., 2001 г.