19 Работа с модулем ацп в мк pic16f676
Модуль АЦП служит для преобразования аналогового сигнала в N-разрядный код.
Данный МК имеет 10 – разрядный 8 канальный АЦП с входными каналами AN0 – AN7 (PORTA).
Опорное напряжение, относительно которого формируется результат выбирается программно в регистре ADCON0 специальным битом VCFG.
Структурная схема АЦП
Управляющие регистры:
ADCON0 содержит основные биты управления модуля:
Бит7: ADFM –выравнивание результата 0- правое, 1 –левое
Бит6: VCFG – выбор источника опорного напряжения ( 1 – внешний с RA1/AN1/VREF, 0- Vdd)
Бит5: не используется
Бит 4-2 биты выбора канала АЦП CHS2:CHS0 ( адреса 000-AN0, 111 – AN7)
Бит1: Go/Done – бит статуса модуля (1 –выполняет преобразование, 0- ожидание)
Бит0: ADON – бит включения модуля (1-вкл, 0- выкл)
Регистр ADCON1 содержит биты настройки длительности одного бита АЦП. В нем используются биты 5, 6, 4.
ADCS2:ADCS0 – биты настройки длительности такта
000 – Fosc/2
001 – Fosc/8
010– Fosc/32
100 – Fosc/4
101 – Fosc/16
110 – Fosc/64
X11 – тактирование от встроенного RC – генератора мах частота 500 кГц
Регистр ANSEL содержит биты конфигурации портов ввода вывода. Установка в 1 одного или несколько битов, соответствующего выводам AN0 – AN7 отключает все модули от выбранных портов.
Схема аналогового входа АЦП
Сопротивления Rs и Rss непосредственно влияют на время заряда конденсатора СHOLD.
После того как будет выбран один из каналов но прежде, чем будет производится преобразование находится выражение (*), это уравнение дать погрешность в 2048 шагов АЦП. Эта ошибка позволяет функционировать модулю АЦП с необходимой точностью.
( *)
Tamp – время задержки усилителя
Tacq – время задержки усилителя
Tc – время заряда конденсатора СHOLD
Настройка АЦП. Настроить выводы как аналоговые входы.
Настроить VREF и биты ADCON1
Входной канал АЦП ADCON0
Выбрать источник тактовых импульсов ADCON1
Вкл АЦП ADCON0
Настроить прерывание от АЦП
2.1 Сбросить бит ADIF в 0
2.2 Установить бит ADIE в 1
2.3 Установить PEIE в 1
2.4 Установить GIE
3. Выдержать паузу необходимую для зарядки конденсатора
4. Начать аналого-цифровое преобразование установить Go/Done в 1.
5.Ожидать окончание преобразования бит Go/Done сбросится аппаратно или ожидать прерывание по окончанию преобразования.
6. Считать рез –т из ADRESH:ADRESL.
- 1. Состав и назначение семейств pic-контроллеров
- 6. Схема тактирования и цикл выполнения команды в мк pic16f84
- 7. Организация памяти программ и стека
- 8. Организация памяти данных
- 9. Регистры специального назначения pic16f84: регистр status
- 10. Регистры специального назначения pic16f84: регистр option
- 11. Регистры специального назначения pic16f84: регистр intcon
- 12. Регистры специального назначения pic16f84: счетчик команд pcl и pclath
- 13. Прямая и косвенная адресация в мк pic16f84
- Порт ввода/вывода «а» мк pic16f84
- Порт ввода/вывода «в» мк pic16f84
- Модуль таймера tmr0 мк pic16f84
- Память данных eeprom мк pic16f84
- 18 Организация прерываний в мк pic16f84
- 19 Работа с модулем ацп в мк pic16f676
- 20. Работа с модулем опорного напряжения в мк
- 21 Работа с модулем компаратора в мк
- 22 Форматы команд pic16f84a
- 23 Команды работы с байтами в мк pic16f84
- 24 Команды работы с битами в мк pic16f84
- 25 Команды управления в мк pic16f84
- 26 Команды работы с константами в мк pic16f84
- 27 Синтаксис ассемблера mpasm: метки, мнемоники, операнды, комментарии
- Директивы языка mpasm
- Языки программирования плк
- Промышленные сети и интерфейсы: Can