Я купил MCP23017 для моей малины Pi, чтобы увеличить контакты GPIO.Получение информации от MCP23017 с Python
Я в настоящее время установлен, и я пытаюсь получить дополнительные контакты, которые у меня есть; GPB0-GPB7 слева и GPA0-GPA7 справа для выполнения моих ставок.
Мне нужно установить их на входные контакты для чтения высокого и низкого статуса, и добавьте тянуть резисторы к ним, но это, насколько я получил:
import smbus
import time
bus = smbus.SMBus(1) # As I'm using an newer RPi.
DEVICE = 0x20 # this is what it shows when I check it.
IODIRA = 0x00
GPIOA = 0x12
bus.write_byte_data(DEVICE,IODIRA,0xFF)
bus.write_byte_data(DEVICE,0x0C,0xff)
value = bus.read_byte_data(DEVICE,GPIOA)
Когда я пытаюсь читать значение, это дает мне странные числа, и я едва могу найти какое-либо объяснение в Hexidecimals и двоичных числах, и это неуклюже отбрасывает меня. Техническое описание кажется китайским для меня ..
Любая помощь ДЕЙСТВИТЕЛЬНО оценили бы!
У вас есть тянуть вниз резисторы на A0, A1, A2 и? –
A0 A1 и A2 все 3 подключены к земле. – user5740843
Возможно, вам придется установить бит 'SEQOP' в регистре' IOCON'. По умолчанию включена последовательная операция, которая увеличивает указатель адреса. Кроме того, что такое вывод 'sudo i2cdetect -y 0' и' sudo i2cdetect -y 1'? –