Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
В состав микроконтроллеров MC68HC908GP32 входит модуль 8-разрядного аналого-цифрового преобразователя ADC08, который содержит входной мультиплексер, выбирающий один из 8 входов аналоговых сигналов, АЦП, работающий по принципу последовательного приближения, регистр управления-состояния ADSCR, регистр управления тактированием ADCLK и регистр результата ADR.
Функционирование АЦП определяется содержимым регистр ADSCR, который содержит следующие биты (рис.28,а):
COCO – признак окончания преобразования 1 (доступен только для чтения), принимает значение COCO=1 после выполнения очередного цикла преобразования, если установлено значение бита AIEN=0;
AIEN – разрешает при значении AIEN=1 формирование запроса прерывания после каждого цикла преобразования;
ADCO – определяет режим работы АЦП: однократное преобразование при значении ADCO=0, непрерывная работа преобразователя при ADCO=1;
ADCH4-0 - осуществляют выбор аналогового входа в соответствии с табл.23 или выключение модуля ADC08 при установке значения ADCH4-0 = 11111.
COCO | AIEN | ADCO | ADCH4 | ADCH3 | ADCH2 | ADCH1 | ADCH0 | ||
а). ADSR (адрес $003C)
ADIV2 | ADIV1 | ADIV0 | ADICLK | ||||||
б). ADCLK (адрес $003E)
Рис.28. Формат содержимого регистров ADSCR (а) и ADCLK (б) модуля ADC08
Запуск АЦП производится при выборе необходимого аналогового входа путем записи соответствующего значения битов ADCH4-0 в регистр ADSСR. В процессе работы АЦП принимает потенциал, установленный на выбранном входе ADi, и формирует 8-разрядное число, соответствующее величине этого потенциала, которое записывается в регистр результата ADR (адрес $003D). Считывание результата в регистр A или X для последующей обработки производится командой LDA или LDX.
Поступающий на аналоговый вход потенциал Vвх должен находиться в диапазоне Vr>Vвх>0, где Vrf – величина опорного потенциала, который в микроконтроллерах MC68HC908GP32 равен Vап - напряжению питания АЦП, для подключения которого используются отдельные выводы аналогового питания и “земли”. Между этими выводами обязательно следует включить высокочастотный керамический конденсатор для фильтрации помех. При значении Vrf = Vап = 5 В разрешающая способность АЦП составляет около 20 мВ, а погрешность преобразования 10 мВ.
При установке соответствующих значений битов ADCH4-0 производится измерение потенциала Vrf или потенциала на входе аналоговой «земли» (табл.24). Такое измерение выполняется для контроля значений этих потенциалов.
Таблица 24. Выбор аналоговых входов модуля ADC08
ADCH4-0 | Аналоговый вход | ADCH4-0 | Аналоговый вход |
AD0 (PTB0) | AD10 (PTD2/PTD1**) | ||
AD1 (PTB1) | AD11 (PTD3/PTD0**) | ||
AD2 (PTB2) | AD12 (PTD4) | ||
AD3 (PDTB) | AD13 (PTD5) | ||
AD4 (PTB4) | AD14 (PTD6) | ||
AD5 (PTB5) | 01010-11100 | Не используются | |
AD6 (PTB6) | Потенциал Vrf | ||
AD7 (PTB7) | Аналоговая «земля» | ||
AD8 (PTD0/PTD3*) | Отключение АЦП | ||
AD9 (PTD1/PTD2*) |
В зависимости от значения бита ADCO в регистре ADSCR (рис.28,а), обеспечиваются следующие режимы работы АЦП:
- режим однократного преобразования (ADCO=0), при котором АЦП автоматически выключается (в регистре ADSCR устанавливается значение битов ADCH4-0 = 11111) после выполнения очередного преобразования и записи результата в регистр ADR;
- режим непрерывного преобразования (ADCO=1), при котором АЦП продолжает многократно выполнять преобразования и выдавать значения потенциала на выбранном аналоговом входе до записи в регистр ADSCR нового содержимого.
При любом режиме работы после выполнения очередного цикла преобразования модуль ADC08 выдает запрос прерывания, если в регистре ADSCR установлено значение бита AIEN=1. При этом производится обращение к вектору, который размещается в таблице векторов прерываний по адресу $FFDE-DF (см. табл.10 в разделе 5).
Если прерывания по запросу АЦП запрещены (бит AIEN=0), то после каждого цикла преобразования в регистре ADSCR устанавливается значение признака COCO=1. В этом случае процессор должен производить программный опрос признака COCO и выполнять считывание результата из регистра ADR, если COCO=1. Сброс COCO в состояние 0 производится автоматически после чтения содержимого регистра ADR или после записи нового значения в регистр ADSCR.
В состав модуля ADC08 входит схема тактирования, работающая под управлением регистра ADCLK, который содержит следующие биты (рис.28,б):
ADICLK – определяет выбор сигналов для тактирования АЦП: тактовые импульсы с частотой Ft при установке значения ADICLK=1 или импульсы с частотой кварцевого резонатора Fq при ADICLK=0;
ADV2-0 – задает коэффициент деления частоты Ka при формировании тактовых сигналов АЦП (табл. 25).
Для получения необходимой точности АЦП должен тактироваться импульсами с частотой Fa = (0,5…1) МГц, причем оптимальным является значение Fa, близкое к 1МГц. Эта частота обеспечивается путем деления тактовой частоты Ft (при значении бита ADICLK=1) или частоты кварцевого резонатора Fq (при значении бита ADICLK=0). Необходимое значение коэффициента деления Ka = Ft/Fa или Fq/Fa задается установкой битов ADV2-0 в регистре ADCLK в соответствии с табл.25. Отметим, что нормальная работа АЦП обеспечивается при значениях частоты Ft или Fq не менее 1 МГц.
Для выполнения одного цикла преобразования требуется 17 тактов, поэтому время преобразования составляет около 17 мкс при значении Fa=1 МГц.
Таблица 25. Коэффициент деления
частоты Ka для модуля ADC08
Дата публикования: 2014-11-02; Прочитано: 413 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!