Страница 1 из 2
TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 23 янв 2025, 22:09
o1eg
Приветствую форумчане! хочу представить вам на тестирование блок TM1637_New. Он предназначен для работы с 4-6 разрядным 7-сегментным дисплеем на основе микросхемы TM1637, с использованием библиотеки
TM1637_New. Библиотека написана с нуля, так как ни одна из найденных толком не работали... Блок предоставляет удобные функции для отображения целых и дробных чисел, а также позволяет настраивать яркость дисплея. Основное применение — отображение значений в различных проектах, например, датчиков, счётчиков или пользовательских интерфейсов.
TM1637_New (библиотека):
Управляет 7-сегментным дисплеем через два пина
CLK и
DIO (настраиваются в блоке).
Поддерживает отображение:
Целых чисел (displayInt()), включая отрицательные.
Дробных чисел (displayFloat()), с одной десятичной точкой, включая отрицательные.
Поддержка "char" и "string" для блоков с текстом и текстом с цифрами.
Функции управления яркостью дисплея (setBrightness()).
Возможность напрямую отображать сегменты (displayRaw()).
Инициализирует дисплей, задаёт яркость и начальное значение.
Обновляет отображение через заданное время, которое реализовано на
millis, а не на delay!
Может на лету переключается между режимами отображения
дробных и
целых чисел.
Библиотека и блоки в архиве!
UPD:
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 07:18
montirovka
А с шести разрядным будет работать?
Допускается ли работа с 2-3 блоками?
2025-01-24_07-16-35.png
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 08:38
tema
А можно добавить string?
спс.
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 10:57
montirovka
При компиляции проекта с блоком TM1637 ошибка.
error.png
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 14:00
stypler
А где температура на схеме?
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 15:06
montirovka
stypler писал(а): 24 янв 2025, 14:00
А где температура на схеме?
Проект для примера Забыл температуру убрать. В данное время шибер работает по разряжению в котле.
Ошибка на плате 4. 4 плату удаляю нет ошибки.
Тест_1367_1.jpg
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 16:52
o1eg
montirovka писал(а): 24 янв 2025, 07:18
А с шести разрядным будет работать?
Допускается ли работа с 2-3 блоками?
2025-01-24_07-16-35.png
Этот вариант библиотеки рассчитан на 4-разрядный модуль (как видно по массиву segments[4] и индексам от 0 до 3). Для работы с 6-разрядным модулем потребуется небольшая модификация: (uint8_t segments[6] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00};) если потребуется дописать не трудно, просто в наличии нет такого модуля. Закажу с али и потестирую! И, ДА, моя ошибка, сделал блок который можно использовать только один раз (уже ИСПРАВЛЕНО!).
montirovka писал(а): 24 янв 2025, 15:06
Ошибка на плате 4. 4 плату удаляю нет ошибки.
Возможно из за того, что переменные в блоке использовались не "уникальные".. В новой редакции блока исправлено, теперь блок можно использовать не один раз и шанс, что переменные пересекутся в минимален!
Дополнения!!! в новой редакции библиотеки реализовано использование до 3 разрядов после запятой!
В настройках блока задаём количество разрядов после запятой!
Обновить библиотеку и блок ОБЯЗАТЕЛЬНО!!!

Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 17:08
o1eg
montirovka писал(а): 24 янв 2025, 15:06
stypler писал(а): 24 янв 2025, 14:00
А где температура на схеме?
Проект для примера Забыл температуру убрать. В данное время шибер работает по разряжению в котле.
Ошибка на плате 4. 4 плату удаляю нет ошибки.
Тест_1367_1.jpg
Обновите блок и библиотеку! ваш файл проверил - компилируется!
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 24 янв 2025, 19:42
montirovka
Проверил компилируется. Так как платы ТМ1637 нет, проверить полностью нет возможности. У каких то версий блоков ТМ1637 была проблема с работой с блоком энкодера, как у меня в проекте. Энкодер переставал работать. Завтра еще потестирую.
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 25 янв 2025, 12:16
Astreet
Требует библиотеку...
Снимок экрана 2025-01-25 121435.jpg
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 25 янв 2025, 14:58
montirovka
Astreet писал(а): 25 янв 2025, 12:16
Требует библиотеку...
Снимок экрана 2025-01-25 121435.jpg
Возьмите и добавьте у себя в Arduino IDE библиотеку.
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 25 янв 2025, 16:11
Astreet
montirovka писал(а): 25 янв 2025, 14:58
Astreet писал(а): 25 янв 2025, 12:16
Требует библиотеку...
Снимок экрана 2025-01-25 121435.jpg
Возьмите и добавьте у себя в Arduino IDE библиотеку.
Мой недочет. Я почему-то решил, что это относится к модулю 1637....
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 26 янв 2025, 12:41
Astreet
Вроде запустил... Проект от Сергея
montirovka с небольшими доработками...
Видео WhatsApp 2025-01-26 в 12.38.08_04fac8b8.mp4
[
Проверка шаговика_энкодер_ТМ1637 BIG.flp
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 28 янв 2025, 21:13
o1eg
Штош, пришло время небольшого обновления! теперь наш "рисовый" TM1637 может переваривать символы(char, string). В библиотеку добавлена функция (void TM1637_New::displayString(const char *str)), массив на 37 символов, 10 цифр, остальное буквы + "пробел". Некоторые символы (W,X,Z,M) будут отображаться не совсем корректно из за особенностей семисигментного индикатора.
Блок TM1637_N_Char представляет собой код для объединения на одном экране цифр, например с датчика, и единичных символов(char). "prefixLetter" определяет символ до числа, "suffixLetter" - после него, разумеется можно ставить пробел! Параметр "isFloatMode" всё так же будет определять целое число или с дробное. количество знаков после запятой так же настраивается, но пока ограничено двумя!
Блок TM1637_N_String - код для вывода текстовых сообщений, таких как состояние устройства ("ON", "OFF").
Системых уведомлений: Краткие сообщения об ошибках, статусах, или значениях ("ERR", "TEST" "HELP" и пр.)
Пока всё ограничивается размера дисплея 4 разряда... Ждём 6 разрядный!
Для использования блоков ОБНОВЛЕНИЕ библиотеки ОБЯЗАТЕЛЬНО!
Обновление касается только новых блоков, впрочем, старый(TM1637_New) с ним тоже будет прекрасно работать!
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 28 янв 2025, 21:24
o1eg
tema писал(а): 24 янв 2025, 08:38
А можно добавить string?
спс.
Дааа, почему бы и нет?
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 29 янв 2025, 04:10
shpuntic48
При компиляции ошибочка
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 29 янв 2025, 07:04
montirovka
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 29 янв 2025, 09:03
aidar_i
montirovka писал(а): 29 янв 2025, 07:04
Та же ошибка.
hata.jpg
У Вас стоит старая библиотека, установите новую от автора блоков.
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 29 янв 2025, 09:20
montirovka
Получилось. Спасибо.
Re: TM1637 - целые и дробные числа, включая отрицательные!
Добавлено: 20 фев 2025, 13:43
o1eg
Дописал наконец библиотеку под дисплей Tm1637! Добавлены функции очистки дисплея "
displayClear()" и отображения времени "
displayClock". Самое главное - теперь можно работать с 6 разрядным дисплеем, за это отвечает флаг "
isSixDigit"
Добавлены два блока: "blink" - для мигания текста и "tmclock" для отображения времени с... чего бы то ни было.
Для работы библиотеки и блоков всё также необходимо
ОБНОВИТЬ библиотеку и блоки!
Блоки создавались в программе
FLPROG 7.3.0 - поэтому использование более ранних версий программы не гарантирует их работу!
Предложений по усовершенствованию библиотеки или блоков больше не было, да и потестить успел в нескольких работах, поэтому проект можно считать успешно завершённым а версию библиотеки финальной!