Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: Расширитель портов PCF8574

Расширитель портов PCF8574 16 Апр 2016 18:30 #12215

  • litr
  • litr аватар
  • Не в сети
  • Новый участник
  • Сообщений: 13
  • Спасибо получено: 1
  • Репутация: 0
У меня не получается полноценно PCF8574A использовать: лог. 1 только на одном порту, включаю первый, потом второй - первый при этом становится в 0 ;(

И еще вопрос: как в конструкторе кода при старте сбросить все входы в 0? Что-то не осилил i2c в SDK...

или купить MCP23017? Но уж больно большая она
Администратор запретил публиковать записи гостям.

Расширитель портов PCF8574 16 Апр 2016 18:34 #12216

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7182
  • Спасибо получено: 1113
  • Репутация: 194
Порты 220-227 через дикиталврайт() рулятся. Уж не знаю как вы там рулили..

Сразу все в ноль в конструкторе кода можно поставить через функцию pcfgpiow8(uint8_t PCF8574_ADDR,uint8_t value)
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Расширитель портов PCF8574 17 Апр 2016 02:00 #12218

  • litr
  • litr аватар
  • Не в сети
  • Новый участник
  • Сообщений: 13
  • Спасибо получено: 1
  • Репутация: 0
Спасибо за быстрый ответ!

А то что сабж работает в режиме переключения это баг или фишка?
Не возможно включить в 1 больше одного порта- при включении следующего, предыдущие отключаются
Администратор запретил публиковать записи гостям.

Расширитель портов PCF8574 17 Апр 2016 02:21 #12219

  • litr
  • litr аватар
  • Не в сети
  • Новый участник
  • Сообщений: 13
  • Спасибо получено: 1
  • Репутация: 0
Не сработало, ни с первой строкой ни со второй ;(
startfunc(){
// выполняется один раз при старте модуля.
pcfgpiow8(0x38,0x00);
digitalWrite(220,0);
}

Удается переключать выходы как хочется только через /i2cgo?adr=38&set= и байт состояния портов, но умный дом такому не научить ;(
Администратор запретил публиковать записи гостям.

Расширитель портов PCF8574 17 Апр 2016 08:15 #12220

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7182
  • Спасибо получено: 1113
  • Репутация: 194
Все должно четко работать. В конструкторе прошивки должен быть указан верный адрес у чипа.

digitalWrite(220-227,0) или через гет запрос http://IP_ADRES/gpio?st=1&pin=220-227
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

Расширитель портов PCF8574 17 Апр 2016 10:49 #12223

  • litr
  • litr аватар
  • Не в сети
  • Новый участник
  • Сообщений: 13
  • Спасибо получено: 1
  • Репутация: 0
Ну я же не вру ;)
Адрес верный (иначе не управлялось бы вообще;)


1. Гетчу /gpio?st=1&pin=220 - порт0: 1, остальные: 0
2. Гетчу /gpio?st=1&pin=222 - порт2 становится 1, а порт0 становится 0

Судя по всему микрухе по i2c уходит 1 только для порта который нужен, а остальные нули - она и выдает пришедший байт с одной единицей у себя на портах.

Через /i2cgo?adr=38&set=ff включает все порты в 1, значит с конфигом и микрухой все в порядке...
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.119 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.