Оглавление:

Raspberry Pi - PCA9536 Учебное пособие по Python для расширителя ввода / вывода: 4 шага
Raspberry Pi - PCA9536 Учебное пособие по Python для расширителя ввода / вывода: 4 шага

Видео: Raspberry Pi - PCA9536 Учебное пособие по Python для расширителя ввода / вывода: 4 шага

Видео: Raspberry Pi - PCA9536 Учебное пособие по Python для расширителя ввода / вывода: 4 шага
Видео: Учебное пособие по датчику температуры Raspberry Pi MCP9808 на языке Python 2024, Июль
Anonim
Image
Image

PCA9536 - это 8-контактное устройство CMOS, которое обеспечивает 4-битное расширение универсального параллельного ввода / вывода (GPIO) для приложений с шиной I2C / SMBus. Он состоит из 4-битного регистра конфигурации, служащего для выбора входа или выхода, 4-битного регистра порта ввода, 4-битного регистра порта вывода и 4-битного регистра инверсии полярности, активного HIGH или активного LOW. Вот его демонстрация с Raspberry Pi с использованием кода Python.

Шаг 1: Что вам нужно..

Что вам нужно..!!
Что вам нужно..!!

1. Raspberry Pi

2. PCA9536

3. Кабель I²C

4. I²C Shield для Raspberry Pi

5. Кабель Ethernet.

Шаг 2: Подключения:

Подключения
Подключения
Подключения
Подключения
Подключения
Подключения
Подключения
Подключения

Возьмите щит I2C для raspberry pi и осторожно наденьте его на контакты gpio raspberry pi.

Затем подключите один конец кабеля I2C к датчику PCA9536, а другой конец - к экрану I2C.

Также подключите кабель Ethernet к Pi, или вы можете использовать модуль Wi-Fi.

Подключения показаны на картинке выше.

Шаг 3: Код:

Код
Код

Код Python для PCA9536 можно загрузить из нашего репозитория github - DCUBE Store.

Вот ссылка

Мы использовали библиотеку SMBus для кода Python, шаги по установке SMBus на Raspberry Pi описаны здесь:

pypi.python.org/pypi/smbus-cffi/0.5.1

Вы также можете скопировать код отсюда, он выглядит следующим образом:

# Распространяется по свободной лицензии.

# Используйте его как хотите, для получения прибыли или бесплатно, при условии, что он соответствует лицензиям на связанные с ним работы.

# PCA9536

# Этот код предназначен для работы с мини-модулем PCA9536_I2CIO I2C #

импортировать smbus

время импорта

# Получить шину I2C

автобус = smbus. SMBus (1)

# Адрес PCA9536, 0x41 (65)

# Выбрать регистр конфигурации, 0x03 (03)

# 0xFF (255) Все выводы настроены как входы

bus.write_byte_data (0x41, 0x03, 0xFF)

# Вывод на экран

print "Состояние всех контактов ВЫСОКОЕ"

time.sleep (0,5)

# Адрес PCA9536, 0x41 (65)

# Считать данные обратно из 0x00 (00), 1 байт

данные = bus.read_byte_data (0x41, 0x00)

# Преобразовать данные в 4-битные

данные = (данные & 0x0F)

для i в диапазоне (0, 4):

если (данные & (2 ** i)) == 0:

print "I / O Pin% d State is LOW"% i

еще:

print "I / O Pin% d State is HIGH"% i

time.sleep (0,5)

Шаг 4: Приложения:

PCA9536 может использоваться как расширитель ввода / вывода. Это простое решение, когда требуется дополнительный ввод / вывод. Обычно он используется в системах, которые требуют расширения для включения переключателей питания ACPI, датчиков, кнопок, светодиодов, вентиляторов и т. Д.

Рекомендуемые: