Не правильно отображаются данные на семисементном индикаторе

Использование дисплеев и обсуждение пользовательских блоков к ним
Ответить
DownHouse
Рядовой
Сообщения: 31
Зарегистрирован: 04 апр 2017, 14:07

Не правильно отображаются данные на семисементном индикаторе

Сообщение DownHouse »

Здравствуйте. Купил на Али вот такие индикаторы трехразрядные.
В FLprog создал проект с выводом температуры с датчика DS18B20 на этот индикатор и для контроля подключил дисплей 1602. Данные с датчика на индикатор выводятся не корректно.
Подскажите пож-ста, что я не так сделал.
Для наглядности приложил фото
[spoiler]
IMG_20240429_130206.jpg
[/spoiler]
Не пойму почему целая часть числа сдвинута. При этом десятые доли отображаются нормально.
Может блоки декодирования семисегментного индикатора и блок микросхемы 74HC595 нужно как то по друму между собой соединять.
Если в настройках блока конвертации из числа в строку установить число знаков после запятой равным Нулю, то данные на индикатор выводятся верно.
Т.е. если температура равна 20 градусам,то данные отображаются на двух крайних правых разрядах, а первый разряд остается пустым. Как только ставлю число знаков после запятой равное одному, то данные на индикаторе сдвигаются.
Может я что то с точками не так делаю.
Забыл сказать. что используется статический режим.
Прощу прощения, если это уже где-то обсуждалось, посмотрел бегло вроде не нашел.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Сержант
Сообщения: 296
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Поблагодарили: 2 раза

Не правильно отображаются данные на семисементном индикаторе

Сообщение montirovka »

Посмотрите вот этот пост. TM595
В примере есть пользовательский блок Parse String Dots. попробуйте его поставить перед TM74HC595 сразу на датчик температуры.
Люблю учиться на чужих ошибках.
DownHouse
Рядовой
Сообщения: 31
Зарегистрирован: 04 апр 2017, 14:07

Не правильно отображаются данные на семисементном индикаторе

Сообщение DownHouse »

Я что то не нашел этого блока. Там по ссылке только два архива, ни в одном из них пользовательских блок нет. Может не туда смотрю.
Аватара пользователя
montirovka
Сержант
Сообщения: 296
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Поблагодарили: 2 раза

Не правильно отображаются данные на семисементном индикаторе

Сообщение montirovka »

ошибочка вышла.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люблю учиться на чужих ошибках.
Аватара пользователя
ViktorPetrov
Капитан
Сообщения: 744
Зарегистрирован: 09 апр 2018, 23:56
Имя: Виктор
Благодарил (а): 2 раза

Не правильно отображаются данные на семисементном индикаторе

Сообщение ViktorPetrov »

Умножить температуру на х10 простое решение ,для индикатора нужно целое число.
Аватара пользователя
garikb
Сержант
Сообщения: 181
Зарегистрирован: 04 ноя 2015, 19:52
Откуда: Славянск
Имя: Игорь

Не правильно отображаются данные на семисементном индикаторе

Сообщение garikb »

DownHouse писал(а): 29 апр 2024, 19:04 Я что то не нашел этого блока
А в чем проблема вытащить из проекта?
4-bit_LED_Digital_Module_(Code_-_Basic).ubi
Извеняюсь не глянул название блока и скинул что в проекте по ссылке ( .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось garikb 29 апр 2024, 19:38, всего редактировалось 1 раз.
Аватара пользователя
montirovka
Сержант
Сообщения: 296
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Поблагодарили: 2 раза

Не правильно отображаются данные на семисементном индикаторе

Сообщение montirovka »

Люблю учиться на чужих ошибках.
asvhmao
Рядовой
Сообщения: 19
Зарегистрирован: 15 мар 2024, 00:10
Откуда: Краснодар
Имя: сергей

Не правильно отображаются данные на семисементном индикаторе

Сообщение asvhmao »

Проверить неначем, рисовал в 9 версии FLProg. Посмотри может заработает?
Как выше написали, где пустой символ, там запятая, но семисигментный декодер её не понимает.
Можно ещё добавить четвёртый (виртуальный) разряд на декодер, а на регистр подавать разряды 1,3,4, второй оставить в воздухе. Соответственно запятую ставить ручками, инверсией вывода точки.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
montirovka
Сержант
Сообщения: 296
Зарегистрирован: 15 фев 2021, 16:16
Откуда: Геленджик
Имя: Сергей
Поблагодарили: 2 раза

Не правильно отображаются данные на семисементном индикаторе

Сообщение montirovka »

В восьмой версии не открывается. Падает FLprog
Люблю учиться на чужих ошибках.
asvhmao
Рядовой
Сообщения: 19
Зарегистрирован: 15 мар 2024, 00:10
Откуда: Краснодар
Имя: сергей

Не правильно отображаются данные на семисементном индикаторе

Сообщение asvhmao »

Восьмая версия, но по второму варианту.

Отправлено спустя 26 минут 24 секунды:
Добавил вариант с умножением на 10. Восьмая версия программы.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
DownHouse
Рядовой
Сообщения: 31
Зарегистрирован: 04 апр 2017, 14:07

Не правильно отображаются данные на семисементном индикаторе

Сообщение DownHouse »

garikb писал(а): 29 апр 2024, 19:28
DownHouse писал(а): 29 апр 2024, 19:04 Я что то не нашел этого блока
А в чем проблема вытащить из проекта?
4-bit_LED_Digital_Module_(Code_-_Basic).ubi

Извеняюсь не глянул название блока и скинул что в проекте по ссылке ( .
Спасибо, не знал. Сохранил из скетча.

Отправлено спустя 5 минут 14 секунд:
asvhmao писал(а): 29 апр 2024, 19:51 Проверить неначем, рисовал в 9 версии FLProg. Посмотри может заработает?
Как выше написали, где пустой символ, там запятая, но семисигментный декодер её не понимает.
Можно ещё добавить четвёртый (виртуальный) разряд на декодер, а на регистр подавать разряды 1,3,4, второй оставить в воздухе. Соответственно запятую ставить ручками, инверсией вывода точки.
Скачал Ваш пример, но у меня только шестая версия. Не хочет открывать. Позже обновлюсь, попробую, если решения не найдется.

Отправлено спустя 3 минуты 4 секунды:
Заодно попутный вопрос - что в новых версиях помимо поддержки новых контроллеров? Стоит ли обновляться? Так то оно конечно не долго.

Отправлено спустя 19 минут 16 секунд:
Скачал проект по ссылке из этого поста viewtopic.php?f=45&t=9058&p=130225#p130219, так вот с тем блоком вроде заработало, т.е. сами числа выводятся правильно.Но вот осталось решить вопрос с разделительной точкой.
Там же (в проекте) используется блок "byte - bits" и "parseStr".
На вход блока "byte - bits" подается значение с выхода "dotsPos" блока "parseStr". Возможно это решение вопроса с точкой, но я не очень понял как это работает, потому что не очень понимаю какие данные появляются на выходах блока "byte-bits" и как их соединять с точками блока микросхемы HC595.

Отправлено спустя 5 минут 28 секунд:
Вот, что накидал.

Отправлено спустя 10 минут 28 секунд:
Возможно конечно в моем случае достаточно точку просто зажечь руками инвертировав значение нужной точки, но мало ли в будущем что то буду колхозить глядишь пригодится.
Да, забыл. Пробовал еще вариант с блоками, которые подстроки выдергивают из строки. Вытаскивал через один блок целое число с(в виде строки) а через второй блок десятичную часть и потом опять суммировал строки (наверное те еще костыли). Вроде тоже правильно отображает индикатор, но точку опять таки руками включать надо.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
asvhmao
Рядовой
Сообщения: 19
Зарегистрирован: 15 мар 2024, 00:10
Откуда: Краснодар
Имя: сергей

Не правильно отображаются данные на семисементном индикаторе

Сообщение asvhmao »

Много лишнего, мне так кажется. Так попробуй

.
Temper.jpg
.

Или так

.
Temper_2.jpg
.
Отправлено спустя 14 минут 16 секунд:
DownHouse писал(а): 29 апр 2024, 23:45 Заодно попутный вопрос - что в новых версиях помимо поддержки новых контроллеров? Стоит ли обновляться? Так то оно конечно не долго.
Сравнивать могу 8 и 9 версию и только с STM32F103. Опыта пользования программой меньше месяца. 9 тормозит больше, но исправлены и добавлены некоторые возможности, которые в 8 версии надо было руками дописывать.
Восьмая то версия точно будет получше шестой. Если есть возможность, то почему бы и не поставить.


Ещё добавлю

[spoiler]
Temper_3.jpg
IMG_20240430_020126.jpg
[/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось asvhmao 30 апр 2024, 01:59, всего редактировалось 2 раза.
Аватара пользователя
garikb
Сержант
Сообщения: 181
Зарегистрирован: 04 ноя 2015, 19:52
Откуда: Славянск
Имя: Игорь

Не правильно отображаются данные на семисементном индикаторе

Сообщение garikb »

DownHouse писал(а): 29 апр 2024, 23:29 но у меня только шестая версия. Не хочет открывать
Вот под вашу версию:
Temperatura.flp
На 9 версию рано еще переходить, а вот 8.2.3 уже пора.
Если измерять от 0 до 100, то можно попробовать так:
Temperatura1.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2358
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 25 раз

Не правильно отображаются данные на семисементном индикаторе

Сообщение rw6cm »

[ref]garikb[/ref], [ref]asvhmao[/ref],
какой смысл умножать инт на 10*?
Умножать надо флоат стразу после датчика, а потом переводить в инт, чтобы отображать десятые.
Win10-64, FLProg (portable)
Аватара пользователя
garikb
Сержант
Сообщения: 181
Зарегистрирован: 04 ноя 2015, 19:52
Откуда: Славянск
Имя: Игорь

Не правильно отображаются данные на семисементном индикаторе

Сообщение garikb »

[ref=#ff8000]rw6cm[/ref],
Как раз чтобы уйти от десятых, на сколько я понял не коректно отображается на модуле если выводить с десятыми.
У меня модуля такого нет, так что только мысли , а проверяет пусть автор топика.
Аватара пользователя
rw6cm
Полковник
Сообщения: 2358
Зарегистрирован: 06 сен 2015, 20:25
Имя: Владимир
Поблагодарили: 25 раз

Не правильно отображаются данные на семисементном индикаторе

Сообщение rw6cm »

garikb писал(а): 30 апр 2024, 08:30 Как раз чтобы уйти от десятых,
Чтобы уйти от десятых достаточно перевести в инт.
Win10-64, FLProg (portable)
Аватара пользователя
garikb
Сержант
Сообщения: 181
Зарегистрирован: 04 ноя 2015, 19:52
Откуда: Славянск
Имя: Игорь

Не правильно отображаются данные на семисементном индикаторе

Сообщение garikb »

rw6cm писал(а): 30 апр 2024, 09:52 Чтобы уйти от десятых достаточно перевести в инт.
Ну не я рисовал это, я просто переделал с 9 версии на 6
asvhmao
Рядовой
Сообщения: 19
Зарегистрирован: 15 мар 2024, 00:10
Откуда: Краснодар
Имя: сергей

Не правильно отображаются данные на семисементном индикаторе

Сообщение asvhmao »

rw6cm писал(а): 30 апр 2024, 06:54 Умножать надо флоат стразу после датчика, а потом переводить в инт, чтобы отображать десятые.
12 сообщение, картинки под спойлером, с примером на ЖК.
ТСу вариантов много накидали, бери да делай только.
DownHouse
Рядовой
Сообщения: 31
Зарегистрирован: 04 апр 2017, 14:07

Не правильно отображаются данные на семисементном индикаторе

Сообщение DownHouse »

Спасибо всем за помощь.
Пожалуй вариант с умножением самый простой будет.
Ответить

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

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

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