Подключение 8 битный семисегментный индикатор на двух 74HC595D

Подключение 8 битный семисегментный индикатор

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
AlEXEY_D
Рядовой
Сообщения: 35
Зарегистрирован: 02.03.2017{, 07:58}
Репутация: 0

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#1

Сообщение AlEXEY_D » 02.02.2020{, 11:40}

Имеется в наличии 8 битный семисегментный индикатор на двух 74HC595D.
Подскажите как подключить к Arduino, а так же пару скетчев для примера

AlEXEY_D
Рядовой
Сообщения: 35
Зарегистрирован: 02.03.2017{, 07:58}
Репутация: 0

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#2

Сообщение AlEXEY_D » 16.02.2020{, 09:46}

Люди добрый подскажите плиз как подключить сей агрегат к Arduino

max38
Рядовой
Сообщения: 39
Зарегистрирован: 17.08.2018{, 13:38}
Репутация: 1
Откуда: Ангарск
Имя: Makcим

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#3

Сообщение max38 » 16.02.2020{, 09:58}

Присоединяюсь к просьбе. Есть 2 в наличии.
http://prntscr.com/r2zbra
Запустить не получилось. Похожая тема не помогла viewtopic.php?f=47&t=6122

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#4

Сообщение Sancho » 16.02.2020{, 10:18}

ок, завтра. Хотя тема уже заезжена до дыр...
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25.01.2018{, 22:23}
Репутация: 95
Откуда: Bukovyna
Имя: Василий

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#5

Сообщение Labu559 » 16.02.2020{, 17:13}

AlEXEY_D писал(а):
02.02.2020{, 11:40}
Имеется в наличии 8 битный семисегментный индикатор на двух 74HC595D
А у многих, кто хочет и может помочь Вам нет такого модуля и неизвестна схема.
Попытаюсь погадать на "картах" из Интернета.Показать
8-digit-7-segment-led-display-module.jpg
Может не угадал, может у Вас что-то очень экстра специфическое (по Райкину), может никогда об этом не узнаю.
max38 писал(а):
16.02.2020{, 09:58}
Запустить не получилось. Похожая тема не помогла viewtopic.php?f=47&t=6122
А почему вопрос не в "похожей" теме, здесь-то спрашивают про 8-битный модуль? Очень жаль, что не получилось, значит не к тем местам прикладывали. Специально для подобных сообщений выкладываю максимально имеющуюся у меня информацию- схемы, фотографии, блоки с демонстрацией способа применения в проекте, и в том числе и скрин симуляции проекта в Протеусе. Да и ТС в той, "похожей" теме вроди-бы подтвердил работоспособность и схемы с итернета совпадают. Эх... :(
Sancho писал(а):
16.02.2020{, 10:18}
тема уже заезжена до дыр...
Александр, а может потому мы теряем некогда очень активных и толковых ребят на форуме, что надоело кататься по разбитой колее, а воз и ныне там? Не ну конечно свежие подтягиваются.
Всем удачи, простите за лирическое отступление.
Вложения
2xTM74HC595-4-bit_LED_Digital_Tube.rar
(755.1 КБ) 113 скачиваний
2xTM74HC595-8bit_LED_Digital_Tube.rar
(409.93 КБ) 113 скачиваний
Последний раз редактировалось Labu559 17.02.2020{, 19:30}, всего редактировалось 1 раз.

max38
Рядовой
Сообщения: 39
Зарегистрирован: 17.08.2018{, 13:38}
Репутация: 1
Откуда: Ангарск
Имя: Makcим

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#6

Сообщение max38 » 17.02.2020{, 14:24}

Здравствуйте господа. Попробовал прошить 4-bit_LED_Digital_Tube.flp IDE выдает следующее
СпойлерПоказать
Arduino: 1.8.11 (Windows 10), Плата:"Arduino Nano, ATmega328P (Old Bootloader)"

In file included from sketch\pr2.ino.cpp:1:0:

C:\Users\1\AppData\Local\Temp\flprog\pr2\pr2.ino: In function 'void loop()':

pr2:148:29: error: 'D5' was not declared in this scope

bitWrite(digits_595, 0, D5);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

C:\Users\1\AppData\Local\Temp\flprog\pr2\pr2.ino:148:29: note: suggested alternative: 'D4'

bitWrite(digits_595, 0, D5);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

pr2:149:29: error: 'D6' was not declared in this scope

bitWrite(digits_595, 0, D6);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

C:\Users\1\AppData\Local\Temp\flprog\pr2\pr2.ino:149:29: note: suggested alternative: 'D4'

bitWrite(digits_595, 0, D6);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

pr2:150:29: error: 'D7' was not declared in this scope

bitWrite(digits_595, 0, D7);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

C:\Users\1\AppData\Local\Temp\flprog\pr2\pr2.ino:150:29: note: suggested alternative: 'D4'

bitWrite(digits_595, 0, D7);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

pr2:151:29: error: 'D8' was not declared in this scope

bitWrite(digits_595, 0, D8);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

C:\Users\1\AppData\Local\Temp\flprog\pr2\pr2.ino:151:29: note: suggested alternative: 'D4'

bitWrite(digits_595, 0, D8);

^

D:\Program Files\PortableFLProg_6-3-1_Win64\ideV5\hardware\arduino\avr\cores\arduino/Arduino.h:115:42: note: in definition of macro 'bitWrite'

#define bitWrite(value, bit, bitvalue) ((bitvalue) ? bitSet(value, bit) : bitClear(value, bit))

^~~~~~~~

exit status 1
'D5' was not declared in this scope

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
"Показать подробный вывод во время компиляции"

AlEXEY_D
Рядовой
Сообщения: 35
Зарегистрирован: 02.03.2017{, 07:58}
Репутация: 0

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#7

Сообщение AlEXEY_D » 17.02.2020{, 18:59}

Василий, модуль вот такой.
С первой попытки не заработал.
Для "одаренных" напишите на какие пины включать SCLK RCLK DIO
Вложения
20200217_205009.jpg
20200217_204948.jpg

Andrejka
Рядовой
Сообщения: 40
Зарегистрирован: 13.12.2018{, 19:40}
Репутация: 1
Имя: Андрей

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#8

Сообщение Andrejka » 17.02.2020{, 19:44}

Добрый день, во вложении рабочий проект FL5.30 пол года тестируемого паяльника (+- 0,5 градуса), индикатор на 595, на встроенных блоках.
Вложения
ПАЯЛО_ new Энкодер3.flp
(1.07 МБ) 159 скачиваний

Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25.01.2018{, 22:23}
Репутация: 95
Откуда: Bukovyna
Имя: Василий

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#9

Сообщение Labu559 » 17.02.2020{, 20:28}

max38 писал(а):
17.02.2020{, 14:24}
Попробовал прошить 4-bit_LED_Digital_Tube.flp
Ув. max38, извините, мой косяк. Косяк то мой, но получился с помощью одной особенности FLProg. Писал уже давно, но видимо никому это не мешает. Дело в том, что при редактировании Пользовательского блока (СИ), особенно если работаете в многооконном режиме, вы можете открыть несколько окон редактирования одного и того-же блока, и даже не заметить этого, так как они спрячутся. Вы сделаете правки в текущем окне, всё проверите, перейдёте в другое окно, вернётесь сохраните блок, скомпилируете проект, а перед выходом выскочит спрятанный блок, программа спросит о сохранении его (откуда нам знать что это не редактированная копия?). Сохраняем блок, опять сохраняем проект и вуаля- проект не рабочий, блок тоже. Короче говоря
исправил проект в 5-м сообщении, скачайте опять исправленный.Показать
IDEcomp4Bit.png
AlEXEY_D писал(а):
17.02.2020{, 18:59}
Василий, модуль вот такой. С первой попытки не заработал. Для "одаренных" напишите на какие пины включать SCLK RCLK DIO
Ув.AlEXEY_D, Я же писал, и наверняка Вы согласитесь, у меня такого модуля нет, приложенная мной схема с Интернета предположительно для какого-то модуля из выложенных мной вариантов выше. Проверьте, если не такая известите, я переделаю для Вашего модуля. Если совпадает- напишите, и Вам многие скажут спасибо, если не в сообщении-письменно :smile44: , то заочно-мысленно. Короче где-то зачтётся. Для "одаренных" я пины написал в проекте над блоком в жёлтой рамке и предоставил схему в Протеусе. Для начинающих прилагаю инструкцию:
П.К.М. на блоке -> Изменить параметры -> смотрим\меняем по спискуПоказать
see_PINs.png
Ваши пины SCLK- тактирования, RCLK- защёлки, DIO- данных.Показать
74HC595.png
Просто многочисленные производители 595-й решили облегчить нашу жизнь и обзываются по разному. :)
Удачи!
Note. Обращаю внимание обладателей этих "шедевров" китайского инженерного гения на то, что при зависании микроконтроллера на последний зависший сегмент дисплея потечёт ничем не ограниченный ток. Не берусь угадать что выгорит первым- светодиод сегмента или вывод 595-й. Похоже, что из всей этой волшебной коллекции только плата от РоботаДыни имеет на борту резисторы токоограничения . В свете этого интересен опыт тех, кто его уже приобрёл. Обращаю Ваше внимание, что проверить это предположение можно подав на вход блока Hold_595 высокий уровень. Никакого иного сакрального предназначения этот вход не имеет, даже более того, может вывести из строя устройство! В итоговом блоке (если будет этот итог по результатам тестов) этот вход должен быть удалён из блока вообще.
Последний раз редактировалось Labu559 06.03.2020{, 00:13}, всего редактировалось 1 раз.

max38
Рядовой
Сообщения: 39
Зарегистрирован: 17.08.2018{, 13:38}
Репутация: 1
Откуда: Ангарск
Имя: Makcим

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#10

Сообщение max38 » 18.02.2020{, 16:28}

Здравствуйте всем. Добрался наконец то до железа и вот какая история. Василий Ваш 4-bit_LED_Digital_Tube.flp работает без ошибки Спасибо за исправления, но видать мое железо к нему не подходит. Видео прилагаю. https://yadi.sk/i/wcVCcqrHi7joHw
по поводу не работающего железа я в видео погорячился, спустя пару минут осенило "переделать" немного скетч от AlexGyver Home Labs Inc.
делал он тахометр на этом железе. https://alexgyver.ru/source_tahometer/ В окончании кода есть строка
if ((micros()-lastflash)>1000000){ //если сигнала нет больше секунды
RPM=1238; //считаем что RPM 0
1238 это моя правка. На большее ума не хватило :smile171: видео https://yadi.sk/i/cOcCmVLB410jRA
Как это в FLProg воплотить моему уму пока не постижимо.
документы прилагаю
Вложения
TM74HC595.zip
(3.97 КБ) 137 скачиваний
tachometer_disp.ino
(1.29 КБ) 107 скачиваний

Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25.01.2018{, 22:23}
Репутация: 95
Откуда: Bukovyna
Имя: Василий

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#11

Сообщение Labu559 » 18.02.2020{, 19:22}

max38 писал(а):
18.02.2020{, 16:28}
Как это в FLProg воплотить моему уму пока не постижимо.
Главное не унывать и всё получится!
По Вашему скетчу/библиотеке схема модуля приобретает
несколько "завёрнутый" видПоказать
Tahometer.png
и соответственно блок в демопроекте. Оптимизация разводки на печатной плате видимо, а выложенная Вами схема несоответствует модификации/варианту Вашего модуля. Возможен ещё 2-й, последний вариант с DIO на второй 595-й (U5 по схеме), но это не существенно. Ещё одна попытка- пробуйте, должно выглядеть как на скрине, если получилось, буду исправлять все свои блуждания выше.
По Вашему видео. Разница по яркости в разрядах будет ещё больше, чем сложнее проект. Эти модули требуют постоянного общения (передачи данных), ведь в микросхему за раз загружается 1 байт данных (одна цифра) и ещё 1- транзитом на вторую(разряд) и на долго не задерживается (больше 5-ти мсек), иначе будут заметны неактивные разряды (мерцание). Чем больше МК занят другими делами, на дольше передача приостанавливается, результат- разряд светит ярче, мерцание больше заметно. Как избежать этого? Прерывание по внутр. таймеру-> передача данных (плюс этого метода компенсируется своими минусами). Это- "Динамическая индикация". Потому высока вероятность, самоликвидации модуля(см.выше). :smile171:
AlEXEY_D, а как Ваши успехи с модулем?
Вложения
TM74HC595.rar
(88.35 КБ) 126 скачиваний

max38
Рядовой
Сообщения: 39
Зарегистрирован: 17.08.2018{, 13:38}
Репутация: 1
Откуда: Ангарск
Имя: Makcим

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#12

Сообщение max38 » 19.02.2020{, 14:29}

Василий мое почтение за проделанную работу. Это ПОБЕДА профессианала и явное поражение данного китайского "чудо" модуля. Все заработало из архива предыдущего сообщения. Огромное спасибо, 4х битный сдался и его можно полезно использовать.
Пруфы, как говорят ныне, здесь https://yadi.sk/i/inp-v63FiB0aKQ
Имел удовольствие пошаманить чутка со скетчем, получил желаемый эфект https://yadi.sk/i/UrxxyviOqK031g
на всякий прилагаю
Вложения
4-bit_LED_Digital_Tube_max38.flp
(237.07 КБ) 126 скачиваний

Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19.12.2020{, 23:57}
Репутация: 7
Имя: Alex

Подключение 8 битный семисегментный индикатор на двух 74HC595D

#13

Сообщение Qwert855 » 12.01.2021{, 20:40}

добрый вечер
При использовании блока из ветки (TM74HC595) обнаружил досадный момент. при связке с штатным блоком для DHT11 FLP7xx экран гаснет в момент опроса датчика.
те. если в блоке DHT11 стоит опрос каждые 5 сек то экран гаснет каждые 5 сек на треть секунды. кто то сталкивался с этим?
сборка на ESP01 (без датчика мерцает стабильно)

Ответить

Вернуться в «Дисплеи и индикаторы»