Подключение GP2D120 к PIСBOT *ПРОДОЛЖЕНИЕ*
Подключение GP2D120 к PIСBOT.
Программное обеспечение взято из фирмы Mikroelektronika mikroPascal PRO for PIC 2009.
http://www.mikroe.com/en/compilers/mikropascal/pro/pic/
Для того чтоб подключить дальномер нам потребуется найти АЦП вход у микроконтроллера PIC 16F887.
Они у контролера PIC 16F887 обозначены (AN – номер входа), их присутствует четырнадцать входов , длина АЦП десять бит.
На схеме они показаны.
Далее нам нужно выбрать вход и сконфигурировать как АЦП.
Для этого нам нужны регистры ADCON0, ADCON1.
Регистр ADCON0 предназначен для управления АЦП
Детальное описание каждого бита регистра ADCON0 показано ниже:
- 7-6 биты для выбора частоты преобразования
00=FOSC/2
01=FOSC/8
10=FOSC/32
11= FRC (частота, получаемая от специализированного внутреннего генератора = 500 kHz максимум)
- 5-2 биты для выбора аналогового канала
0000=AN0 (вывод RA0)
0001=AN1 (вывод RA1)
0010=AN2 (вывод RA2)
0011=AN3 (вывод RA3)
0100=AN4 (вывод RA5)
0101=AN5 (вывод RE0)
0110=AN6 (вывод RE1)
0111=AN7 (вывод RE2)
1000=AN8 (вывод RB2)
1001=AN9 (выход RB3)
1010=AN10 (вывод RB1)
1011=AN11 (вывод RB4)
1100=AN12 (вывод RB0)
1101=AN13 (вывод RB5)
- 1 бит состояния АЦП
1= чикл аналого-цифрового преобразования в процессе выполнения. Установка этого бита запускает цикл аналого-цифрового преобразования. Этот бит автоматически очищается микроконтроллером после окончания цикла аналого-цифрового преобразования.
0= цикл аналого-цифрового преобразования / не запущен
- 0 бит разрешения работы АЦП
1=работа АЦП разрешена
0=работа АЦП не разрешена
Регистр ADCON1 предназначен для управления АЦП
Детальное описание каждого бита регистра ADCON1 показано ниже:
- Бит 7 = бит выбора формата результата преобразования АЦП
1=Правое выравнивании
0=Левое выравнивание
- Бит 6 = не задействован
- Бит 5: бит выбора источника опорного напряжения
1=вывод VREF — (RA2)
0= напряжение питания Vss
- Бит 4: бит выбора источника опорного напряжения
1=вывод VREF+
0=общий провод VDD
- Биты от 3 до 0 – Не задействованы
Конфигурирование АЦП.
Для использования модуля, АЦП микроконтроллера PIC16F887 необходимо рассмотреть следующие действия:
- Конфигурирование порта
- Выбор канала
- Выбор источника опорного напряжения для АЦП
- Выбор источника частоты преобразования
- Выбор способа форматирования результата преобразования
Конфигурирование порта.
АЦП можно использовать для преобразования как аналоговых, так и цифровых сигналов. При преобразовании аналоговых сигналов, линии ввода/Вывода необходимо сконфигурировать как аналоговые входы, установив соответствующие биты регистра TRIS.
Выбор канала
Биты регистра ADCON0 определяют какой из каналов будет подключен ко входу
схемы выборки-хранения. После выбора канала, перед выполнением следующего преобразования, требуется некоторая задержка.
Выбор источника опорного напряжения для АЦП.
Биты 4,5 регистра ADCON1 обеспечивают независимое управление источниками
положительного и отрицательного опорного напряжения. В качестве источника положи-
тельного опорного напряжения можно использовать либо напряжение источника питания
Vdd, либо внешний источник стабильного напряжения. Точно так же, в качестве источника
отрицательного опорного напряжения, можно использовать напряжение источника пита-
ния Vss, либо внешний источник стабильного напряжения.
Для платы управления Роботом PICBOT будет выбрано напряжение питания +5 В
в качестве источника положительного опорного напряжения и напряжение Vss или общая
шина устройства в качестве источника отрицательного опорного напряжения.
Выбор источника частоты преобразования.
Источник частоты преобразования выбирается программно посредством c 6-7 бит
регистра ADCON0. Существует 4 варианта такого выбора:
•• FOSC/2: для тактовой частоты 20 МГц, TAD = 100 нсек
•• FOSC/8: для тактовой частоты 20 МГц, TAD = 400 нсек
•• FOSC/32: для тактовой частоты 20 МГц, TAD = 1,6 мксек
•• FRC (специальный внутренний генератор): TAD = 2…6 мксек
Время, необходимое для получения одного разряда преобразования, обозначено как
TAD. На один полный цикл 10-разрядного преобразования требуется 11 TAD периодов.
Форматирование результата преобразования
Результат аналого-цифрового преобразования возвращается процедурой
ADC_read(). Форма размещения результата преобразования будет зависеть от установки бита c 6-7
регистра ADCON0.
Процедура Аналого-Цифрового преобразования.
Рассмотрим пример процедуры использования АЦП для выполнения аналого-цифрового
преобразования микроконтроллером PIC16F887:
1. Конфигурирование порта:
•• Отключить выходной драйвер вывода
•• Сконфигурировать вывод как аналоговый вход, записав необходимое значение в
регистр ADCON1.
2. Конфигурирование модуля АЦП (используя регистр ADCON0):
••Выбрать частоту преобразования АЦП
••Сконфигурировать источник опорного напряжения
••Выбрать входной канал АЦП
••Выбрать формат результата преобразования, используя регистр ADCON1
••Включить модуль АЦП
Приступаем к практике.
Общий план что сейчас есть из модулей
Подключаем дальномер ко входу AN2 (выход RA2).
Питание подключаем k модулю питания.
Добавить комментарий