Не правильно отображаются данные на семисементном индикаторе
Не правильно отображаются данные на семисементном индикаторе
Здравствуйте. Купил на Али вот такие индикаторы трехразрядные.
В FLprog создал проект с выводом температуры с датчика DS18B20 на этот индикатор и для контроля подключил дисплей 1602. Данные с датчика на индикатор выводятся не корректно.
Подскажите пож-ста, что я не так сделал.
Для наглядности приложил фото
[spoiler] [/spoiler]
Не пойму почему целая часть числа сдвинута. При этом десятые доли отображаются нормально.
Может блоки декодирования семисегментного индикатора и блок микросхемы 74HC595 нужно как то по друму между собой соединять.
Если в настройках блока конвертации из числа в строку установить число знаков после запятой равным Нулю, то данные на индикатор выводятся верно.
Т.е. если температура равна 20 градусам,то данные отображаются на двух крайних правых разрядах, а первый разряд остается пустым. Как только ставлю число знаков после запятой равное одному, то данные на индикаторе сдвигаются.
Может я что то с точками не так делаю.
Забыл сказать. что используется статический режим.
Прощу прощения, если это уже где-то обсуждалось, посмотрел бегло вроде не нашел.
В FLprog создал проект с выводом температуры с датчика DS18B20 на этот индикатор и для контроля подключил дисплей 1602. Данные с датчика на индикатор выводятся не корректно.
Подскажите пож-ста, что я не так сделал.
Для наглядности приложил фото
[spoiler] [/spoiler]
Не пойму почему целая часть числа сдвинута. При этом десятые доли отображаются нормально.
Может блоки декодирования семисегментного индикатора и блок микросхемы 74HC595 нужно как то по друму между собой соединять.
Если в настройках блока конвертации из числа в строку установить число знаков после запятой равным Нулю, то данные на индикатор выводятся верно.
Т.е. если температура равна 20 градусам,то данные отображаются на двух крайних правых разрядах, а первый разряд остается пустым. Как только ставлю число знаков после запятой равное одному, то данные на индикаторе сдвигаются.
Может я что то с точками не так делаю.
Забыл сказать. что используется статический режим.
Прощу прощения, если это уже где-то обсуждалось, посмотрел бегло вроде не нашел.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Сержант
- Сообщения: 296
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Поблагодарили: 2 раза
Не правильно отображаются данные на семисементном индикаторе
Посмотрите вот этот пост. TM595
В примере есть пользовательский блок Parse String Dots. попробуйте его поставить перед TM74HC595 сразу на датчик температуры.
В примере есть пользовательский блок Parse String Dots. попробуйте его поставить перед TM74HC595 сразу на датчик температуры.
Люблю учиться на чужих ошибках.
Не правильно отображаются данные на семисементном индикаторе
Я что то не нашел этого блока. Там по ссылке только два архива, ни в одном из них пользовательских блок нет. Может не туда смотрю.
- montirovka
- Сержант
- Сообщения: 296
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Поблагодарили: 2 раза
Не правильно отображаются данные на семисементном индикаторе
ошибочка вышла.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Люблю учиться на чужих ошибках.
- ViktorPetrov
- Капитан
- Сообщения: 744
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 2 раза
Не правильно отображаются данные на семисементном индикаторе
Умножить температуру на х10 простое решение ,для индикатора нужно целое число.
Не правильно отображаются данные на семисементном индикаторе
А в чем проблема вытащить из проекта? Извеняюсь не глянул название блока и скинул что в проекте по ссылке ( .
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось garikb 29 апр 2024, 19:38, всего редактировалось 1 раз.
- montirovka
- Сержант
- Сообщения: 296
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Поблагодарили: 2 раза
Не правильно отображаются данные на семисементном индикаторе
Проверить неначем, рисовал в 9 версии FLProg. Посмотри может заработает?
Как выше написали, где пустой символ, там запятая, но семисигментный декодер её не понимает.
Можно ещё добавить четвёртый (виртуальный) разряд на декодер, а на регистр подавать разряды 1,3,4, второй оставить в воздухе. Соответственно запятую ставить ручками, инверсией вывода точки.
Как выше написали, где пустой символ, там запятая, но семисигментный декодер её не понимает.
Можно ещё добавить четвёртый (виртуальный) разряд на декодер, а на регистр подавать разряды 1,3,4, второй оставить в воздухе. Соответственно запятую ставить ручками, инверсией вывода точки.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- montirovka
- Сержант
- Сообщения: 296
- Зарегистрирован: 15 фев 2021, 16:16
- Откуда: Геленджик
- Имя: Сергей
- Поблагодарили: 2 раза
Не правильно отображаются данные на семисементном индикаторе
В восьмой версии не открывается. Падает FLprog
Люблю учиться на чужих ошибках.
Не правильно отображаются данные на семисементном индикаторе
Восьмая версия, но по второму варианту.
Отправлено спустя 26 минут 24 секунды:
Добавил вариант с умножением на 10. Восьмая версия программы.
Отправлено спустя 26 минут 24 секунды:
Добавил вариант с умножением на 10. Восьмая версия программы.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Не правильно отображаются данные на семисементном индикаторе
Спасибо, не знал. Сохранил из скетча.
Отправлено спустя 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 секунд:
Возможно конечно в моем случае достаточно точку просто зажечь руками инвертировав значение нужной точки, но мало ли в будущем что то буду колхозить глядишь пригодится.
Да, забыл. Пробовал еще вариант с блоками, которые подстроки выдергивают из строки. Вытаскивал через один блок целое число с(в виде строки) а через второй блок десятичную часть и потом опять суммировал строки (наверное те еще костыли). Вроде тоже правильно отображает индикатор, но точку опять таки руками включать надо.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Не правильно отображаются данные на семисементном индикаторе
Много лишнего, мне так кажется. Так попробуй
. .
Или так
. .
Отправлено спустя 14 минут 16 секунд:
Восьмая то версия точно будет получше шестой. Если есть возможность, то почему бы и не поставить.
Ещё добавлю
[spoiler] [/spoiler]
. .
Или так
. .
Отправлено спустя 14 минут 16 секунд:
Сравнивать могу 8 и 9 версию и только с STM32F103. Опыта пользования программой меньше месяца. 9 тормозит больше, но исправлены и добавлены некоторые возможности, которые в 8 версии надо было руками дописывать.
Восьмая то версия точно будет получше шестой. Если есть возможность, то почему бы и не поставить.
Ещё добавлю
[spoiler] [/spoiler]
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось asvhmao 30 апр 2024, 01:59, всего редактировалось 2 раза.
Не правильно отображаются данные на семисементном индикаторе
Вот под вашу версию: На 9 версию рано еще переходить, а вот 8.2.3 уже пора.
Если измерять от 0 до 100, то можно попробовать так:
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- rw6cm
- Полковник
- Сообщения: 2358
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 25 раз
Не правильно отображаются данные на семисементном индикаторе
[ref]garikb[/ref], [ref]asvhmao[/ref],
какой смысл умножать инт на 10*?
Умножать надо флоат стразу после датчика, а потом переводить в инт, чтобы отображать десятые.
какой смысл умножать инт на 10*?
Умножать надо флоат стразу после датчика, а потом переводить в инт, чтобы отображать десятые.
Win10-64, FLProg (portable)
Не правильно отображаются данные на семисементном индикаторе
[ref=#ff8000]rw6cm[/ref],
Как раз чтобы уйти от десятых, на сколько я понял не коректно отображается на модуле если выводить с десятыми.
У меня модуля такого нет, так что только мысли , а проверяет пусть автор топика.
Как раз чтобы уйти от десятых, на сколько я понял не коректно отображается на модуле если выводить с десятыми.
У меня модуля такого нет, так что только мысли , а проверяет пусть автор топика.
- rw6cm
- Полковник
- Сообщения: 2358
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 25 раз
Не правильно отображаются данные на семисементном индикаторе
Чтобы уйти от десятых достаточно перевести в инт.
Win10-64, FLProg (portable)
Не правильно отображаются данные на семисементном индикаторе
Ну не я рисовал это, я просто переделал с 9 версии на 6
Не правильно отображаются данные на семисементном индикаторе
12 сообщение, картинки под спойлером, с примером на ЖК.
ТСу вариантов много накидали, бери да делай только.
Не правильно отображаются данные на семисементном индикаторе
Спасибо всем за помощь.
Пожалуй вариант с умножением самый простой будет.
Пожалуй вариант с умножением самый простой будет.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя