TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Пользовательские блоки для вывода информации на дисплеи и индикаторы, управления тачскрином, различными клавиатурами, добавления русских шрифтов для вывода на дисплеи типа HD44780
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

Микросхема TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

Уважаемый [ref]nikolyalomaev[/ref], для начала ознакомтесь пж. с п.3.4 здесь.
nikolyalomaev писал(а): 26 дек 2018, 19:59Почему-то не работает от 5ти вольт Ардуино Уно
Судя с приведённой Вами цитаты, кто-то из нас заблуждается. Смотрим фото с 17-го сообщения ув. [ref]OlBer[/ref], где модули запитаны от стабилизатора 5В Ардуино Нано. Из предоставленной Вами скудной информации могу предположить (пальцем в небо), что Вы питаете схему зарядкой от телефона (или т.п.) с большими пульсациями (которые немного "усмиряются" после стабилизатора на 3,3В) и вместо Clock (CLK) и Data (DIO) имеете барабанную дробь через резисторы подтяжки, которые по протоколу I2C/TWI должны формировать высокий уровень на линиях, когда МК отпускает эти линии. Во всех остальных блоках здесь на форуме, скетчах и библиотеках TM1637 на github (за исключением на С++ от автора avishorp и на С от dhog1) делается это принудительным переключением выводов МК в HIGH. Другими словами подтяжка Clock (CLK) и Data (DIO) резисторами к Vcc, при таких делах, вообще становится лишней. См. описание протокола I2C/TWI и анализируем что будет с выходом МК или ведомого устройства в свете выдержки из описания протокола:"Генерация синхросигнала - это всегда обязанность ведущего; каждый ведущий генерирует свой собственный сигнал синхронизации при пересылке данных по шине. Сигнал синхронизации может быть изменен только если он “вытягивается” медленным ведомым устройством (путем удержания линии в низком состоянии)...". А если в этот момент МК переключается принудительно в HIGH? Чей вывод сгорит первым от КЗ?
nikolyalomaev писал(а): 26 дек 2018, 19:59удалил с платы индикатора конденсаторы от clk и dio
[spoiler title= а что советует производитель?]
TM1637_I2C.png
а китайцы ставят 11nF и получаем синусоиду.[/spoiler] При организации интерфейса i2c необходимо озаботиться регламентированными максимальными значеними параметров "Время подъёма (tR)и время спада (tF)для сигналов SDA и SCL" из стандарта, которые в "чудном" машинном переводе DataSheet таблицы № 4 Switching character обозначены (предположение)как еPLZ и tPZL, которые определяются номиналом резисторов (PULLUP), конденсаторов (PULLDOWN) и емкостью самой линии связи. К тому-же повышенная емкость указанных конденсаторов продлевает процесс, отмеченный выше жёлтым маркером, на время перезарядки оных. В остальных блоках АСК заменён т.н. ногодрыгом в лучшем случае. [spoiler title=Вам может помочь разобраться симуляция в Протеус]
Proteus.png
[/spoiler] с виртуальным осциллографом на линиях, где чётко видно формы фронтов сигналов с разными емкостями PULLDOWN и наличие/отсутствие обозначенного АСК-а или бита подтверждения получения очередного байта данных МСхемой.
nikolyalomaev писал(а): 26 дек 2018, 19:59Просто с другими блоками работает и на 5 и 3,3
Надеюсь после моих объяснений актуальность в ответе на этот вопрос отпадает сама собой, если нет- применяйте другие блоки, благо- выбор есть. Кесарю-кесарево...
Желаю удачи!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu559 31 янв 2019, 05:24, всего редактировалось 3 раза.
nikolyalomaev
Рядовой
Сообщения: 22
Зарегистрирован: 07 янв 2018, 19:51
Откуда: Ижевск
Имя: Николай
Поблагодарили: 1 раз

Микросхема TM1637 -драйвер светодиодов и 7-сегм. дисплеев

Сообщение nikolyalomaev »

Labu559 писал(а): 27 дек 2018, 17:17Смотрим фото с 17-го сообщения ув. OlBer, где модули запитаны от стабилизатора 5В Ардуино Нано
Вот и я обратил на это внимание на днях изучая эту ветку, а испытывал я устройство от повер банка, и от усб компьютера, и главное что и при начальном запуске МК с 5 вольтовым питанием модуля тм1637 индикации нет, а с 3.3 все работает.
Завтра попробую ещё с питанием поколдавать, спасибо!
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

Микросхема TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

nikolyalomaev писал(а): 27 дек 2018, 22:14 а испытывал я устройство от повер банка, и от усб компьютера, и главное что и при начальном запуске МК с 5 вольтовым питанием модуля тм1637 индикации нет... ...попробую ещё с питанием поколдавать...
Ожидал, что Вы сами исправите свою ошибку и напишете об этом. Напрасно! Прочитал сегодня о такой-же проблеме на arduino_ru и околонаучные рассуждения вокруг "проблемы". Улыбнуло, захотелось, что-бы такие вопросы не появлялись у нас на форуме или хотя бы в этой теме.
Как можно надеяться получить напряжение 5.0V после линейного стабилизатора (пусть даже с малым падением напряжения как LM/LD/IL/AMS/AM1117 -5.0V ) подавая на него 3.7 от PowerBank или 5 вольт от USB? [spoiler title=Да, без колдовства тут не обойтись.]
AMS1117-5_0.png
[/spoiler] :yes:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
nikolyalomaev
Рядовой
Сообщения: 22
Зарегистрирован: 07 янв 2018, 19:51
Откуда: Ижевск
Имя: Николай
Поблагодарили: 1 раз

Микросхема TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение nikolyalomaev »

Labu559 писал(а): 26 фев 2019, 10:41Ожидал, что Вы сами исправите свою ошибку и напишете об этом. Напрасно
Добрый вечер!
А вот проблема появившаяся у меня ранее пропала сама собой, не чего не менял, теперь работает отлично, что от 5в что от 3.3в.
Спасибо за отличный блок, то что мне нужно было, пользуюсь регулярно, даже заказал микрухи как у вас в корпусе дип 20:)
MaksVish
Рядовой
Сообщения: 91
Зарегистрирован: 14 июл 2018, 19:09
Имя: Максим

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение MaksVish »

Три дня читаю форум про идикатор на микросхеме ТМ1637 у меня 4х разрядный индикатор!. Заработал только один блок! TM1637DIG4BETA6 - но он пропускает многие символы, можете подсказать как заставить работать самый свежий блок!?- TM1637LABUW9. Если вопрос не по теме, пожалуйста направьте в нужный раздел!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

MaksVish писал(а): 28 фев 2021, 22:52 Три дня читаю форум про идикатор на микросхеме ТМ1637 у меня 4х разрядный индикатор можете подсказать как заставить работать самый свежий блок!?- TM1637LABUW9. Если вопрос не по теме, пожалуйста направьте в нужный раздел!
Нет, вопрос как раз по месту. Ответ: Осталось самая малость, - прочитать неспеша описание в самом блоке TM1637LabUW9!
Hold .................... Фиксация последних показаний дисплея - HIGH- активация
Это аналогия кнопки Hold на мультиметре/токоизмерительных клещах и т.д. в переводе с английского- удержание, не путать с Enable (En)! Это потому, что блок TM1637LabUW9 не выключается ВЫСОКИМ уровнем (True) на входе Hold, а лишь замораживает дисплей, а функция сканирования кнопок продолжает работать (опция). У себя в проекте поставте на Hold низкий уровень (false)- другими словами дезактивируйте удержание, Вы зафиксировали пустой дисплей при инициализации!
Проверьте конденсаторы на модуле (подробности в шапке темы).
Удачи!
Последний раз редактировалось Labu559 03 мар 2021, 02:50, всего редактировалось 3 раза.
MaksVish
Рядовой
Сообщения: 91
Зарегистрирован: 14 июл 2018, 19:09
Имя: Максим

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение MaksVish »

С надеждой включил на Hold - переменную falce, 1234 - так и не появилось... Этот же дисплей с этими же пинами но с другим блоком пользователя (TM1637DIG4BETA6) работает....
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

MaksVish писал(а): 28 фев 2021, 23:51 С надеждой включил на Hold - переменную falce, 1234 - так и не появилось... Этот же дисплей с этими же пинами но с другим блоком пользователя (TM1637DIG4BETA6) работает....
Одной надежды мало, а мне очевидно с экстрасенсорными способностями не повезло. :smile37: Может у Вас получиться, как в алгебре "пойти от обратного"?
[spoiler title= Что у меня не такое, как у Вас?]
IMG_20210228_234116.jpg
IMG_20210228_235627.jpg
[/spoiler]
Посмотрите пж. в личный раздел!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu559 01 мар 2021, 00:57, всего редактировалось 2 раза.
MaksVish
Рядовой
Сообщения: 91
Зарегистрирован: 14 июл 2018, 19:09
Имя: Максим

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение MaksVish »

Ничего не понимаю... может надо попробовать снести и изначально установить библиотеку...

Отправлено спустя 11 минут 51 секунду:
аа, у меня такая!

Отправлено спустя 15 минут 38 секунд:
Переустановил библиотеку - не помогло
Всем соискателям, у кого не работает обсуждаемый блок, обратите внимание на конденсаторы!
Без конденсаторов мой модуль отлично работает! Всем спасибо!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось MaksVish 02 мар 2021, 20:28, всего редактировалось 1 раз.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

MaksVish писал(а): 01 мар 2021, 01:05 Ничего не понимаю... может надо попробовать снести и изначально установить библиотеку...

Отправлено спустя 11 минут 51 секунду:
аа, у меня такая!
Ув. Максим, сколько раз я Вас спросил об конденсаторах? Сколько раз в сообщениях этой темы, они упоминаются. Как мне правильно оформить описания, что-бы люди их прочитали, какой цвет выделения важного текста или участка фотографии привлекает внимание читающих, как можно убедить людей прочитать личные сообщения?
Всем доброй ночи, утро вечера мудреннее!
Последний раз редактировалось Labu559 01 мар 2021, 01:32, всего редактировалось 1 раз.
MaksVish
Рядовой
Сообщения: 91
Зарегистрирован: 14 июл 2018, 19:09
Имя: Максим

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение MaksVish »

Попробовать найти и выпаять с4 и с3?

Отправлено спустя 20 минут 20 секунд:
Огромное спасибо! Вы не представляете как сегодня намучался! Даже не знаю почему на это не обратил внимание! Выпаял конденсаторы и тут же заработало!
Последний раз редактировалось MaksVish 02 мар 2021, 21:14, всего редактировалось 2 раза.
Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19 дек 2020, 23:57
Имя: Alex

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Qwert855 »

Добрый день.
Кто то запускал блок версии "финальная 9" на esp 01s?
Ранние версия 6 работала на пинах 1-3.
Но вылезли конфликты с другим ПБ приводящие к неработоспособности дисплея на esp01s и некорректной рабете другого блока с включением дисплея на esp d1 mini.

9ю так и не запустил esp 1s
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

Ребята, прошу Вас без обид! Ну выкладывайте хоть какую либо информацио для решения проблем сугубо Вашего применения. Не знаете что нужно? Ответ- всё, что имеется, конкретно в Правилах форума описано. Ну ведь правда не экстрасенс, как мне узнать, то что известно Вам? В шапке выложена вся информация о блоке, и как оно работает. Если оно работает на ESP8266 NODE MCU0.9 то узнайте на каких выводах ЕСП присутствует отладочная информация при запуске (некоторые говорят мусор), из-за которой плохеет внешнему оборудованию, совмещены флэш, светодиод, подтяжка для типа загрузки. Нет у меня ESP01 и не будет никогда этого огрызка- это мост и ничего более, не наделяйте его супервозможностями... ну и меня тоже. :) Я не против помощи, если присутствует техническая информация для анализа, а пока- это светская беседа и нарушения Правил форума.
Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19 дек 2020, 23:57
Имя: Alex

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Qwert855 »

добрый день.
выкладывать блоки версии 6 думаю лишне.
Есть ESP 01s, есть блок версии 6 подключен на 1й и 3й пин, было счастье, все работало.

Появляется необходимость уйти от статических IP адресов на динамические добавив блок обмена данных, который вынес работу блока дисплея вер 6 на ESP-01S (при этом сам блок обмена данными остается рабочим, просто глушит дисплей).

Решено применить блок дисплея версии 9, он отказался работать на ESP-01S, заменил контроллер на D1 mini - дисплей заработал на пинах D7 и D6 с блоком обмена данными в проекте , но при этом частично отрубил этот блок, а именно отправку данных. превращая его в односторонний прием.

И вот ситуация
есть блок двухстороннего обмена по мак адресу
есть два блока дисплея (6 и 9 версии)
есть два контроллера ESP 1s и D1 mini
есть клиентское сетевое подключение на динамическом IP адресе
есть трудности с совместимостью :smile44:

блок обмена данных с этой ветки
viewtopic.php?f=112&t=6595
Аватара пользователя
Phazz
Полковник
Сообщения: 3121
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 233 раза
Поблагодарили: 114 раз

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Phazz »

[ref]Labu559[/ref], Подскажите пожалуйста, у меня модуль с двоеточием, как мне включить точки?
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

Phazz писал(а): 02 мар 2021, 22:07 [ref]Labu559[/ref], Подскажите пожалуйста, у меня модуль с двоеточием, как мне включить точки?
Анатолий, двоеточие в часовом индикаторе (в железе) выведено на второе слева знакоместо ( т.е соответствует точке между часами и минутами) Смотрите пж. пример
Clock_TM1637Lab_UW.flp
Успехов!

Отправлено спустя 3 часа 16 минут 51 секунду:
Qwert855 писал(а): 02 мар 2021, 14:10 Есть ESP 01s, есть блок версии 6 подключен на 1й и 3й пин, было счастье, все работало.
Qwert855 писал(а): 02 мар 2021, 14:10 добавив блок обмена данных, который вынес работу блока дисплея вер 6 на ESP-01S
Традиционно для этого форума: Ваш проект у меня не открылся, скетч тоже, кофейная гуща спасла ситуацию :) .
Чтобы Вас правильно понимали собеседники, а микроконтроллер Ваш код постарайтесь применять общепринятые обозначения: у ESP-01/01S pin1- GND, pin3- GPIO2. Если я правильно понял, Вы имели ввиду GPIO1 и GPIO3 которые к тому-же TX0/RX0?
Блок обмена испортил работу системы, а причину ищем в блоках ТМ1637 ? Интересный подход.
[spoiler title=Для чего и кому я писал сообщение №33? ]
ESP01_ESP01S.jpg
Цитата: В процессе загрузки модуль ESP8266 через UART TX-GPIO1/RX-GPIO3 пытается автоматически определить скорость подключения устройства-партнёра и установить у себя такую-же. Во время этого пару раз мигает синий светодиод- индикатор передачи данных от модуля к терминалу. У модуля ESP8266 есть также второй последовательный порт. Главное его назначение - вывод диагностической и отладочной информации. Пин Tx второго последовательного порта мультиплексирован с пином GPIO2.
При старте прошивки, UART модуля ESP8266 выдает в UART отладочную информацию на скорости 74 880 baud, затем переключает скорость порта на 9600, 57600, 115200 в зависимости от версии прошивки...
[/spoiler]
Если МК общается с периферией на определённых линиях связи и в их "разговор" вклинивается передача для другого устройства, которого там нет и не должно быть, то данные будут испорчены, протокол нарушен, устройсво (особенно I2C где каждый ногодрыг что-то да значит) может войти в режим ожидания завершения/продолжения/прекращения/рестарта сессии. Иногда ув. Авторы Сopy/Past-ят всё подряд из демо-примеров из библиотек в свои блоки забывая/по недосмотру или не особо разобравшись delay() в Loop() порой по несколько секуд, и/или [spoiler title= вывод в UART (Serial.print)]
Serial.png
[/spoiler] хотя последнее нужно делать снаружи и т.д. Об этом неоднократно писал в своих темах ув.[ref]ecoins[/ref]. Вы похоже не новичок, и думаю для Вас не будет проблемой "связать концы с концами" и впредь проверять скомпилированные скетчи своих проектов на наличие описанного. Надеюсь объяснил понятно. Частично потому у меня на компе нет проектов в ФЛПрог после её "убийственных" обновлений, ни сторонних блоков и скетчей и стараюсь избавляться от библиотек после их изучения, но это у же личные предпочтения и негативный опыт. Желаю удачи!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Qwert855
Сержант
Сообщения: 159
Зарегистрирован: 19 дек 2020, 23:57
Имя: Alex

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Qwert855 »

[ref]Labu559[/ref],
Спасибо.
Связь указанная выше очевидна. думаю это уже творческий кризис :smile44:
пора отдохнуть от WIFI и сделать наливатор.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

Qwert855 писал(а): 03 мар 2021, 12:06 [ref]Labu559[/ref],
Спасибо.
Связь указанная выше очевидна...
Спасибо и Вам за участие. Приятно, если время на разъяснения не потрачено зря и приносит пользу, а не обвинения в написании, цитирую, "ненужных рефератов".
Всем Успехов, а Вам к наливатору- скатерть самобранку, может кто-то возмётся за разработку пользовательского блока накануне мирового праздника! :smile38:
AndrejK
Сержант
Сообщения: 120
Зарегистрирован: 20 фев 2020, 13:16
Откуда: Вильнюс
Имя: Андрей

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение AndrejK »

За блок Спасибо. Перешел на него с библиотеки AlexGyver. Скорострельность данного 1,6 мс, против 2,35 мс AlexGyver.
Labu559
Лейтенант
Сообщения: 359
Зарегистрирован: 25 янв 2018, 22:23
Откуда: Bukovyna
Имя: Василий

TM1637 -драйвер LED, 7-сег. дисплеев и клавиатуры 2х8

Сообщение Labu559 »

AndrejK писал(а): 06 мар 2021, 07:30 Скорострельность данного 1,6 мс, против 2,35 мс AlexGyver.
Спасибо за публикацию тех. результата тестирования блока/библиотеки. Эта библиотека- результат, на мой взгляд ненужного, вынужденого компромиса с целью объединения совершенно отличных архитектур МК под Ардуиновские методы. Совершенно очевидным для меня есть безполезность попыток убедить сообщество этого форума в том что (аллегория) в мечети уместен Коран, в церкви- Библия, но не Тора, или Трипитака. Попытка впихнуть всё в одну кучу приводит к протипоположному результату- ничего не работает как положено. Есть на стадии тестирования Wiring библиотека версии 9.06, побыстрее той что в шапке темы, с оптимизированным сканированием клавиатуры и проверена пока только на АВР-ках[spoiler title= результаты тестов библиотеки beta v9.06]
Wiring_displayString_Function.png
Wiring_scanKeys_Function.png
[/spoiler]А вот так выглядит [spoiler title= работа библиотеки на Си с модулем ТМ1637 для AVR]
LogicAnalyzerTM1637.png
[/spoiler] для сравнения. Здесь команда (1байт данных или 10 ногодрыгов) передается/принимается за 29 uSec (микросекунд), полная загрузка регистров данными дисплея (команда и 6-байт данных) за 179 uSec (напротив 1424 uSec в Wiring версии), сканирование клавиатуры за 187 uSec (напротив 423 uSec в Wiring версии). Увы такова цена универсальности, не особо помогла даже вставка на АСМ. Также на рисунках хорошо видны переключения драйвера/выбросы длинной в ~80 nSec, не приводящие к потере или искажению данных на модуле без конденсаторов. Потому производитель и рекоммендует устанавливать на интерфейсных линиях конденсаторы емкостью 100 pF для сглаживания, но не как у китайских модулях- 12 nF. Также декодер анализатора демонстрирует почти полную схожесть интерфейса драйвера ТМ1637 и I2C протокола.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Ответить

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

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

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