Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
-
- Лейтенант
- Сообщения: 391
- Зарегистрирован: 09 апр 2016, 12:17
- Откуда: Кременчуг
- Имя: Сергей
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Расширитель входов и выходов на регистрах 74НС165 и 74НС595 с комбинированным подключением (тактовый вывод и вывод защёлки общие для входных и выходных регистров).
Количество входных 74НС165 и выходных 74НС595 регистров настраивается в параметрах пользователя от 1 до 6 штук и может быть разным (например, 6 входных и 2 выходных)
Подключается к Arduino всего четырьмя проводами:
- pin14 74HC595 => Dout_pin
- pin9 74HC165 => Din_pin
- pin1 74HC165 и pin12 74НC595=> PL_pin
- pin2 74HC165 и pin11 74НC595 => Clock_pin
Номера выводов Ардуино настраиваются в параметрах пользователя, доступны все выводы, включая аналоговые (кроме А6, А7). Аппаратный SPI не использован. Кроме того, есть "быстрый" блок с исользованием библиотеки "CyberLib.h", работает примерно в 5 раз быстрее, но может конфликтовать с другими блоками (теоретически), кроме того, выводы подключения изменить можно только редактированием блока.
К мастер-блоку добавляется необходимое количество входных блоков 165_Read_Byte и выходных блоков 595_Write_Byte с соответствующими номерами.
На выходах блоков получаем переменные типа Byte, их можно преобразовать в биты блоками [ref]Boroda[/ref] byte_to_8bit_
На входы блоков подаём переменные типа Byte, их можно получить из битов блоками [ref]Boroda[/ref] 8bit_to_byte_
Тема подробно обговорена здесь: http://forum.flprog.ru/viewtopic.php?t=885&start=40, примерно с сообщения 44.
Всё, что надо, есть в папке. Подключение подробно расписано в описании блока. Протестировано в железе.
Финальные версии блоков практически полностью разработаны [ref=#ff8000]Sancho[/ref], мной отредактированы, протестированы в железе, добавил подробное описание.
Прошу отписаться о применении. Вопросы и критика приветствуются
Отправлено спустя 16 минут 52 секунды:
Прилагаю простенький пример для понимания [spoiler] [/spoiler]
Количество входных 74НС165 и выходных 74НС595 регистров настраивается в параметрах пользователя от 1 до 6 штук и может быть разным (например, 6 входных и 2 выходных)
Подключается к Arduino всего четырьмя проводами:
- pin14 74HC595 => Dout_pin
- pin9 74HC165 => Din_pin
- pin1 74HC165 и pin12 74НC595=> PL_pin
- pin2 74HC165 и pin11 74НC595 => Clock_pin
Номера выводов Ардуино настраиваются в параметрах пользователя, доступны все выводы, включая аналоговые (кроме А6, А7). Аппаратный SPI не использован. Кроме того, есть "быстрый" блок с исользованием библиотеки "CyberLib.h", работает примерно в 5 раз быстрее, но может конфликтовать с другими блоками (теоретически), кроме того, выводы подключения изменить можно только редактированием блока.
К мастер-блоку добавляется необходимое количество входных блоков 165_Read_Byte и выходных блоков 595_Write_Byte с соответствующими номерами.
На выходах блоков получаем переменные типа Byte, их можно преобразовать в биты блоками [ref]Boroda[/ref] byte_to_8bit_
На входы блоков подаём переменные типа Byte, их можно получить из битов блоками [ref]Boroda[/ref] 8bit_to_byte_
Тема подробно обговорена здесь: http://forum.flprog.ru/viewtopic.php?t=885&start=40, примерно с сообщения 44.
Всё, что надо, есть в папке. Подключение подробно расписано в описании блока. Протестировано в железе.
Финальные версии блоков практически полностью разработаны [ref=#ff8000]Sancho[/ref], мной отредактированы, протестированы в железе, добавил подробное описание.
Прошу отписаться о применении. Вопросы и критика приветствуются
Отправлено спустя 16 минут 52 секунды:
Прилагаю простенький пример для понимания [spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Лейтенант
- Сообщения: 391
- Зарегистрирован: 09 апр 2016, 12:17
- Откуда: Кременчуг
- Имя: Сергей
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Добавил ещё один мастер-блок для работы по трём проводам. К мастер-блоку добавляется необходимое количество входных блоков 165_Read_Byte и выходных блоков 595_Write_Byte с соответствующими номерами. При подключении микросхем входных регистров нужно добавить три деталюхи, на рисунке выделены, в описании блока расписано подробно.
[spoiler] [/spoiler]
Проверил в железе, работает, но хотелось бы ещё чьи-то результаты применения узнать.
[spoiler] [/spoiler]
Проверил в железе, работает, но хотелось бы ещё чьи-то результаты применения узнать.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Лейтенант
- Сообщения: 391
- Зарегистрирован: 09 апр 2016, 12:17
- Откуда: Кременчуг
- Имя: Сергей
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Испытания показали, что схема работает и при замкнутой цепочке из резистора с диодом, хотя не должна. 

Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Здравствуйте уважаемые пользователи FlProg
Есть простенький проект для работы со счетчиками воды
На проекте их 7 а должно быть в 4 раза больше т е 28
У UNO не хватает ног
Вопрос : что лучше взять МЕГу или использовать сдвиговые регистры
Плата будет работать круглосуточно
Заранее благодарю за ответы
Да может по оптимизации что то подскажете
Есть простенький проект для работы со счетчиками воды
На проекте их 7 а должно быть в 4 раза больше т е 28
У UNO не хватает ног
Вопрос : что лучше взять МЕГу или использовать сдвиговые регистры
Плата будет работать круглосуточно
Заранее благодарю за ответы
Да может по оптимизации что то подскажете
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Собрал платку для теста регистров (2 на вход и 2 на выход).
В результате возникло пару вопросов:
При "сквозном" подключении в программе,
[spoiler] [/spoiler]
физические входа - выхода зеркальны
A - H
B - G
C - F
D - E
E - D
F - C
G - B
H - A
так и задумывалось?
При включении питания, до начала работы ПБ, состояние выходов случайно (чаще высокий уровень).
Это "неизбежное зло"?
Отправлено спустя 17 минут 27 секунд:
Забыл добавить, при таком соединении в программе еще и микрухи входа выхода реагируют крест накрест...
Отправлено спустя 2 часа 25 минут 14 секунд:
Другой тест
[spoiler] [/spoiler]
Результат
Входа соответствуют номерам микросхем и разрядам.
Выхода соответствуют номерам микросхем и разрядам.
Получается что-то не то именно при "сквозном" подключении.
Отправлено спустя 1 час 33 минуты 17 секунд:
В догонку )
Такой вариант (понимаю, что практически идентичен первому, но вдруг...)
[spoiler] [/spoiler]
чуда не произошло....
Крест накрест и зеркало.
Отправлено спустя 5 часов 7 минут 3 секунды:
Благодаря Sancho, проблема выяснена. Надеюсь появится ТС и обновит описание.
В результате возникло пару вопросов:
При "сквозном" подключении в программе,
[spoiler] [/spoiler]
физические входа - выхода зеркальны
A - H
B - G
C - F
D - E
E - D
F - C
G - B
H - A
так и задумывалось?
При включении питания, до начала работы ПБ, состояние выходов случайно (чаще высокий уровень).
Это "неизбежное зло"?
Отправлено спустя 17 минут 27 секунд:
Забыл добавить, при таком соединении в программе еще и микрухи входа выхода реагируют крест накрест...
Отправлено спустя 2 часа 25 минут 14 секунд:
Другой тест
[spoiler] [/spoiler]
Результат
Входа соответствуют номерам микросхем и разрядам.
Выхода соответствуют номерам микросхем и разрядам.
Получается что-то не то именно при "сквозном" подключении.
Отправлено спустя 1 час 33 минуты 17 секунд:
В догонку )
Такой вариант (понимаю, что практически идентичен первому, но вдруг...)
[spoiler] [/spoiler]
чуда не произошло....
Крест накрест и зеркало.
Отправлено спустя 5 часов 7 минут 3 секунды:
Благодаря Sancho, проблема выяснена. Надеюсь появится ТС и обновит описание.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Может кто-то порекомендовать микрухи изоляторов для этого интерфейса из личного опыта?
Критерии банальны - приемлемая цена (меньше 3$), немного обвеса (без доп. источника питания) и достаточная скорость.
Критерии банальны - приемлемая цена (меньше 3$), немного обвеса (без доп. источника питания) и достаточная скорость.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
-
- Лейтенант
- Сообщения: 556
- Зарегистрирован: 04 июн 2022, 04:14
- Имя: Михаил
- Благодарил (а): 4 раза
- Поблагодарили: 9 раз
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Парни, [ref]seri0shka[/ref], [ref=#ff8000]Sancho[/ref], спасибо за эту тему, за блоки, за описание!
Собрал тестовую схему на блоке из этого сообщения (в одном блоке 4 входа, 4 выхода)
viewtopic.php?t=885&start=40#p44127
Всё работает, но есть нюанс.
Для выходных регистров (595) по этому блоку опрос идёт с последней микросхемы в каскаде. Т.е в блоке in 1 - это последняя микросхема, а in 4 - первая.
В редакторе блока поменял очередность в коде (4 строчки с опросами in1..in4), теперь всё по порядку идёт.
Собрал тестовую схему на блоке из этого сообщения (в одном блоке 4 входа, 4 выхода)
viewtopic.php?t=885&start=40#p44127
Всё работает, но есть нюанс.
Для выходных регистров (595) по этому блоку опрос идёт с последней микросхемы в каскаде. Т.е в блоке in 1 - это последняя микросхема, а in 4 - первая.
В редакторе блока поменял очередность в коде (4 строчки с опросами in1..in4), теперь всё по порядку идёт.
-
- Полковник
- Сообщения: 3999
- Зарегистрирован: 12 фев 2016, 11:40
- Откуда: Шатура
- Имя: Энвер
- Благодарил (а): 136 раз
- Поблагодарили: 149 раз
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
В блоках ecoins есть блоки работы с HC595 и HC165 - работают как через аппаратный SPI (разных платформах), так и через программный SPI.WildCat писал(а): 07 ноя 2022, 01:23 Всё работает, но есть нюанс.
Для выходных регистров (595) по этому блоку опрос идёт с последней микросхемы в каскаде. Т.е в блоке in 1 - это последняя микросхема, а in 4 - первая.
При работе с ними следует учитывать некоторые нюансы, но удалось преодолеть.
-
- Лейтенант
- Сообщения: 556
- Зарегистрирован: 04 июн 2022, 04:14
- Имя: Михаил
- Благодарил (а): 4 раза
- Поблагодарили: 9 раз
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
[ref]ecoins[/ref], спасибо, тему блоков ecoins мониторю, но пока изучать нет возможности.
Сейчас проект запущу на том, что знаю, а потом можно уже и углубиться.
Сейчас проект запущу на том, что знаю, а потом можно уже и углубиться.
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Возможно отсчёт начинается с младшего регистра, то есть с права налево.
-
- Лейтенант
- Сообщения: 556
- Зарегистрирован: 04 июн 2022, 04:14
- Имя: Михаил
- Благодарил (а): 4 раза
- Поблагодарили: 9 раз
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
Внутри регистра отсчёт идёт слева направо. А между регистрами - с последнего.
Принципиально это не имеет значения, просто непонятка возникла, когда из 4 возможных регистров у меня было подключено два, и они не работали. Изменил порядок - всё заработало.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Расширитель входов и выходов на регистрах 74НС165 и 74НС595.
viewtopic.php?t=885&start=60#p44323WildCat писал(а): 07 ноя 2022, 01:23 Всё работает, но есть нюанс.
Для выходных регистров (595) по этому блоку опрос идёт с последней микросхемы в каскаде. Т.е в блоке in 1 - это последняя микросхема, а in 4 - первая.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя