PCF8574

Использование расширителей портов и обсуждение пользовательских блоков
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

PCF8574, PCF8574A различаются только секторами адресов, возможно максимально установить по 8 штук на одну шину, итого 8х2х8вх/вых - 128вх/вых.
Блок легко может быть переделан под PCF8575 - 16 вх/вых.
Описание:
Адрес для входа должен подаваться в виде байта(0-255), например: 3C= 3x16 + C = 48+12=60
Для работы в качестве ТОЛЬКО НА ВЫХОД(управляем нагрузками) сигнал byte_out не используется, на нём будет повтор входа. Физически работа выхода почти соответствует
схеме с открытым коллектором и по + питания токооганичивающий резистор(не более 100мкА). Снять логическую единицу с бОльшим током не получится.
Для работы ТОЛЬКО НА ВХОД(считываем входа) на вход необходимо подать byte 255. Поясню.
Сигналы принимаются только прижиманием к общему, поэтому необходимо перевести выводы в 1, внутренне подтянуть к +, ток очень мал - 100мкА: при помехах ДОПОЛНИТЕЛЬНО можно добавить внешние резисторы(20-4,7 кОм).
Для одновременной работы ВХОД/ВЫХОД необходимо так организовать подачу байта на вход, что-бы на выводах, подключенных для ввода присутствовали единицы.
Образно говоря, указанная микросхема принимает байт и распаковывает на биты, или считывая биты и упаковывает их в байт.
Данный блок представляет собой образец/шаблон работы с I2C.

ОБНОВЛЕНО 21.07.2017. БЛОКИ ОБНОВЛЕНЫ. ДОБАВЛЕНО ДВА  INPUT, OUTPUT.

БЛОК
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Sancho 22 июл 2017, 08:30, всего редактировалось 1 раз.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

Ещё в придачу
Раскладываем на символы 5 значное число

Добавлено (17.07.2017, 10:53)
---------------------------------------------
Для экспериментов использовалась стандартная переходная плата от дисплея, цена  на али - около 22руб.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06 сен 2015, 15:18
Откуда: Калуга
Имя: Андрей

PCF8574

Сообщение krom23 »

Спасибо за поддержку годной микросхемы, давно ей пользуемся, а чтоб вот так, у наших программистов руки ещё не доходили. Кстати, а упростить работу с блоком можно, чтоб без дополнительных гаргарушек с адресами. Типа подал единицу на вход блока 1 и на ноге микрухи 1 появилась единица, ну и со входами так же? Вообще было бы шикарно.:)
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

PCF8574

Сообщение pan »

krom23 писал(а):а упростить работу с блоком можно, чтоб без дополнительных гаргарушек с адресами
  даже нужно.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

krom23 писал(а):Кстати, а упростить работу с блоком можно, чтоб без дополнительных гаргарушек с адресами. Типа подал единицу на вход блока 1 и на ноге микрухи 1 появилась единица, ну и со входами так же? Вообще было бы шикарно.:)
 
pan писал(а):даже нужно.
Даже и незнаю что ответить. Но попытаюсь.
Адресов имеется восемь штук - выбирай любой, подавай на вход необходимый.
Для уменьшения "веса блока" отсутствуют всякие ненужные изначально, на мой взгляд, плюшки.
Если есть необходимость работы с входами/выходами побитно - посмотрите примеры выше, есть готовые блоки.
Пример   PCF8574_v5 - работа микрухи ОДНОВРЕМЕННО на вход и выход,  PCF8574_v7 - пятизначный семисегментный дисплей со статической индикацией, т.е. у каждой PCF8574 свой индикатор(оцените размер программы, сравните с другими решениями на сдвиговых регистрах). 
Если вставлять изначально все восемь входов/выходов, то добавится 16(!) переменных в проекте на каждый блок!!! Хотя это и биты, но занимают в памяти переменных каждая байт!
Для каждого случая - своё решение, а к данному блоку можно прицепить снаружи всё необходимое в данном проекте. 
Сугубо моё мнение.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

PCF8574

Сообщение pan »

адреса убрать в параметры
Sancho писал(а):можно прицепить снаружи всё необходимое в данном проекте
  кто знает тот прикрутит и допилит. а для многих нуна "ножки" к блоку прилепить)
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

pan писал(а):адреса убрать в параметры
Если я использую ОДИН блок, но в разных циклах для разных адресов???
 
pan писал(а):кто знает тот прикрутит и допилит. а для многих нуна "ножки" к блоку прилепить)
Я старался сделать максимально доходчивое, подробное описание. С примерами.
Но, думаю, придётся сделать парочку входных/выходных дополнительных блоков....
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

PCF8574

Сообщение pan »

просто блок в том виде как есть, больше для работы с шиной i2c для всех устройств, чем конкретно для этой микры)
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

pan писал(а):просто блок в том виде как есть, больше для работы с шиной i2c для всех устройств, чем конкретно для этой микры)
 = Последняя строчка в описании.  
Просто так получилось, что указанная микросхема одна из простейших в серии I2C.

БЛОКИ ОБНОВЛЕНЫ. ДОБАВЛЕНО ДВА:  INPUT, OUTPUT.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06 сен 2015, 15:18
Откуда: Калуга
Имя: Андрей

PCF8574

Сообщение krom23 »

Спасибо за блоки Sancho. Вы пишете в описании: "Адрес задаётся в формате от 0x38 до 0x3F  или от 57 до 63 включительно." Вы имеете в виду адрес микросхемы или чего? У меня адрес 0x27, его я задать не смогу? Извините за глупые вопросы.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

krom23 писал(а):У меня адрес 0x27, его я задать не смогу?
Подключили блок/микросхему. Отсканировали с помощью FLProg или пересчитали адрес по даташитам и установленным перемычкам вручную. Теперь два варианта:
1. Если в формате FLProg, т.е. шестнатиричном, НЕХ, то пишем 0х.., где .. полученные два символа.
2. Если считали сами или как иначе, то можно в десятичном.
Например, 00011101 - это в hex 1D, а в десятичном 29.
Адрес PCF8574 может находится при разных вариантах перемычек в диапазоне от 0x38 до 0x3F  или от 56 до 63 включительно, т.е. максимум восемь штук на одной шине I2C.
Откуда у Вас такие адреса?
Последний раз редактировалось Sancho 22 июл 2017, 18:31, всего редактировалось 1 раз.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
pan
Полковник
Сообщения: 2860
Зарегистрирован: 13 апр 2017, 11:57
Имя: noname

PCF8574

Сообщение pan »

Sancho, может в описание добавить возможные варианты адресов при определенном состоянии перемычек
krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06 сен 2015, 15:18
Откуда: Калуга
Имя: Андрей

PCF8574

Сообщение krom23 »

Цитата Sancho () Откуда у Вас такие адреса? Плата для LCD, а вот табличка адресов-перемычек из паспорта микросхемы
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

pan писал(а):может в описание добавить возможные варианты адресов при определенном состоянии перемычек
Сделаю, хорошо.

Добавлено (22.07.2017, 19:29)
---------------------------------------------
krom23 писал(а):Плата для LCD, а вот табличка адресов-перемычек из паспорта микросхемы
Весь вопрос в НАЗВАНИИ микросхемы - есть буква А или нет.
В последнее время без буквы не встречалось.
ИНАЧЕ, у Вас без буквы, поэтому смело берите из таблицы, с условием - если в Вашей таблице "+" перемычки нет, "-" запаяна.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
krom23
Лейтенант
Сообщения: 444
Зарегистрирован: 06 сен 2015, 15:18
Откуда: Калуга
Имя: Андрей

PCF8574

Сообщение krom23 »

Видимо адрес зависит от литеры в номинале и/или от партии/производителя. Для плат LCD самые распространённые это 27, значительно реже 3F, про такие только на форуме слышал. Я так понял можно любой адрес, главное чтоб он совпал с адресом микросхемы?
Мысли встретились. С буквой "Т".
Последний раз редактировалось krom23 22 июл 2017, 19:41, всего редактировалось 1 раз.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

krom23 писал(а):Для плат LCD самые распространённые это 27, значительно реже 3F
27 - это адреса, если микросхема НА ПЛАТЕ PCF8574, 3F - PCF8574A, остальные литеры не принципиально, без запаяных перемычек.
Данные адреса подразумевают отсутствие перемычек НА ОБЩИЙ, т.е. единицы в адресе при подсчёте. Запайка перемычек на этих платах переводит выводы установки адресов в 0(они имеют изначальную подтяжку к +(1)).
Надеюсь, теперь понятно описал.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

Плата, с которой проводились эксперименты. Была слегка модифицирована для удобства...
Адреса для двух типов используемых микросхем.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Sancho 25 июл 2017, 10:27, всего редактировалось 1 раз.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
fsergei70
Капитан
Сообщения: 859
Зарегистрирован: 17 ноя 2015, 20:36
Имя: Сергей
Благодарил (а): 40 раз
Поблагодарили: 8 раз

PCF8574

Сообщение fsergei70 »

Огромное спасибо за блок, вот и в flprog появилась эта возможность. Я в своё время нечто подобное видел здесь    https://www.youtube.com/watch?v=9JKGStB3hik&t=1318s               Даже тему на форуме создавал но никто не откликнулся. Вообще канал у автора видео интересный, думаю многим понравится. Последнее что он делал это осциллограф из ардуино.

Добавлено (03.08.2017, 18:21)
---------------------------------------------
Как говорится аппетит приходит во время еды. Это я про то, что не плохо было бы энкодер через эту микруху прикрутить.
Последний раз редактировалось fsergei70 03 авг 2017, 01:22, всего редактировалось 1 раз.
Bposter
Рядовой
Сообщения: 32
Зарегистрирован: 02 май 2018, 18:30
Имя: Сергей

PCF8574

Сообщение Bposter »

Смотрел примеры из темы и нече не понял, может кто покажет пример как на ардуине использовать пин 7 как кнопку а на PCF8574 на пине P0 зажечь диод?

Думал что так но нет(
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25 дек 2015, 17:32
Откуда: Ярославль.
Имя: Александр
Поблагодарили: 5 раз
Контактная информация:

PCF8574

Сообщение Sancho »

Bposter писал(а): 04 май 2018, 21:25Смотрел примеры из темы и нече не понял, может кто покажет пример как на ардуине использовать пин 7 как кнопку а на PCF8574 на пине P0 зажечь диод?
Думал что так но нет(
Sancho писал(а): 17 июл 2017, 10:33Физически работа выхода почти соответствует
схеме с открытым коллектором и по + питания токооганичивающий резистор(не более 100мкА). Снять логическую единицу с бОльшим током не получится.
Светодиод с токоограничивающим резистором - между + и выходом микрухи.
Отсканировать сканером I2C для установления точного адреса.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Ответить

Вернуться в «Расширители портов»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя