Скачиваний:
37
Добавлен:
01.05.2014
Размер:
3 Мб
Скачать

ЛАБОРАТОРНАЯ РАБОТА № 6

АНАЛОГО-ЦИФРОВОЙ ПРЕОБРАЗОВАТЕЛЬ

Цель работы: 1. Изучение функциональных возможностей аналого-цифрового преобразователя микроконтроллеров I80XC196KC.

2. Изучение порядка программирования и применения аналогово-цифрового преобразователя микроконтроллера I80XC196KC.

1. Общие сведения

1.1. Краткая характеристика аналого-цифрового преобразователя

Модуль аналого-цифрового преобразователя (АЦП),структура которого представлена на рис.6.1 преобразовывает напряжение на аналоговых входах в 8 или 10-битное цифровое представление.

Модуль АЦП содержит следующие основные компоненты:

- Восемь аналоговых входов (ACH0-ACH7).

- Восьмиканальный мультиплексор (8-Channel Analog Mux), для выбора одного из восьми входных каналов.

- Устройство выборки и хранения.(The sample-and-hold circuit)

- 10-битный аналого-цифровой преобразователь последовательного приближения (10-bit successive approximation).

- Регистр AD_COMMAND, который управляет работой преобразователя через логику управления (control logic).

- Двухбайтовый регистр AD_RESULT, в который помещаются результаты преобразования и информация о состоянии устройства.

- Регистр AD_TIME, который содержит времена выборки и преобразования .

Если АЦП получает команду начать преобразование, перед началом выборки проходит одно время состояния. В течение этой задержки выборки сбрасывается регистр последовательного приближения и выбирается требуемый канал мультиплексора.

После задержки выборки, выход мультиплексора соединяется с конденсатором выборки и остается соединенным с ним в течение определенного времени. После того, как это окно выборки закрывается, конденсатор выборки отсоединяется от мультиплексора и поэтому во время процесса преобразования изменения на входе микроконтроллера не будут изменять сохраненный заряд. Затем компаратор автоматически обнуляется и начинается преобразование.

Чтобы выполнить аналого-цифровое преобразование, AЦП использует алгоритм последовательного приближения. Аппаратные средства преобразователя состоят из многозвенной схемы с 256 резисторами, компаратора, разделительных конденсаторов и 10-битного регистра последовательного приближения (SAR) с логикой, которая обеспечивает работу АЦП.

Многозвенная схема из резисторов обеспечивает шаг 20 мВ ( VREF = 5.12 В ), в то время как емкостная связь (разделительные конденсаторы) создают шаг преобразования 5 мВ внутри напряжения 20 мВ этой многозвенной схемы. Следовательно, для сравнения с напряжением аналогового входа доступны 1024 опорных внутренних напряжения, чтобы сгенерировать 10-битный результат преобразования .

Преобразование последовательным приближением выполняется путем последовательного сравнения опорных напряжений с напряжением на аналоговом входе, поиском напряжения, которое наиболее близко соответствует напряжению на аналоговом входе . Сначала проверяется среднее значение всех опорных напряжений. Это соответствует 10-битному результату, где старший бит - нуль и все другие биты - 1 (0111.1111.11B). Если аналоговый вход был меньше тестируемого напряжения, бит 10 SAR остается равным “0” , и проверяется новое напряжение равное 1/4 от всей шкалы тестируемых напряжений (0011.1111.11B). Если напряжение на аналоговом входе было больше, чем напряжение теста, устанавливается бит 9 SAR. Затем, для следующего теста, очищается Бит 8 0101.1111.11B). Этот двоичный поиск продолжается до тех пор , пока выполнится 10 ( или 8 ) тестов, правильный результат преобразования постоянно находится в SAR, откуда он может быть прочитан программно. Результат равен отношению напряжения на аналоговом входе, к опорному напряжению. Если это отношение равно 1.00, то в результате преобразования SAR будет содержать единицы во всех разрядах (1111.1111.11B).

1.2. Программирование aцп

1.2.1. Управляющие регистры

Следующие параметры AЦП могут быть запрограммированны:

- Преобразование восьми или десятибитное

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

- Времена выборки и преобразования

- Наличие прерывания при завершении

- 80IXC196KC - совместимый режим

- Непосредственно преобразование или обращение к быстродействующему модулю вывода (HSO) или периферийному серверу транзакций (PTS).

В таблице 6.1 приведены программируемые регистры, которые воздействуют на работу и функции AЦП.

Таблица 6.1. Регистры управления и состояния AЦП

Мнемоника

Описание регистра

AD_COMMAND

Регистр команды АЦП. Этот регистр выбирает номер канала АЦП, который нужно преобразовать, определяет будет ли преобразование начинаться непосредственно или из команды HSO , также выбирает 8 или 10-битный режим преобразования

AD_RESULT

Регистр результата AЦП . Этот регистр состоит из двух байтов. Старший байт содержит восемь старших битов преобразования. Младший байт указывает номер канала АЦП, который был использован для преобразования, было ли преобразование выполнено правильно и содержит два младших бита 10-битного преобразования

AD_TIME

Время преобразования АЦП . Если установлен бит регистра IOC2, этот регистр определяет времена выборки и преобразования.

IOC2

Регистр 2 управления вводом-выводом. Этот регистр выбирает: будет ли время преобразования АЦП контролироваться регистром AD_TIME или эмуляцией режимов быстрого и нормального преобразования микроконтроллера 8XC196KС.

INT_MASK

Маска прерывания .Этот регистр разрешает / запрещает прерывание “Завершение преобразования АЦП”( INT01, 2002H ). Установка бита 1 этого регистра разрешает прерывание, сброс бита 1 запрещает прерывание

INT_PEND

Захват прерывания. Бит 1 этого регистра, когда установлен, указывает, что поступило прерывание “Завершение преобразования АЦП”. Бит 1 сбрасывается, когда прерывание обращается к вектору в ячейке 2002H.

1.2.2. Задание времени выборки и времени преобразования АЦП

Два параметра, время выборки и время преобразования, определяют время, требуемое для аналогово-цифрового преобразования.

Время выборки - промежуток времени , когда напряжение аналогового входа поступает на конденсатор выборки.

Если это время слишком мало, конденсатор выборки будет заряжен не полностью, если время выборки слишком велико , - входное напряжение может изменится и это будет причиной ошибок преобразования.

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

Времена выборки и преобразования или назначаются по умолчанию в 80ХC196KС - совместимом режиме или определяются в регистре AD_TIME.

Очистка бита AD_TIME_ENA (IOC2.3) допускает 80ХC196KС- совместимое преобразование. В 80ХC196KС - совместимом режиме, бит AD_FAST (IOC2.4) управляет временами выборки и преобразования . 80ХC196KС медленный режим использует 15 времен состояния для времени выборки и общее количество 158 времен состояния для всего преобразования. 80ХC196KС быстрый режим использует восемь времен состояния для времени выборки и общее количество 91 времен состояния для преобразования.

При использовании или быстрого или медленного режима преобразуйте эти времена состояния в микросекунды, чтобы гарантировать, что значения времени выборки (Tsam) и времени преобразования (Tconv), при данной тактовой частоте, представлены в допустимых пределах. При тактовой частоте 8 МГц одно время состояния равно 250 нс. Согласно требованиям,

Tsam = 3 мкс (минимум), 10мкс < Tconv < 20мкс

Если установлен бит AD_TIME_ENA (IOC2.3), времена выборки (SAM) и преобразования (CONV) определяются регистром AD_TIME. Регистр AD_TIME программирует быстродействие (скорость) аналогово-цифрового преобразования, которое определяется разрешающей способностью АЦП и частотой тактового генератора.

Чтобы определить оптимальные значения SAM и CONV, используются следующие формулы:

SAM = [(Tsam x Fosc) - 2 ] / 8

CONV = [((Tconv x Fosc) - 3) / (2 x B) ] - 1

Где: SAM = от 1 до 7

CONV = от 2 до 31

Tsam - время выборки, в микросекундах, равно 3 мкс

Tconv - время преобразования, в микросекундах, от 10 до 20 мкс

Fosc - частота тактового генератора, в MГц

B - число битов, которые нужно преобразовать (8 или 10)

Когда значения SAM и CONV известны, запишите их в регистр AD_TIME. Не записывайте в этот регистр во время процесса преобразования, иначе результаты будут непредсказуемыми.

Соседние файлы в папке Лабораторные работы по МПС