close

Вход

Забыли?

вход по аккаунту

?

Fomin

код для вставкиСкачать
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное автономное
образовательное учреждение высшего образования
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ
ИССЛЕДОВАНИЕ МОДУЛЯ
АНАЛОГОВО-ЦИФРОВОГО
ПРЕОБРАЗОВАТЕЛЯ
МИКРОКОНТРОЛЛЕРА PIC18F4520
Методические указания
по выполнению лабораторной работы
Санкт-Петербург
2017
Составитель – М. В. Фомин
Рецензент – кандидат технических наук, доцент С. Г. Бурлуцкий
Изучаются основные характеристики, принцип функционирования и методы программного управления модулем аналогово-цифрового преобразователя микроконтроллера PIC18F4520 фирмы Microchip.
Предназначены для бакалавров направления 12.03.01 «Приборостроение», выполняющих лабораторные работы по курсу «Цифровые
вычислительные устройства и микропроцессоры приборных комплексов».
Публикуется в авторской редакции.
Компьютерная верстка Ю. В. Умницына
Подписано к печати 08.02.16. Формат 60 × 84 1/16.
Усл. печ. л. 0,93. Тираж 50 экз. Заказ № 30.
Редакционно-издательский центр ГУАП
190000, Санкт-Петербург, Б. Морская ул., 67
© Санкт-Петербургский государственный
университет аэрокосмического
приборостроения, 2017
ИССЛЕДОВАНИЕ МОДУЛЯ АНАЛОГОВО-ЦИФРОВОГО
ПРЕОБРАЗОВАТЕЛЯ МИКРОКОНТРОЛЛЕРА PIC18F4520
Цель работы: ознакомление со структурой модуля аналого-цифрового преобразователя микроконтроллера PIC18F4520 фирмы
Microchip и принципами его программного управления. Программная реализация включает проект, написанный на языке высокого
уровня (Си-компилятор MCC18).
1. Общие положения
Аналого-цифровым преобразователем называется устройство,
осуществляющее преобразование входного аналогового сигнала
в указанных пределах в выходной цифровой код. Важнейшими параметрами АЦП являются:
– разрядность N (число уровней квантования входного сигнала);
– точность преобразования (вносимые процессом преобразования погрешности в выходной цифровой код);
– пределы изменения входного аналогового сигнала VAIN;
– частота преобразования FCONV (количество преобразований
в секунду, выполняемых с заданной точностью);
– время захвата TACQ (время, в течение которого входной сигнал
не должен существенно изменяться для получения результата с заданной точностью);
– входное сопротивление RIN (должно быть согласовано с сопротивлением источника сигнала, чтобы вносить минимальные собственные возмущения в измеряемый сигнал).
2. Состав и структура модуля АЦП
Обобщенная структурная схема модуля аналого-цифрового преобразователя приведена на рис. 1.
Основой модуля АЦП микроконтроллера PIC18F4520 является
10-битный АЦП последовательного приближения, дополненный
устройством выборки-хранения УВХ, мультиплексором аналоговых сигналов и схемой выбора опорного напряжения.
3
AN12/ RB0
1100
AN11/ RB4
1011
AN10/ RB1
1010
AN9 / RB3
1001
AN8/RB2
1000
AN7/RE 2
0111
AN6/RE1
0110
AN5/RE0
0101
AN4/RA5
0100
AN3 /VREF +/RA3
0011
AN2 /VREF -/RA2
0010
AN1/RA1
0001
AN0/RA0
0000
7
6
5
4
3
2
1
GO/
DONE
0
-
-
CHS3
ADCON1
-
-
VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0
ADCON2
ADFM
-
ACQT2 ACQT1 ACQT0 ADCS2 ADCS1 ADCS0
ADCON0
CHS2
CHS1 CHS0
VDD
УВХ
VD1
C PIN VD2
ADON
R IC
ILEAKAGE
±100 нА
SS
R SS
CHOLD
ADFM
PCFG3
:
PCFG0
CHS3
:
CHS0
ADRESL
10 бит
АЦП
ADRESH
Шина данных
VCFG1:VCFG0
VDD
x0
x1
1x
0x
VREF+
Опорное
VREF - напряжение
Рис. 1. Обобщенная структурная схема модуля 10-битного АЦП
Достоинством АЦП последовательного приближения является
то, что преобразование разрядностью 10 бит выполняется за 10 тактов, т. е. такой тип АЦП является быстродействующим. Подробнее
с принципами функционирования АЦП последовательного приближения необходимо ознакомиться самостоятельно, изучив соответствующий раздел в [1]. Передаточная функция АЦП приведена
на рис. 2.
Устройство выборки-хранения аналогового сигнала служит для
фиксации уровня аналогового сигнала на определенное время для
выполнения корректного преобразования. При преобразовании
сигнала, изменение которого происходит с высокой частотой (звуковые, видеосигналы), напряжение на входе АЦП может меняться
весьма существенно даже за короткий промежуток времени. Если
выполнять преобразование непостоянного сигнала, выходной код
будет иметь большую погрешность. Для устранения этой проблемы
применяются УВХ. В их состав традиционно входят аналоговый
ключ SS с низким сопротивлением и малым временем переключения и емкость CHOLD для накапливания заряда. Алгоритм работы
4
0x03FF
Выходной цифровой код
0x03FE
0x0002
1023 LSB
1023,5 LSB
1022 LSB
Входное напряжение, VIN
1022,5 LSB
3 LSB
2 LSB
2,5 LSB
1 LSB
1,5 LSB
0x0000
0,5 LSB
0x0001
Рис. 2. Передаточная функция АЦП
УВХ таков: на время, называемое временем захвата TACQ, емкость
CHOLD подключается к входному сигналу при помощи замкнутого
ключа SS, и происходит ее заряд. Далее ключ размыкается, и дальнейшее изменение входного сигнала не вызывает изменения заряда
в емкости. После этого CHOLD используется входными цепями АЦП
для измерения напряжения на обкладках. На рис. 1 показана эквивалентная схема УВХ. На ней отображены:
– эквивалентная емкость выводов МК CPIN;
– защитные диоды VD1 и VD2, предохраняющие входные цепи
от повреждения при подаче положительного напряжения свыше
VDD (диод VD1) или отрицательного напряжения (диод VD2) на входы АЦП;
– эквивалентное сопротивление внутренних соединений RIC;
– внутренний источник тока утечки ILEAKAGE, также вносящий
искажения в процесс преобразования;
– сопротивление аналогового ключа RSS.
Мультиплексор аналоговых сигналов представляет собой набор
аналоговых ключей, управляемых цифровой логикой. Входы ключей соединены с соответствующими линиями портов МК. В каждый момент времени может быть выполнено только одно преобра5
зование одного из сигналов, поэтому для преобразования сигналов
от нескольких источников необходимо производить переключение
каналов.
Входной сигнал должен находиться в пределах VREF− …VREF+.
При этом VAIN ≤ VREF− соответствует минимальному цифровому
коду 0x000, VAIN ≥ VREF+ соответствует максимальному цифровому
коду 0x3FF. Схема выбора ИОН (источника опорного напряжения
VREF) позволяет задать внешний источник опорного напряжения
или выбрать доступный внутренний, пределы которого равны питающему напряжению: VREF− = VSS, VREF+ = VDD. При выборе внешнего ИОН следует помнить [2], что ни VREF−, ни VREF+ не должны
быть отрицательными, меньше +2В или превосходить VDD. Выводы
МК, используемые для подключения внешнего ИОН – RA2 и RA3.
3. Управляющие регистры модуля АЦП
Все аспекты работы модуля контролируются регистрами
ADCON0, ADCON1 и ADCON2. Результат преобразования (10 бит) хранится в двух 8-битных регистрах ADRESH и ADRESL.
Структура управляющего регистра ADCON0 приведена в табл. 1.
Структура управляющего регистра ADCON1 приведена в табл. 2.
Структура управляющего регистра ADCON2 приведена в табл. 3.
Таблица 1
Состав ADCON0: analog to digital control register 0
-
-
CHS3
CHS2
CHS1
CHS0
GO/DONE
ADON
<7>
<6>
<5>
<4>
<3>
<2>
<1>
<0>
биты 7–6 биты 5–2 6
не реализованы в МК PIC18F4520, читаются как «0»
CHS3-CHS0: биты выбора аналогового канала
0000 – канал 0 (аналоговый вход AN0)
0001 – канал 1 (аналоговый вход AN1)
0010 – канал 2 (аналоговый вход AN2)
0011 – канал 3 (аналоговый вход AN3)
0100 – канал 4 (аналоговый вход AN4)
0101 – канал 5 (аналоговый вход AN5)
0110 – канал 6 (аналоговый вход AN6)
0111 – канал 7 (аналоговый вход AN7)
1000 – канал 8 (аналоговый вход AN8)
1001 – канал 9 (аналоговый вход AN9)
бит 1 бит 0 1010 – канал 10 (аналоговый вход AN10)
1011 – канал 11 (аналоговый вход AN11)
1100 – канал 12 (аналоговый вход AN12)
1101…1111 – не реализованы в МК PIC18F4520, читаются как случайное число
GO/DONE: бит статуса аналого-цифрового преобразования
0 – АЦП ожидает запуск преобразования, данные
готовы
1 – АЦП в режиме выполнения преобразования
ADON: бит включения модуля АЦП
0 – модуль выключен
1 – модуль включен
Таблица 2
Состав ADCON1: analog to digital control register 1
-
-
VCFG1
VCFG0
PCFG3
PCFG2
PCFG1
PCFG0
<7>
<6>
<5>
<4>
<3>
<2>
<1>
<0>
биты 7–6 бит 5 бит 4 биты 3–0 не реализованы в МК PIC18F4520, читаются как «0»
VCFG1: бит выбора источника опорного напряжения
VREF−
0 – VREF− = VSS (внутренний ИОН)
1 – VREF− = VAN2 (внешний ИОН)
VCFG0: бит выбора источника опорного напряжения
VREF+
0 – VREF+ = VDD (внутренний ИОН)
1 – VREF+ = VAN3 (внешний ИОН)
PCFG3-PCFG0: биты управления конфигурацией портов МК (см. табл. 4)
7
Таблица 3
Состав ADCON2: analog to digital control register 2
ADFM
-
ACQT2
ACQT1
ACQT0
ADCS2
ADCS1
ADCS0
<7>
<6>
<5>
<4>
<3>
<2>
<1>
<0>
бит 7 ADFM: бит выбора формата результата преобразования
0 – левое выравнивание,
ADRESH:ADRESL = xxxxxxxx:xx000000
1 – правое выравнивание,
ADRESH:ADRESL = 000000xx:xxxxxxxx
бит 6 не реализован в МК PIC18F4520, читается как «0»
биты 5–3 ACQT2-ACQT0: биты выбора времени захвата анало
гового сигнала
000 – TACQ = 0 TAD (определяется программной за
держкой)
001 – TACQ = 2 TAD
010 – TACQ = 4 TAD
011 – TACQ = 6 TAD
100 – TACQ = 8 TAD
101 – TACQ = 12 TAD
110 – TACQ = 16 TAD
111 – TACQ = 20 TAD
биты 2–0 ADCS2-ADCS0: биты выбора источника тактирова
ния и длительности преобразования 1 бита
000 – TAD = 2 TOSC
001 – TAD = 8 TOSC
010 – TAD = 32 TOSC
011 – собственный внутренний RC-источник моду
ля АЦП*
100 – TAD = 4 TOSC
101 – TAD = 16 TOSC
110 – TAD = 64 TOSC
111 – собственный внутренний RC-источник моду
ля АЦП*
* используется в режиме Sleep при отключенном F
OSC
8
Таблица 4
PCFG3
...
PCFG0
AN12
AN11
AN10
AN9
AN8
AN7
AN6
AN5
AN4
AN3
AN2
AN1
AN0
Конфигурация портов МК
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
A
A
A
D
D
D
D
D
D
D
D
D
D
D
D
D
A
A
A
A
D
D
D
D
D
D
D
D
D
D
D
D
A
A
A
A
A
D
D
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
D
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
A
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
A
A
D
D
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
D
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
A
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
A
A
D
D
D
A
A
A
A
A
A
A
A
A
A
A
A
A
A
D
D
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
D
A – аналоговый вход (выходной транзисторный каскад отключен)
D – цифровой вход/выход
4. Последовательность действий при работе с АЦП
Для выполнения преобразования входного аналогового сигнала
в цифровой код при помощи встроенного модуля АЦП следует произвести следующие действия:
1. Конфигурирование АЦП:
– настройка аналогового мультиплексора и источника опорного
питания (ADCON1);
– выбор времени захвата, источника тактирования и скорости
преобразования и формата регистров результата (ADCON2);
– выбор канала преобразования и включение модуля АЦП
(ADCON0).
2. Настройка прерываний (если требуется):
– сброс флага прерываний (PIR1<ADIF>);
– установка приоритета прерываний от АЦП (IPR1<ADIP>);
9
– разрешение прерываний от АЦП (PIE1<ADIE>);
– разрешение
прерываний
соответствующего
уровня
(INTCON<GIEH:GIEL>).
3. Запуск преобразования – установка бита запуска преобразования (ADCON0<GO/DONE>).
4. Ожидание завершения преобразования:
– либо циклический опрос бита статуса преобразования
(ADCON0<GO/DONE>);
– либо ожидание возникновения прерывания (PIR1<ADIF>).
5. Чтение результата преобразования (ADRESH:ADRESL).
6. Подготовка к следующему считыванию:
– сброс флага прерывания, если используются прерывания
(PIR1<ADIF>);
– выбор требуемого канала (если необходимо обрабатывать несколько источников сигналов);
– повтор действий п.п. 3–6.
5. Выбор длительности преобразования
Длительность преобразования одного разряда TAD выбирается
таким образом, чтобы преобразование выполнялось за наименьшее
число тактовых импульсов. При этом типовое время преобразования определяется следующим образом (параметр 130 в [2]):
Таблица 5
Длительность преобразования одного разряда
Символ
TAD
Характеристика
Min
PIC18FXXXX 0,7
Длительность преоб- PIC18LFXXXX 1,4
разования
–
одного раз- PIC18FXXXX
ряда
PIC18LFXXXX –
ЕдиниMax ца измерения
VREF ≥ 3В, TOSC
25
25
1
3
Условия
мкс
VDD = 2 В, TOSC
RC-mode
Очевидно, что при частоте FOSC = 500 кГц (TOSC = 2 мкс) и TAD =
=10 мкс настройка частоты преобразования имеет вид TAD = 5 TOSC,
большее ближайшее доступное значение настройки TAD = 8 TOSC (см.
табл. 4). При частоте FOSC = 40 МГц и TAD = 0,7 мкс (минимально допустимое время преобразования одного разряда) настройка имеет
10
вид TAD = 28 TOSC ≈ 32 TOSC. Предпочтительнее задавать настройку
TAD = 64 TOSC при частоте тактового сигнала МК выше 20 МГц, при
этом время преобразования будет гарантированно больше минимально допустимого значения.
6. Расчет времени захвата
Для выполнения преобразования с заданной точностью необходимо, чтобы заряд емкости CHOLD происходил полностью за время
доступа к аналоговому сигналу. На длительность заряда CHOLD непосредственное влияние оказывает суммарное входное сопротивление модуля АЦП и выходное внутреннее сопротивление источника
сигнала, оптимальное значение которого в случае использования
PIC18F4520 составляет 2 кОм при VDD = 5В. Максимальное значение времени захвата (заряда CHOLD) ограничивается частотными
свойствами оцениваемого сигнала, минимальное значение определяется параметрами эквивалентной схемы УВХ (см. рис. 1).
При расчете времени захвата TACQ следует принять следующие
входные данные равными:
CHOLD = 25 пФ;
CPIN = 5 пФ;
RS = 2,5 кОм;
RSS = 2 кОм (при VDD = 5 В);
RIC = 1 кОм;
N = 210.
Расчетная формула времени захвата:
TACQ = TAMP + TC + TCOFF, (1)
где TAMP = 0,2 мкс – время окончания переходного процесса входного усилителя,
 1 
Tc =
−CHOLD ⋅ (RIC + R SS + R S ) ⋅ ln 
 –
 2N − 1 
время зарядки CHOLD, (2)
TCOFF = (T − 25°C)·0,02 мкс/°С. (3)
TCOFF – температурный коэффициент, его требуется рассчитывать только при T > 25°С. Если T < 25°С, TCOFF = 0 мкс.
При выборе настройки времени захвата полученное расчетное
время захвата следует округлить до ближайшего большего значения из предлагаемого ряда (см. табл. 4).
11
12
ADIF
ADRESL
ADRESH:
АЦП
TAD
GO/DONE
9
7
Старые данные
8
6
5
4
3
2
1
0
разряд C HOLD
C HOLD присоединен
к аналоговому каналу
Новые данные
1 TAD
сброс бита GO/DONE, установка бита ADIF
загрузка регистров ADRESH:ADRESL
время преобразования 10 TAD
начало преобразования
C HOLD отсоединен от канала
Рис. 3. Временная диаграмма функционирования АЦП
время захвата 4 TAD
установка бита GO/DONE
зарядка C HOLD
7. Конфигурирование портов МК при работе с АЦП
Для корректной работы линий портов ввода-вывода в качестве
каналов ввода аналоговых сигналов регистры TRIS необходимо настраивать на ввод (устанавливать в «1» соответствующие биты) для
отключения выходных транзисторных каскадов линий портов. Если
соответствующие биты регистров TRIS настроены на вывод, будет
измеряться уровень цифровых сигналов («0» или «1»). Настройка
числа аналоговых входов в регистре ADCON1 задается из требования
минимального количества аналоговых каналов (см. табл. 3).
8. Функционирование модуля АЦП
Функционирование модуля АЦП отражено на временной диаграмме на рис. 3.
9. Порядок выполнения лабораторной работы
Перед выполнением лабораторной работы необходимо получить
исходные данные (номер варианта) и уточнить объем выполняемых
исследований у преподавателя. Порядок и полный объем выполнения лабораторной работы содержит следующие пункты:
9.1. Расчет и выбор настроек длительности преобразования TAD и
времени захвата аналогового сигнала TACQ в соответствии с пп. 5–6;
9.2. Корректировка принципиальной электрической схемы лабораторного макета (см. рис. 4) согласно заданию в полученном варианте;
9.3. Составление схемы функций программы согласно [3];
9.4. Сборка лабораторного макета с последующей проверкой
у преподавателя корректности произведенных действий;
9.5. Создание рабочего проекта в интегрированной среде разработки MPLAB IDE 8 с выбором в качестве рабочего языка программирования Си-компилятора MCC18;
9.6. Кодирование и отладка функций программы в соответствие
с п. 9.3;
9.7. Программирование микроконтроллера PIC18F4520 полученной при компиляции прошивкой, демонстрация результатов
преподавателю.
Принципиальная электрическая схема лабораторного макета
приведена на рис. 4.
Перечень используемых в схеме элементов:
DD1 IQXO-22 40.000 (40 МГц)
13
X1
Цепь
Конт
1
NC
2
3
VPP/MCLR
VDD
4
GND
5
PGD
6
PGC
7
NC
8
NC
+5B
DD2
1
MCLR
11
12
DD1
+5B
8
4
VDD
VSS
PGD
PGC
R2
4,7к
+5B
MCU
RD0
VDD
RD1
VSS
RD2
RD3
OSC
FOSC
5 13
2
RD4
OSC1
RD5
RD6
RA0
RD7
40
39
U1
HL 1
19 1
20 2
21 3
22 4
27 5
28 6
29 7
30 8
+5B
9
10
R1 10 к
A1
K1
A2
K2
A3
K3
A4
K4
A5
K5
A6
K6
A7
K7
A8
K8
A9
K9
A10
K10
20 2
19 3
18 4
17 5
1
16 6
15 7
14 8
13 9
12
11
Рис. 4. Схема лабораторного макета
DD2 PIC18F4520-I/P
HL1 DC-10GWA
R1 СП3-4а – 0,25 – 10 кОм ± 10%
R2 С2-22 – 0,125 – 4,7 кОм ± 10%
U1 НР1-4-9М – 0,125 – 470 Ом ± 10%
X1 TJ8-8P8C
10. Порядок оформления отчета
Отчет должен содержать следующие пункты:
1. Цель работы;
2. Протокол с заданием на бригаду;
3. Расчет значений и выбор настроек параметров TAD и TACQ;
4. Принципиальная электрическая схема лабораторной установки;
5. Схемы функций программы по ГОСТ 19.701-90;
6. Программная реализация алгоритма на языке Си;
7. Выводы по работе.
14
11. Контрольные вопросы
1. Дать описание внутренней структуры модуля аналогово-цифрового преобразователя микроконтроллера PIC18F4520;
2. Дать описание программного кода лабораторной работы;
3. Дать описание структуры, принципа функционирования,
погрешностей, достоинств и недостатков последовательного АЦП
с генератором ступенчатого напряжения;
4. Дать описание структуры, принципа функционирования,
погрешностей, достоинств и недостатков АЦП последовательного
приближения;
5. Дать описание структуры, принципа функционирования, погрешностей, достоинств и недостатков АЦП с время-импульсным
преобразованием;
6. Дать описание структуры, принципа функционирования, погрешностей, достоинств и недостатков АЦП с двухэтапным интегрированием;
7. Дать описание структуры, принципа функционирования, погрешностей, достоинств и недостатков АЦП ускоренного интегрирования;
8. Дать описание структуры, принципа функционирования, погрешностей, достоинств и недостатков АЦП с частотно-импульсным преобразованием;
9. Дать описание структуры, принципа функционирования, погрешностей, достоинств и недостатков параллельных АЦП;
10. Дать описание структуры, принципа функционирования,
погрешностей, достоинств и недостатков конвейерных АЦП;
11. Дать описание структуры, принципа функционирования,
погрешностей, достоинств и недостатков ΣΔ (сигма-дельта) АЦП.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Никамин В. А. Аналого-цифровые и цифро-аналоговые преобразователи: справочник / В. А. Никамин. СПб.: КОРОНА принт,
Альтекс-А, 2003. 224 с.
2. Документация на микроконтроллер PIC18F4520 на сайте
фирмы Microchip Technology Inc. 412 с. [Электронный ресурс] –
http://ww1.microchip.com/downloads/en/DeviceDoc/39631E.pdf
3. ГОСТ 19.701-90 «Единая система программной документации. Схемы алгоритмов, программ, данных и систем. Условные
обозначения и правила выполнения».
15
СОДЕРЖАНИЕ
1. Общие положения.......................................................... 3
2. Состав и структура модуля АЦП....................................... 3
3. Управляющие регистры модуля АЦП................................ 6
4. Последовательность действий при работе с АЦП................. 9
5. Выбор длительности преобразования................................10
6. Расчет времени захвата..................................................10
7. Конфигурирование портов МК при работе с АЦП...............11
8. Функционирование модуля АЦП.....................................11
9. Порядок выполнения лабораторной работы.......................13
10. Порядок оформления отчета..........................................14
11. Контрольные вопросы..................................................14
Библиографический список...............................................15
Документ
Категория
Без категории
Просмотров
1
Размер файла
387 Кб
Теги
fomin
1/--страниц
Пожаловаться на содержимое документа