4-digit display
4-digit display
[ref]Golan[/ref], в основном блоки в разделе "пользовательские блоки" и так залиты на этот сервер.
а в обсуждениях это уже кому как удобно.
а в обсуждениях это уже кому как удобно.
- Golan
- Капитан
- Сообщения: 827
- Зарегистрирован: 26 ноя 2017, 23:18
- Откуда: Деревня, 98 домов в Мордовии
- Имя: Владимир
- Контактная информация:
4-digit display
Вот в этом и бардак.
Я бы делал так, блок пользователя (автора) лежит в соответствующем разделе, если где то он обсуждается, наверняка же с автором (доделать либо переделать, либо еще чего) в теме дается ссылка на блок который уже лежит в разделе "Блоках пользователей", если он обновляется, то обновлять его там и подписывать дату обновления либо там что изменено, естественно в таком случае нужно редактирование поста автором.
А сейчас получается, блок в разделе лежит, а в теме с ним делают какие либо действия и ссылки на скачивание, с яндексов, облаков и т.п.
Если я скачал с раздела, а потом еще и с темы, сиди и думай что с блоком произошло и какой последний.
Ну конечно это мое мнение, во всяком случае у меня на форуме так организовано, все решили скопом, сейчас даже искать ничего не нужно, все в одном месте.
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Добро не ценится в современном мире, люди от него наглеют!
4-digit display
ну а как иначе. блок под все нужды предусмотреть не возможно.
у кого то дисплей чуть другой, или какие то особые функции от него нужны.
блоки в свободном доступе, и каждый делает с ними что хочет.
у кого то дисплей чуть другой, или какие то особые функции от него нужны.
блоки в свободном доступе, и каждый делает с ними что хочет.
- Phazz
- Полковник
- Сообщения: 3150
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 236 раз
- Поблагодарили: 118 раз
4-digit display
[ref=#ff8040]pan[/ref], Дело в том, что вот этого блока нет в разделе пользовательских блоков. Автор его выложил только в этой теме и после переезда не появлялся здесь. А его блок единственный который нормально работает.
4-digit display
Потому как блок в стадии разработки, так как не имею возможности самостоятельно протестировать его со всеми схемотехническими разновидностями от производителей Catalex, Robotdyn, Thema, Eyewink (наверняка можно продлить список) и их модифицированными версиями.
Спасибо, а Вы единственный, кто отписался о результатах теста не смотря на более 9 000 просмотров этой темы.
Логично предполагать, что номер версии в названии, описание в сообщении где выложен блок и хронология сообщений в теме именно это и указывают. См.выше.Golan писал(а): 21 янв 2018, 19:29Если я скачал с раздела, а потом еще и с темы, сиди и думай что с блоком произошло и какой последний
На старом форуме сделать это было невозможно по прошествии некоторого времени или после следующего сообщения. Потому начал публиковать ссылку на файл GoogleDisc, где возможно редактирование в любое время без накрутки ненужных сообщений на форуме.
Разделяю Ваше возмущение, но многие считают, что делают хорошо выкладывая чужие блоки без короткого описания найденых недостатков, рекомендаций или других результатов собственного применения, вместо ссылки на авторский пост с описанием. Да и публикация Вашего опыта отGolan писал(а): 21 янв 2018, 18:57 с ума можно спрыгнуть, я сегодня только ТМ-ов скачал, штук десять, теперь сижу фильтрую
была бы предпочтительней для пользователей (на мой взгляд) вместо высказанного возмущения. А так "Спасение утопающего- ...".
Закрыл доступ на время проверки сообщения о неработоспособности блока, что оказалось недостоверным. Представляю что было-бы, если бы выложил версию с прямым доступом к портам.

Надеюсь ответил на все вопросы относительно моих блоков и своих действий с ними не нарушая Правил форума. Спасибо.
- Phazz
- Полковник
- Сообщения: 3150
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 236 раз
- Поблагодарили: 118 раз
4-digit display
[ref]Labu559[/ref], я переделал Ваш блок под 6 знаков для [ref]Александр_Светлый[/ref], если Вы против, то удалю с форума http://forum.flprog.ru/download/file.php?id=8363 кстати пришлось менять сортировку, знаки были перепутаны.
4-digit display
Наоборот, рад что есть какая-то польза.
Знаки как и сегменты перепутаны производителями модулей с целью оптимизации разводки печатки, а отечественными производителями с целью недопущения применения ихних "титанических трудов"- библиотек покупателями модулей других производителей (конкуренция

Последний раз редактировалось Labu559 01 янв 2021, 21:07, всего редактировалось 1 раз.
- Phazz
- Полковник
- Сообщения: 3150
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 236 раз
- Поблагодарили: 118 раз
4-digit display
[ref=#ff8000]pan[/ref], Блок не мой, я просто немного изменил его. Я не думаю, что в праве выкладывать от своего имени.
[ref]Labu559[/ref], может Вы разместите свой блок в отдельно в ветке разработки, а свою модификацию уже туда добавлю.
[ref]Labu559[/ref], может Вы разместите свой блок в отдельно в ветке разработки, а свою модификацию уже туда добавлю.
4-digit display
экран как в 1 посту
дою на вход константой "1234" не выводит ничего(двоеточие на 2 входе работает)
даю через блок суммирования на 4 строки с констрантами 1, 2, 3, 4 - виводит 123 в 2,3 и 4 ячейках
даю через блок суммирования на 5 строк с констрантами 1, 2, 3, 4, 5 - виводит 1234 в 1,2,3 и 4 ячейках
странная работа..
сделал через блок от [ref=#ff8000]pan[/ref] на библиотекеTM1637m1 , работает отлично. и перепробовал пины - 2 и 3, 6 и 7, 11 и 12 - все работает нормально
- Phazz
- Полковник
- Сообщения: 3150
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 236 раз
- Поблагодарили: 118 раз
4-digit display
[ref]dizzyy[/ref], модули разведены на плате по разному, поэтому у всех работают разные ПБ.
-
- Лейтенант
- Сообщения: 516
- Зарегистрирован: 25 фев 2018, 08:48
- Откуда: Оренбург
- Имя: Александр
Датчики DS18B20 на шине 1-Wire (upd 27.12.2017)
ТМ1637+DS18B20=КРИВИЗНА.Прошу помочь в реализации вывода температуры на ТМ1637. Казалось все просто, но не совсем.
Посмотрите на фото, на кривизну отображения, при этом на ЖК все нормально показывает.
Видимо блок тм1637 некорректно выводит. Может у кого то есть рабочий блок ?
Программулину не прикладываю т.к. там всего 3 блока.
Посмотрите на фото, на кривизну отображения, при этом на ЖК все нормально показывает.
Видимо блок тм1637 некорректно выводит. Может у кого то есть рабочий блок ?
Программулину не прикладываю т.к. там всего 3 блока.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
4-digit display
[spoiler title= Можно не читать,- сентенции]
Конкретно в Вашем случае "виноват" разделитель (дробный/часовой) разрядов, который должен быть изъят из значения температуры и отправлен на соответствующий номер входа ПБ ТМ1637, в даном случае (часовой дисплей) на Dp2. Из-за отсутствия десятичных точек (она бы светилась будь в наличии) на Вашем 7-сег. индикаторе, есть пустое знакоместо (на LCD-1602 тоже точка в отдельном знакоместе), что есть отдельным символом (знаком, char-ом) данных класса String.
А вот Вам готовое решение - ПБлок для анализа Строк. Читаем описание в блоке и см. рисунок. Проект не выкладываю- там кроме этого блока два штатных FLProg3.1.2 и засекреченный ТМ1637D4b6, не понятно чей, мой или ... В моём блоке [spoiler title= Дисплее с десятичными точками (не часовом как у Вас)] [/spoiler]просто уберётся знакоместо где должна быть точка, а точка присоединится к предыдущей ( старшей) цифре/знаку.
[spoiler title=Рисунок] [/spoiler]
Не прикладывайте, не читайте, не отписывайтесь в соответствующей ветке с ТМ1637 и не отвечайте на вопросы когда Вам пытаются помочь, не сообщайте кто редактировал изначально мой блок ТМ1637D4_b6, который был рабочий, не сверяйте распиновку микросхемы в модуле. Придут экстрасенсы и это всё им не понадобится. Что-же:KulibinOrsk писал(а): 24 июл 2018, 14:46Видимо блок тм1637 некорректно выводит. Может у кого то есть рабочий блок ?
Программулину не прикладываю т.к. там всего 3 блока.
[/spoiler]KulibinOrsk писал(а): 24 апр 2018, 08:26Будем ждать пока кто-либо сможет скорректировать программу...
Конкретно в Вашем случае "виноват" разделитель (дробный/часовой) разрядов, который должен быть изъят из значения температуры и отправлен на соответствующий номер входа ПБ ТМ1637, в даном случае (часовой дисплей) на Dp2. Из-за отсутствия десятичных точек (она бы светилась будь в наличии) на Вашем 7-сег. индикаторе, есть пустое знакоместо (на LCD-1602 тоже точка в отдельном знакоместе), что есть отдельным символом (знаком, char-ом) данных класса String.
А вот Вам готовое решение - ПБлок для анализа Строк. Читаем описание в блоке и см. рисунок. Проект не выкладываю- там кроме этого блока два штатных FLProg3.1.2 и засекреченный ТМ1637D4b6, не понятно чей, мой или ... В моём блоке [spoiler title= Дисплее с десятичными точками (не часовом как у Вас)] [/spoiler]просто уберётся знакоместо где должна быть точка, а точка присоединится к предыдущей ( старшей) цифре/знаку.
[spoiler title=Рисунок] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось Labu559 22 июл 2020, 11:13, всего редактировалось 5 раз.
-
- Лейтенант
- Сообщения: 516
- Зарегистрирован: 25 фев 2018, 08:48
- Откуда: Оренбург
- Имя: Александр
Датчики DS18B20 на шине 1-Wire (upd 27.12.2017)
[ref]Labu559[/ref], не будьте столь категоричны. Это проблема всех форумов когда много информации и не всегда получается узреть видимое.
Вот вы подсказали и БЛАГОДАРНОСТЬ ВАМ за это. Но это не значит, что надо "нас" пинать ногами в живот и бить в нос. Иначе подсказывать некому будет, всех перебьют.
Хотя вот читаю и те ветки и там мешанина полная. Не понять что где есть. В общем буду пробовать все подряд, ибо нет четкого определения какой блок как работает. Или может нужно было полный набор блоков выложить в одном месте.
Отправлено спустя 15 минут 31 секунду:
Перебрал я те модули что по ссылкам. Там для часов, для вывода отдельных символов. Остается только экспериментировать и пробовать, авось что то подойдет.
Суть обращения была: у меня датчик такой то, индикатор такой то. Кто может подсказать какой блок использовать.
Итог: меня послали " в ветку" где проблема обсуждалась, но характер проблемы немного не тот, там собрано всесторонне.
Ну и как итог - придется перебирать.
Я для того и обратился, чтобы упростить варианты и сократить время поиска, а если следовать по ходу мыслей посылающих то я должен был перерыть весь форум, раскопать, прояснить и уяснить. Ладно хоть не отправили на ассемблере писать код самого. И то хорошо
Вот вы подсказали и БЛАГОДАРНОСТЬ ВАМ за это. Но это не значит, что надо "нас" пинать ногами в живот и бить в нос. Иначе подсказывать некому будет, всех перебьют.
Хотя вот читаю и те ветки и там мешанина полная. Не понять что где есть. В общем буду пробовать все подряд, ибо нет четкого определения какой блок как работает. Или может нужно было полный набор блоков выложить в одном месте.
Отправлено спустя 15 минут 31 секунду:
Перебрал я те модули что по ссылкам. Там для часов, для вывода отдельных символов. Остается только экспериментировать и пробовать, авось что то подойдет.
Суть обращения была: у меня датчик такой то, индикатор такой то. Кто может подсказать какой блок использовать.
Итог: меня послали " в ветку" где проблема обсуждалась, но характер проблемы немного не тот, там собрано всесторонне.
Ну и как итог - придется перебирать.
Я для того и обратился, чтобы упростить варианты и сократить время поиска, а если следовать по ходу мыслей посылающих то я должен был перерыть весь форум, раскопать, прояснить и уяснить. Ладно хоть не отправили на ассемблере писать код самого. И то хорошо
4-digit display
Если следовать правилам форума- ни Вы, ни Вам никто ничего не должен. Если следовать здравой логике, то "раскопать, прояснить, и уяснить"- это что-то похожее на [spoiler title= под спойлером, ниже] [/spoiler]KulibinOrsk писал(а): 24 июл 2018, 18:28если следовать по ходу мыслей посылающих то я должен был перерыть весь форум, раскопать, прояснить и уяснить
а не взять готовое, не разобравшись, применить как бы как и обгадить (совершенно в другой теме), назвав это
Конечно есть- выбирайте любой из списка выше под спойлером, или любой ув. авторов Boroda или xtern- может разочарую Вас, но все они рабочие при правильном использовании.KulibinOrsk писал(а): 24 июл 2018, 14:46ТМ1637+DS18B20=КРИВИЗНА... Посмотрите на фото, на кривизну отображения, ...
Видимо блок тм1637 некорректно выводит. Может у кого то есть рабочий блок ?
Послесловие:
Спасибо всем скачавшим, принимавшим и не принимавших участия в обсуждении Пользовательских Блоков ТМ1637Dxbx. Ихняя поддержка окончена ввиду тупиковости концепции. Вот конечный результат моей работы.
Разрешите откланяться, желаю всем успехов в Ардуиностроении!
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Rovki
- Полковник
- Сообщения: 5740
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 69 раз
- Поблагодарили: 222 раза
- Контактная информация:
4-digit display
Не как не хотят работать блоки на ESP32 . Беру пример из библиотеки ардуино иде - все работает . В чем может быть дело , gpio правильно указал (22, 21)
Электронщик до мозга костей и не только
- Phazz
- Полковник
- Сообщения: 3150
- Зарегистрирован: 17 окт 2016, 15:38
- Откуда: Сургут
- Имя: Анатолий
- Благодарил (а): 236 раз
- Поблагодарили: 118 раз
- Rovki
- Полковник
- Сообщения: 5740
- Зарегистрирован: 22 апр 2016, 17:25
- Откуда: Чехов
- Имя: Анатолий
- Благодарил (а): 69 раз
- Поблагодарили: 222 раза
- Контактная информация:
4-digit display
В примере , который работает другая библиотека
вот скетч [spoiler]#include <Arduino.h>
#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 22
#define DIO 21
// The amount of time (in milliseconds) between tests
#define TEST_DELAY 2000
const uint8_t SEG_DONE[] = {
SEG_B | SEG_C | SEG_D | SEG_E | SEG_G, // d
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // O
SEG_C | SEG_E | SEG_G, // n
SEG_A | SEG_D | SEG_E | SEG_F | SEG_G // E
};
TM1637Display display(CLK, DIO);
void setup()
{
}
void loop()
{
int k;
uint8_t data[] = { 0xff, 0xff, 0xff, 0xff };
uint8_t blank[] = { 0x00, 0x00, 0x00, 0x00 };
display.setBrightness(0x0f);
// All segments on
display.setSegments(data);
delay(TEST_DELAY);
// Selectively set different digits
data[0] = display.encodeDigit(0);
data[1] = display.encodeDigit(1);
data[2] = display.encodeDigit(2);
data[3] = display.encodeDigit(3);
display.setSegments(data);
delay(TEST_DELAY);
/*
for(k = 3; k >= 0; k--) {
display.setSegments(data, 1, k);
delay(TEST_DELAY);
}
*/
display.clear();
display.setSegments(data+2, 2, 2);
delay(TEST_DELAY);
display.clear();
display.setSegments(data+2, 2, 1);
delay(TEST_DELAY);
display.clear();
display.setSegments(data+1, 3, 1);
delay(TEST_DELAY);
// Show decimal numbers with/without leading zeros
display.showNumberDec(0, false); // Expect: ___0
delay(TEST_DELAY);
display.showNumberDec(0, true); // Expect: 0000
delay(TEST_DELAY);
display.showNumberDec(1, false); // Expect: ___1
delay(TEST_DELAY);
display.showNumberDec(1, true); // Expect: 0001
delay(TEST_DELAY);
display.showNumberDec(301, false); // Expect: _301
delay(TEST_DELAY);
display.showNumberDec(301, true); // Expect: 0301
delay(TEST_DELAY);
display.clear();
display.showNumberDec(14, false, 2, 1); // Expect: _14_
delay(TEST_DELAY);
display.clear();
display.showNumberDec(4, true, 2, 2); // Expect: 04__
delay(TEST_DELAY);
display.showNumberDec(-1, false); // Expect: __-1
delay(TEST_DELAY);
display.showNumberDec(-12); // Expect: _-12
delay(TEST_DELAY);
display.showNumberDec(-999); // Expect: -999
delay(TEST_DELAY);
display.clear();
display.showNumberDec(-5, false, 3, 0); // Expect: _-5_
delay(TEST_DELAY);
display.showNumberHexEx(0xf1af); // Expect: f1Af
delay(TEST_DELAY);
display.showNumberHexEx(0x2c); // Expect: __2C
delay(TEST_DELAY);
display.showNumberHexEx(0xd1, 0, true); // Expect: 00d1
delay(TEST_DELAY);
display.clear();
display.showNumberHexEx(0xd1, 0, true, 2); // Expect: d1__
delay(TEST_DELAY);
// Run through all the dots
for(k=0; k <= 4; k++) {
display.showNumberDecEx(0, (0x80 >> k), true);
delay(TEST_DELAY);
}
// Brightness Test
for(k = 0; k < 4; k++)
data[k] = 0xff;
for(k = 0; k < 7; k++) {
display.setBrightness(k);
display.setSegments(data);
delay(TEST_DELAY);
}
// On/Off test
for(k = 0; k < 4; k++) {
display.setBrightness(7, false); // Turn off
display.setSegments(data);
delay(TEST_DELAY);
display.setBrightness(7, true); // Turn on
display.setSegments(data);
delay(TEST_DELAY);
}
// Done!
display.setSegments(SEG_DONE);
while(1);
}[/spoiler]
Отправлено спустя 1 минуту 55 секунд:
Сама бибка - https://github.com/avishorp/TM1637/blob ... 7Display.h
Отправлено спустя 7 минут 25 секунд:
Дисплей - https://aliexpress.ru/item/100500205935 ... 1585943248
Отправлено спустя 15 минут 11 секунд:
Подробно описан пример ,который работает- https://zen.yandex.ru/media/id/5ebd73d6 ... 03316af823
вот скетч [spoiler]#include <Arduino.h>
#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 22
#define DIO 21
// The amount of time (in milliseconds) between tests
#define TEST_DELAY 2000
const uint8_t SEG_DONE[] = {
SEG_B | SEG_C | SEG_D | SEG_E | SEG_G, // d
SEG_A | SEG_B | SEG_C | SEG_D | SEG_E | SEG_F, // O
SEG_C | SEG_E | SEG_G, // n
SEG_A | SEG_D | SEG_E | SEG_F | SEG_G // E
};
TM1637Display display(CLK, DIO);
void setup()
{
}
void loop()
{
int k;
uint8_t data[] = { 0xff, 0xff, 0xff, 0xff };
uint8_t blank[] = { 0x00, 0x00, 0x00, 0x00 };
display.setBrightness(0x0f);
// All segments on
display.setSegments(data);
delay(TEST_DELAY);
// Selectively set different digits
data[0] = display.encodeDigit(0);
data[1] = display.encodeDigit(1);
data[2] = display.encodeDigit(2);
data[3] = display.encodeDigit(3);
display.setSegments(data);
delay(TEST_DELAY);
/*
for(k = 3; k >= 0; k--) {
display.setSegments(data, 1, k);
delay(TEST_DELAY);
}
*/
display.clear();
display.setSegments(data+2, 2, 2);
delay(TEST_DELAY);
display.clear();
display.setSegments(data+2, 2, 1);
delay(TEST_DELAY);
display.clear();
display.setSegments(data+1, 3, 1);
delay(TEST_DELAY);
// Show decimal numbers with/without leading zeros
display.showNumberDec(0, false); // Expect: ___0
delay(TEST_DELAY);
display.showNumberDec(0, true); // Expect: 0000
delay(TEST_DELAY);
display.showNumberDec(1, false); // Expect: ___1
delay(TEST_DELAY);
display.showNumberDec(1, true); // Expect: 0001
delay(TEST_DELAY);
display.showNumberDec(301, false); // Expect: _301
delay(TEST_DELAY);
display.showNumberDec(301, true); // Expect: 0301
delay(TEST_DELAY);
display.clear();
display.showNumberDec(14, false, 2, 1); // Expect: _14_
delay(TEST_DELAY);
display.clear();
display.showNumberDec(4, true, 2, 2); // Expect: 04__
delay(TEST_DELAY);
display.showNumberDec(-1, false); // Expect: __-1
delay(TEST_DELAY);
display.showNumberDec(-12); // Expect: _-12
delay(TEST_DELAY);
display.showNumberDec(-999); // Expect: -999
delay(TEST_DELAY);
display.clear();
display.showNumberDec(-5, false, 3, 0); // Expect: _-5_
delay(TEST_DELAY);
display.showNumberHexEx(0xf1af); // Expect: f1Af
delay(TEST_DELAY);
display.showNumberHexEx(0x2c); // Expect: __2C
delay(TEST_DELAY);
display.showNumberHexEx(0xd1, 0, true); // Expect: 00d1
delay(TEST_DELAY);
display.clear();
display.showNumberHexEx(0xd1, 0, true, 2); // Expect: d1__
delay(TEST_DELAY);
// Run through all the dots
for(k=0; k <= 4; k++) {
display.showNumberDecEx(0, (0x80 >> k), true);
delay(TEST_DELAY);
}
// Brightness Test
for(k = 0; k < 4; k++)
data[k] = 0xff;
for(k = 0; k < 7; k++) {
display.setBrightness(k);
display.setSegments(data);
delay(TEST_DELAY);
}
// On/Off test
for(k = 0; k < 4; k++) {
display.setBrightness(7, false); // Turn off
display.setSegments(data);
delay(TEST_DELAY);
display.setBrightness(7, true); // Turn on
display.setSegments(data);
delay(TEST_DELAY);
}
// Done!
display.setSegments(SEG_DONE);
while(1);
}[/spoiler]
Отправлено спустя 1 минуту 55 секунд:
Сама бибка - https://github.com/avishorp/TM1637/blob ... 7Display.h
Отправлено спустя 7 минут 25 секунд:
Дисплей - https://aliexpress.ru/item/100500205935 ... 1585943248
Отправлено спустя 15 минут 11 секунд:
Подробно описан пример ,который работает- https://zen.yandex.ru/media/id/5ebd73d6 ... 03316af823
Электронщик до мозга костей и не только
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя