Муфты электромонтажные от производителя Fucon

Плата расширения для RaspberryPi, совместимая с Arduino. Часть 2

RaspberryPi

Журнал РАДИОЛОЦМАН, октябрь 2015

Boris Landoni

Open Electronics

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Часть 1.

Работа с платой расширения GPIO

Работать с платой расширения GPIO Shield мы будем под управлением ОС Raspbian, используя удаленный доступ в терминальном режиме, поэтому предварительно на Raspberry Pi необходимо включить поддержку SSH (Secure Shell) и SCP (Secure Copy) с правами Root-пользователя. В качестве примера рассмотрим обращение к АЦП по интерфейсу I2C.

Подключите плату расширения к разъему GPIO Raspberry Pi и включите питание (Рисунок 4).

Плата расширения для RaspberryPi, совместимая с Arduino
Рисунок 4. Внешний вид сборки для тестирования
платы расширения GPIO Shield.

Теперь необходимо активировать модули управления I2C и SPI (в мире Windows называемые драйверами) или какой-либо один из них, в зависимости от ваших потребностей. Сами модули управления скомпилированы в ядре ОС Raspbian как внешние. Для использования этих модулей их нужно удалить из «черного списка» скрытых модулей и добавить в набор модулей, известных ядру. Для этого в текстовом редакторе Nano откройте конфигурационный файл, содержащий скрытые модули, с помощью команды:

nano/etc/modprobe.d/raspi-blacklist.conf

Удалите название модулей I2C и SPI из списка или закомментируйте соответствующие строки с помощью знака «#». Затем нажмите Ctrl+X (выход) и Y (подтверждение сохранения изменений).

Теперь нам нужно выполнить загрузку указанных модулей, интегрировать их в ядро ОС и убедиться в том, что они работают. Сделать это можно двумя способами. Первый – это ручная загрузка модулей управления в командной строке, но при этом они остаются активными лишь до выключения питания. При следующей загрузке Raspberry Pi модули нужно снова загружать соответствующей командой. Второй способ – автозагрузка требуемых модулей при запуске ОС. В этом случае они будут доступны приложению сразу после загрузки ОС. Второй способ необходим, если вы планируете автономную работу системы.

Для первого способа используется команда modprobe. Просто введите (для загрузки модуля управления I2C):

modprobe i2c-dev

Проверить загрузку и активацию модуля можно с помощью команды, отображающей все подключенные модули Ismod. Ввиду того, что в Linux все (или почти все) представлено в виде файлов, в директории /dev можно увидеть подключенные файлы для устройств i2c-0 и i2c-1. Для выгрузки управляющего модуля используйте команду:

modprobe -r i2c-dev

Для автозагрузки модулей управления необходимо изменить конфигурационный файл /etc/modules, который содержит список драйверов для автозагрузки. Открываем файл в текстовом редакторе:

nano /etc/modules

и добавляем строку:

i2c-dev

Нажимаем Ctrl+X и Y для сохранения изменений.

Для работы с устройствами I2C необходимо установить пакет i2c-tools, предоставляющий функции проверки работы устройств I2C, для чего вводим команду

apt-get install i2c-tools

и добавляем пользователя pi (Root-пользователь по умолчанию в Raspbian) в группу i2c командой:

adduser pi i2c

Для активации новых параметров перезагружаем (именно перезагружаем, не выключая питания) Raspberry Pi командой reboot.

После перезагрузки ОС и удаленного подключения по SSH проверяем доступность микросхемы АЦП по шине I2C с помощью команды:

  • для Raspberry Pi rev.1:
    i2cdetect -y 0

  • для Raspberry Pi rev.2:
    i2cdetect -y 1

В качестве ответа на эту команду вы получите в терминале таблицу шестнадцатеричных адресов, в которой адрес 0x68 и будет идентифицировать АЦП.

Для чтения данных (шестнадцатеричные значения двух байтов) аналого-цифрового преобразования в канале 1 используем команду:

  • для Raspberry Pi rev.1:
    i2cget –y 0 0x68 0x88 w

  • для Raspberry Pi rev.2:
    i2cget –y 1 0x68 0x88 ww

В этой команде второй параметр указывает, какую шину I2C необходимо опрашивать, третий – адрес устройства на шине для чтения (0x68), четвертый обозначает номер аналогового входа, с которого мы хотим получить данные измерений, последний параметр (w) сообщает, что нам нужны все байты преобразованного значения.

Материалы по теме

  1. Datasheet Texas Instruments TBX0108
  2. Datasheet Microchip MCP3428

open-electronics.org

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: Expansion Shield for RaspberryPi compatible with Arduino. Part 2 - Use the Shield on RaspberryPi

27 предложений от 14 поставщиков
RAK7244 WisGate Developer D4 Шлюз-концентратор LoRa EU868 на платформе RaspberryPi4 4GB/Raspbian OS. Поддержка спутниковой навигании. В базовой комплектации с антеннами LoRa...
RASPBERRY-PI / PROG-4GB-SDCARD
Samsung
205 ₽
Триема
Россия
Корпус для RaspberryPi 2 прозрачный
233 ₽
RASPBERRY-PI
Samsung
от 618 ₽
Acme Chip
Весь мир
RASPBERRYPI3
по запросу
Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя