Страница 1 из 1
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 24 апр 2022, 19:03
KulibinOrsk
Кто то может сталкивался с проблемой ?
Не работает: Ардуино НАНО + DS18B20 + дисплей asoled по I2C
Простая программулина и не выводит данные на дисплей. Выводит 0,0
Буду признателен за подсказку. Может блок температуры кривой? Но мне нужен блок без контроля адреса датчика. На одном пине - один датчик.
На всякий случай проект приложил.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 24 апр 2022, 20:00
Ingwar
Проект не смотрел. Проверьте в UART - будет понятнее, "кто виноват".
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 13:14
SergeyShikal
KulibinOrsk писал(а): 24 апр 2022, 19:03
Кто то может сталкивался с проблемой ?
Не работает: Ардуино НАНО + DS18B20 + дисплей asoled по I2C
Простая программулина и не выводит данные на дисплей. Выводит 0,0
Буду признателен за подсказку. Может блок температуры кривой? Но мне нужен блок без контроля адреса датчика. На одном пине - один датчик.
На всякий случай проект приложил.
Вы сначала через стандартный блок попробуйте снять показания или вообще вместо термометра что нибудь напишите.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 17:44
ecoins
Заменил на плате блок DS1820 - к нему нужно библиотеку обновленную скачать RT_HW_BASE.h (в последних сообщениях в теме "Разработки ecoins для STM32".
Работает.
20220425_172607.jpg
Датчик1820_1.zip
Но очень медленно.
Время цикла loop() 1.5ms.
Рекомендую использовать диспетчер задач.
Ну и сами блоки медленные и прочее и прочее... Возможно отложим сейчас разработки блоков для новых сенсоров и расширителей и сделаем мультиплатформерные и быстрые блоки под этот дисплей.
Успехов.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 18:06
KulibinOrsk
[ref]ecoins[/ref], так у меня ARDUINO NANO + датчик не DHT, а DS18B20
Попробовал на всякий случай Ваш вариант - так же пишет нули и все.
Отправлено спустя 1 минуту 20 секунд:
[ref=#ff8000]Ingwar[/ref], честно говоря никогда не отправлял в UART ничего )
Просто отправить значение или нужно типа генератора и по нему высылать в уарт ?
Если не сложно примерчик какой-нить.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 18:21
ecoins
KulibinOrsk писал(а): 25 апр 2022, 18:06
ecoins, так у меня ARDUINO NANO + датчик не DHT, а DS18B20
Попробовал на всякий случай Ваш вариант - так же пишет нули и все.
Только что скачал отправленный Вам файл и запустил проект.
Там на второй плате стоит блок ds1820.
Работает. А Вы новую библиотеку установили.
Если да, то выложу пример с выводом монитор порта(консоль) - блок консоли очень простой и удобен в использовании.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 18:38
KulibinOrsk
[ref]ecoins[/ref],Библиотеку конечно установил. Выводит на дисплей верхнюю строку и второй строкой температуру = -0.1
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 25 апр 2022, 19:39
ecoins
Наверное что-то с сенсором.
Ниже тест с выводом в монитор.
Project_test_ds1820.png
Консоль.PNG
Test_ds1820.zip
pr4.ino
Возможно что-то с пином, попробуйте переключить.
Рекомендую приобрести логический анализатор. Есть и очень не дорогие. Много бы смогли бы увидеть что происходит не пине сенсора.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 10:47
KulibinOrsk
[ref]ecoins[/ref], благодарю за содействие. Убиты оказались оба датчика.
P.S.
Я так полагаю что консоль специально создавалась для отладки устройств ?
Отправлено спустя 3 часа 29 минут 1 секунду:
[ref]ecoins[/ref], спрошу в этой теме, потом удалю:
1. Каким образом можно в строку добавлять какой-либо символ с помощью логических сигналов (boolean) ?
2. Каким образом можно можно передавать с входа на выход переменную типа Integer так же с помощью логических сигналов (boolean) ?
Может быть у вас есть какие то дешифраторы для подобных действий ?
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 11:26
ecoins
KulibinOrsk писал(а): 27 апр 2022, 10:47
ecoins, благодарю за содействие. Убиты оказались оба датчика.
P.S.
Я так полагаю что консоль специально создавалась для отладки устройств ?
Да, консоль долго разрабатывалась (были перепробованы много разных подходов) -поддерживает консоли на MCU и с программной реализацией USB (STM32,Seeeduino,RASPBerry PI PICO и др.) прежде всего для отладки программ и не только проектов и блоков FLProg, но и прежде всего программ на C++. С некоторыми оговорками заменяют классические (сложные и громоздкие) системы типа AVR Studio, и при этом не зависит от архитектуры MCU.
На работу основной программы влияет не значительно, используется буферированный вывод.
Хорошей добавкой для отладки проектов на FLProg являются блоки LCD ecoins - оказалось очень мощным средством, практически не тормозит MCU, очень приятно подключать через SPI или программный SPI (три любых пина).
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 11:31
ecoins
KulibinOrsk писал(а): 27 апр 2022, 10:47
1. Каким образом можно в строку добавлять какой-либо символ с помощью логических сигналов (boolean) ?
Было бы неплохо привести простой пример для реализации.
Возможно сделать и дополнительный блок.
При работе со строками нужно иметь ввиду, что они ресурсо-затратны (время, память) и страемся искать другие решения.
В разработке блоки поддержки протокола MQTT - те, которые размещены на форуме, имеют вышеперечисленные особенности.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 11:33
ecoins
KulibinOrsk писал(а): 27 апр 2022, 10:47
2. Каким образом можно можно передавать с входа на выход переменную типа Integer так же с помощью логических сигналов (boolean) ?
Может быть у вас есть какие то дешифраторы для подобных действий ?
Если Вы имеете ввиду обновления значения переменной по входном стробу - то это сделать не сложно.
Можно будет добавить блок для разных форматов.
Если это практически целесообразно...
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 19:16
KulibinOrsk
[ref]ecoins[/ref], не стал всю программу прикладывать (она выложена вначале). Прилагаю скрин.
К примеру мне в строку надо добавить символ: > указывающий что в этой строке будет производиться изменение.
Либо иметь возможность оперативно изменять координату по Y для знака >
Есть ПБ - блинк - для того чтобы делать строку мигающей, но она нормально работает когда программа не большая. А когда в программе много экранов для дисплея то работает не корректно, можно сказать совсем не работает.
Сейчас ничего не остается кроме как использовать еще 3 блока для дисплея в которых по координатам выводить значек. Но эти блоки занимают много памяти.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 27 апр 2022, 21:46
ecoins
KulibinOrsk писал(а): 27 апр 2022, 19:16
ecoins, не стал всю программу прикладывать (она выложена вначале). Прилагаю скрин.
К примеру мне в строку надо добавить символ: > указывающий что в этой строке будет производиться изменение.
Блок добавления символа к строке есть в стандартных блоках FLProg, можно его использовать.
А вот убрать его сложнее. Можно конечно сделать блок, который меняет последний символ, но путь как-то кривовато выглядит...
KulibinOrsk писал(а): 27 апр 2022, 19:16
Есть ПБ - блинк - для того чтобы делать строку мигающей, но она нормально работает когда программа не большая. А когда в программе много экранов для дисплея то работает не корректно, можно сказать совсем не работает.
Смотрел эту библиотеку, потом библиотеку от AlexGryver. К обоим есть вопросы, но вторая интереснее.
Возможно на основе последней начнем делать свою с учетом особенностей FLProg.
Вроде должно сложиться - сейчас кое-какие текущие хвосты подтянем и наверное займемся.
KulibinOrsk писал(а): 27 апр 2022, 19:16
Сейчас ничего не остается кроме как использовать еще 3 блока для дисплея в которых по координатам выводить значек. Но эти блоки занимают много памяти
OLED и Nano почти несовместимы в практической работе именно из памяти.
Советую избегать использование Nano - если только в самых простых проектах. Да и по цене это теперь не самый дешевый контроллер.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 28 апр 2022, 04:09
KulibinOrsk
[ref]ecoins[/ref], а что это за блок добавления символа к строке ?
NANO из-за размеров удобен и в практическом использовании - заливка с юсб. По цене да, приподняли до 400 руб. Но все остальное в размерах велико.
Не работает: DS18B20 + дисплей ASOLED 128*64
Добавлено: 28 апр 2022, 19:02
ecoins
KulibinOrsk писал(а): 28 апр 2022, 04:09
ecoins, а что это за блок добавления символа к строке ?
Библиотеки блоков (FLProg)->Строки->добавление "Char" к строке.
KulibinOrsk писал(а): 28 апр 2022, 04:09
NANO из-за размеров удобен и в практическом использовании - заливка с юсб. По цене да, приподняли до 400 руб. Но все остальное в размерах велико.
Все так, но с ростом проекта быстро начинаются проблемы, иногда не очевидные.
Особое время следует уделять контролю за использованием ОЗУ - выше 70% начинается нестабильная работа и т.п.
В проектах Вы широко используете переменные String - они много потребляют ОЗУ. Если русские символы, то каждый символ занимает 2 байта.