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

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

В процессе работы АЦП может функционировать в двух режимах:

  • режим одиночного преобразования – запуск каждого преобразования инициируется пользователем;

  • режим непрерывного преобразования – запуск преобразований выполняется непрерывно через определенные интервалы времени.

Управление модулем АЦП и контроль его состояния осуществляется с помощью регистра ADCSR (табл. 4.19).

Таблица 4.19 – Разряды регистра ADCSR

Разряд

Название

Описание

7

ADEN

Разрешение АЦП (1 – включен)

6

ADSC

Запуск преобразования

(1 – начать преобразование)

5

ADFR

Выбор режима работы АЦП

(0 – одиночное преобразование)

4

ADIF

Флаг прерывания от АЦП

3

ADIE

Разрешение прерывания от АЦП

2…0

ADPS2:ADPS0

Выбор частоты преобразования

Таблица 4.20 – Задание коэффициента деления предделителя АЦП

ADRS2

ADRS1

ADRS0

Коэффициент деления

0

0

0

1

0

0

1

2

0

1

0

4

0

1

1

8

1

0

0

16

1

0

1

32

1

1

0

64

1

1

1

128

Наибольшая точность преобразования достигается при тактовой частоте модуля АЦП в диапазоне 50…200 кГц. Для этого тактовая частота микроконтроллера поступает на АЦП через предделитель с программируемым коэффициентом деления. Для повышения точности преобразования (чтобы свести к минимуму помехи, наводимые ядром процессора) в микроконтроллере предусмотрен специальный спящий режим – ADC Noise Reduction. В этом режиме из всех периферийных устройств функционируют только АЦП и сторожевой таймер. Сразу же после остановки процессора начнется цикл преобразования. По завершении преобразования будет сгенерировано прерывание от АЦП, которое переведет микроконтроллер в рабочий режим и начнется выполнение подпрограммы обработки этого прерывания.

Поскольку АЦП 10-разрядный, результат преобразования размещен в двух регистрах, доступных только для чтения: ADCH и ADCL. Сначала необходимо прочитать ADCL, а затем ADCH. Если достаточно точности восьми разрядов, для получения результата достаточно прочитать содержимое регистра ADCH.

Номер активного канала (аналоговый вход, подключаемый ко входу АЦП) и источника опорного напряжения задается регистром ADMUX (табл. 4.21–4.23). Разряд ADLAR служит для управления выравниванием результата преобразования. Если этот разряд установлен в 1, результат преобразования выравнивается по левой границе 16-разрядного слова, если сброшен в 0 – по правой границе.

Таблица 4.21 – Разряды регистра ADMUX

Разряд

Название

Описание

7,6

REFS1:REFS0

Выбор источника опорного напряжения

5

ADLAR

Выравнивание результата преобразования

4,3

Зарезервировано

2…0

MUX2:MUX0

Выбор входного канала

Таблица 4.22 – Выбор источника опорного напряжения

REFS1

REFS0

Источник опорного напряжения

0

0

Напряжение питания микроконтролера

0

1

Внешний ИОН, подключенный к выводу РВ0, внутренний ИОН отключен

1

0

Внутренний ИОН напряжением 2,56 В,

отключенный от вывода РВ0 (AREF)

1

1

Внутренний ИОН напряжением 2,56 В,

подключенный к выводу РВ0 (AREF)

Таблица 4.23 – Номер активного канала

MUX2

MUX 1

MUX 0

Вход

0

0

0

ADC0 (PB5)

0

0

1

ADC1 (PB2)

0

1

0

ADC2 (PB3)

0

1

1

ADC3 (PB4)