Опис роботи з АЦП в довідці до PIC16F887
Але спочатку подивимося, що можна прочитати в довідці до мікроконтролера PIC16F887
Конвертер генерує 10и-бітовий результат методом послідовного наближення і запамятовує його в регістрах АЦП (ADRESL і ADRESH)
Ми не будемо зараз розглядати роботу АЦП з переривання, хоча така можливість є
Опорна напруга АЦП вибирається програмно, найбільша напруга – це напруга живлення, до висновків опорного напруги може прикладатися зовнішня напруга
При конфігуруванні АЦП і при використанні модуля повинні бути продумані наступні функції:
· Конфігурація порту
· Вибір каналу
· Вибір опорного напруги АЦП
· Джерело тактової частоти перетворювача АЦП
· Управління перериванням
· Форматування результату
Грунтуючись на описі, розглянемо запропоновані пункти
Конфігурація порту
АЦП може використовуватися для перетворення як аналогового, так і цифрового сигналу При перетворенні аналогового сигналу висновки входу-виходу повинні бути налаштовані для аналогового входу установкою повязаних бітів TRIS і ANSEL Детальніше це описано в розділі роботи з портами
Вибір каналу
Біти CHS регістра ADCON0 визначають, який канал підключений до випробуваної ланцюга
При виборі каналів потрібно пауза, перш ніж почнеться наступне перетворення Нижче це буде описано докладніше
Опорна напруга АЦП
Біти VCFG регістра ADCON0 пропонують незалежне управління позитивним і негативним опорною напругою Позитивне опорна напруга може бути VDD або напругою зовнішнього джерела Також негативний напруга може бути VSS або напругою зовнішнього джерела
Генератор тактової частоти перетворювача
Тактова частота перетворення може бути обрана програмно битами ADCS регістра ADCON0 Є чотири можливих варіанти:
· FOSC/2
· FOSC/8
· FOSC/32
· FRC (виділений внутрішній генератор)
Час перетворення одного біта визначається як TAD Одне повне 10и-бітове перетворення вимагає 11 TAD періодів
Для правильного перетворення слід задати відповідне значення TAD У таблиці нижче наведені приклади відповідного вибору тактової частоти АЦП
Рис 511 Таблиця налаштування і вибору частоти перетворення
І, пропустивши роботу по перериванню, розглянемо формат виведення результату
Форматування результату
10и-бітове перетворення може відображатися у двох форматах: з лівим або правим приведенням Біти ADFM регістра ADCON0 управляють форматом виводу Малюнок нижче показує різницю в цих форматах
Рис 512 Два формату виводу результату перетворення
Запуск перетворення
Для дозволу роботи модуля АЦП біт ADON регістра ADCON0 повинен бути встановлений в «1» Установка біта GO / DONE регістра ADCON0 в «1» почне перетворення
Коли перетворення завершено, модуль АЦП:
· Очистить біт GO / DONE
· Встановить прапор ADIF
· Оновить значення регістрів ADRESH: ADRESL новим результатом перетворення
Приклад процедур перетворення
1 Конфігуріруем порт:
· Забороняємо вихід (в регістрі TRIS)
· Конфігуріруем висновок як аналоговий
2 Конфігуріруем модуль АЦП:
· Вибираємо частоту перетворення
· Конфігуріруем опорна напруга
· Вибираємо канал входу
· Вибираємо формат виведення
· Включаємо модуль АЦП
3 Конфігуріруем переривання по АЦП (якщо потрібно):
· Очищаємо прапор переривання по АЦП
· Дозволяємо переривання по АЦП
· Дозволяємо периферійні переривання
· Дозволяємо глобальні переривання
4 Очікуємо час, необхідний для ініціалізації
5 Починаємо перетворення установкою біта GO / DONE
6 Очікуємо завершення перетворення одним із способів:
· Опитуванням біта GO / DONE
· Очікуванням переривання (якщо використовували)
7 Читаємо результат перетворення
8 Очищаємо прапор переривання (якщо використовували переривання)
І, нарешті, регістри, що беруть участь в роботі модуля АЦП: ADCON0
Рис 513 Регістр управління перетворенням
Біти 7-6 ADCS <1:0>: біти вибору тактової частоти перетворення 00 = FOSC / 2
01 = FOSC/8
10 = FOSC/32
11 = FRC (частота від вбудованого генератора = 500 kHz max)
Біти 5-2 CHS <3:0>: біти вибору аналогового каналу 0000 = AN0
0001 = AN1
0010 = AN2
0011 = AN3
0100 = AN4
0101 = AN5
0110 = AN6
0111 = AN7
1000 = AN8
1001 = AN9
1010 = AN10
1011 = AN11
1100 = AN12
1101 = AN13
1110 = CVREF
1111 = Fixed Ref (06 вольт фіксованого напруги)
Біт 1 GO / DONE: біт стану перетворення
1 = відбувається цикл перетворення Установка цього біта починає цикл перетворення Цей біт автоматично скидається апаратно, коли перетворення завершується
0 = перетворення завершено / не відбувається
Біт 0 ADON: біт дозволу роботи АЦП 1 = робота АЦП дозволена
0 = АЦП заборонено, і струм не споживається на операції ADCON1
Рис 514 Другий регістр управління
Біт 7 ADFM: біт вибору формату виведення результату 1 = праве приведення
0 = ліве приведення
Біт 5 VCFG1: біт опорного напруги 1 = VREF-висновок
0 = VSS
Біт 4 VCFG0: біт опорного напруги 1 = VREF + висновок
0 = VDD
ADRESH: ADRESL – Регістри виведення результату
Джерело: Гололобов ВН, – Самовчитель гри на паяльнику (Про електроніці для школярів і не тільки), – Москва 2012
Сподобалася стаття? Натисни "+1"! :
Ще статті:
- Вольтметр мережевої напруги з розтягнутою шкалою і світловою сигналізацією (0)
- Мікропередатчік зі стабілізацією струму (0)
- Кварцованний ЧМ передавач (0)
- Застосування комп'ютерних блоків живлення (0)
- Блокіратор "піратського" телефону (0)
- Перетворювач напруги 12-вольтового автоаккумулятора в мережеве 220 В 50 Гц (0)
- Кодовий замок підвищеної секретності (0)
Ваш відгук