Смекни!
smekni.com

AVR микроконтроллер AT90S2333 фирмы Atmel (стр. 15 из 22)

3. Если за время преобразования не произойдут другие прерывания, по окончанию преобразования процессор выйдет из режима холостого хода и выполнит прерывание по окончанию преобразования.

РЕГИСТР УПРАВЛЕНИЯ МУЛЬТИПЛЕКСОРОМ АЦП – AMUX

07h(27h)

7

6

5

4

3

2

1

0

-

ADCBG

-

-

-

MUX2

MUX1

MUX0

R\W R R R\W R\W R\W R\W R\W

Начальное значение

0 0 0 0 0 1 0 0

Бит 7 - зарезервирован; в AT90S2333/4433 этот бит зарезервирован и при записи должен устанавливаться в 0.

Бит 6 - ADCBG - выбор опорного напряжения АЦП - при установке этого бита на вход АЦП подается фиксированное напряжение 1.22+-0.05В, когда бит сброшен, вход АЦП подключается к одному из внешних входов согласно установке битов MUX2..MUX0.

Биты 5..3 - зарезервированы. В AT90S2333/4433 эти биты зарезервиро­ваны и при записи должны устанавливаться в 0.

Биты 2..0 - MUX2..MUX0 - выбор аналогового входа. Содержимое этих бит определяет какой из аналоговых входов подключен на вход АЦП.

РЕГИСТР УПРАВЛЕНИЯ И СОСТОЯНИЯ АЦП – ADCSR

ADCSR

06h(26h)

7

6

5

4

3

2

1

0

ADEN

ADSC

ADFR

ADIF

ADIE

ADPS2

ADPS1

ADPS0

R\W R\W R\W R\W R\W R\W R\W R\W

Начальное значение

0 0 0 0 0 1 0 0

Бит 7 - ADEN - Разрешение АЦП. - При записи логической "1" в этот бит разрешается работа АЦП. При установке бита в "0" АЦП выключается. При выключении АЦП до окончания преобразования, преобразование не за­вершается.

Бит 6 - ADSC - Запуск преобразования АЦП. - В режиме одиночного преобразования для запуска преобразования в этот бит должна быть запи­сана "1". При запуске преобразования битом ADSC время преобразования отчитывается ль начала следующего периода частоты на выходе делителя. При установке ADSC после разрешения АЦП или при одновременном разреше­нии АЦП и установке ADSC, первому преобразованию предшествует "пустой" цикл преобразования. Во время этого цикла происходит инициализация АЦП. Во время преобразования бит ADSC остается установленным и сбрасы­вается при завершении преобразования, но до того, как результат пере­писывается в регистр данных АЦП. Это позволяет запустить новое преоб­разование до того как завершится текущее. Новое преобразование будет запущено сразу по окончанию текущего. Если преобразованию предшествует "пустой" цикл, бит ADSC остается установленным пока не будет завершено реальное преобразование. Запись 0 в этот бит не дает результата.

Бит 5 - ADFR - Выбор непрерывного преобразования АЦП. - Когда этот бит установлен, включается режим непрерывного преобразования АЦП. В этом режиме АЦП непрерывно производит выборки сигнала и обновляет ре­гистр данных. При сбросе этого бита режим непрерывного преобразования отключается.

Бит 4 - ADIF - Флаг прерывания АЦП. - Этот флаг устанавливается ко­гда завершается цикл преобразования АЦП и обновляется регистр данных АЦП. Если установлены флаг глобального разрешения прерываний (I в

SREG) и бит ADIE, по завершению преобразования выполняется прерывание.

Флаг ADIF сбрасывается аппаратно при выполнении соответствующего преры­вания. Другой способ сбросить флаг - записать в него "1". Необходимо предостеречь, что при чтении-модификации-записи ADCSR может быть за­прещено отложенное прерывание. Это же касается и команд SBI и CBI.

Бит 3 - ADIE - Разрешение прерывания от АЦП. - При установке этого бита и бита I в регистре SREG разрешены прерывания по окончанию преоб­разования АЦП.

Биты 2..0 - ADPS2..ADPS0 - биты установки предварительного делите­ля. - Эти биты задают коэффициент деления тактовой частоты процессора и задают тактовую частоту работы АЦП.

Таблица 20. Выбор коэффициента деления АЦП

ADPS2

ADPS1

ADPS0

Коэф.деления

ADPS2

ADPS1

ADPS0

Коэф.деления

0

0

0

2

1

0

0

16

0

0

1

2

1

0

1

32

0

1

0

4

1

1

0

64

0

1

1

8

1

1

1

128

РЕГИСТР ДАННЫХ АЦП - ADCL И ADCH

ADCH

05h(25h)

7

6

5

4

3

2

1

0

-

-

-

-

-

MSB

R R R R R R R R

Начальное значение

0 0 0 0 0 0 0 0

ADCL

04h(24h)

7

6

5

4

3

2

1

0

LSB

R R R R R R R R

Начальное значение

0 0 0 0 0 1 0 0

Сканирование аналоговых каналов

Поскольку смена аналоговых каналов всегда происходит после завер­шения преобразования, для переключения каналов преобразователя можно использовать режим непрерывного преобразования. Обычно для переключе­ния каналов используется прерывание по завершению преобразования. Од­нако пользователь должен принимать во внимание следующие факторы:

- в режиме непрерывного преобразования, цикл выборки-хранения следующего преобразования начинается через полтора тактовых цикла по­сле того как результат текущего преобразования записывается в регистр данных АЦП и устанавливается флаг ADIF. Если канал АЦП переключится до того как произойдет операция выборки-хранения, результат преобразова­ния будет отражать новое состояние мультиплексора, если ADMUX изменит­ся после выборки-хранения, следующий результат будет использовать пре­жнее значение входного канала. Новый подключенный канал будет обслужен в следующем цикле преобразования. При чтении регистра ADMUX всегда возвращается последнее записанное в него число, независимо от того, какой канал используется для текущего преобразования.

Техника подавления шума АЦП

Цифровые схемы внутри и снаружи AT90S2333/4433 генерируют элект­ромагнитные излучения, которые могут повлиять на точность аналоговых измерений. Если точность преобразования важна, уровень ума может быть понижен при помощи следующей техники:

1. Аналоговая часть процессора и все аналоговые компоненты уст­ройства должны иметь отдельно разведенную на печатной плате землю. Аналоговая земля должна соединяться с цифровой только в одной точке печа­тной платы.

2. Путь прохождения аналогового сигнала должен быть коротким на­сколько можно. Старайтесь отделять аналоговые дорожки от цифровых ана­логовой землей и проводить их как можно дальше от высокоскоростных ци­фровых сигналов.

3. Вывод AVcc должен подключаться к источнику Vcc через RC цепоч­ку, как показано на рисунке:

4. Для уменьшения шума наводимого процессором используйте функцию подавления шума.

5. Если какие-то выводы порта С используются для вывода цифровых сигналов, они не должны переключаться во время преобразования.