ELEMENTUS.RU | GP2D120

Posts tagged GP2D120

Подключение GP2D120 к PIСBOT *ПРОДОЛЖЕНИЕ*

0

Подключение 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 модулю питания.

Продолжение следует.

Подключил GP2D120.

2


Ну вот, наконец-то я сделал, то что хотел, подключил GP2D120.

Пока только выкладываю видеоролик, вроде получилось неплохо, робот переведён в режим одной команды, поясню, я даю команду роботу ехать вперёд,  и дальше он сам определяет препятствие, и определяет, остановиться ему  или нет.

Всё остальное как я написал программу и подключил, я пока делаю.

GP2D120 Инфракрасный дальномер.

2

Инфракрасный дальномер, начало измерения начинается от двух сантиметров до 32 сантиметров. Питание 5вольт, выходной сигнал будет в зависимости от расстояния до препятствия от 0.4 вольт до 2.8 вольт. Замер расстояния производиться в зависимости от угла отражения инфракрасного луча  от препятствия.

Ниже есть формула расчёта АЦП.

Go to Top