Не работает: DS18B20 + дисплей ASOLED 128*64

Ответить
KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#1

Сообщение KulibinOrsk » 24.04.2022{, 19:03}

Кто то может сталкивался с проблемой ?
Не работает: Ардуино НАНО + DS18B20 + дисплей asoled по I2C
Простая программулина и не выводит данные на дисплей. Выводит 0,0

Буду признателен за подсказку. Может блок температуры кривой? Но мне нужен блок без контроля адреса датчика. На одном пине - один датчик.
На всякий случай проект приложил.
Вложения
Датчик1820.flp
(225.08 КБ) 23 скачивания

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Не работает: DS18B20 + дисплей ASOLED 128*64

#2

Сообщение Ingwar » 24.04.2022{, 20:00}

Проект не смотрел. Проверьте в UART - будет понятнее, "кто виноват".
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 579
Зарегистрирован: 30.08.2018{, 17:15}
Репутация: 47
Откуда: Иркутская область
Имя: Сергей

Не работает: DS18B20 + дисплей ASOLED 128*64

#3

Сообщение SergeyShikal » 25.04.2022{, 13:14}

KulibinOrsk писал(а):
24.04.2022{, 19:03}
Кто то может сталкивался с проблемой ?
Не работает: Ардуино НАНО + DS18B20 + дисплей asoled по I2C
Простая программулина и не выводит данные на дисплей. Выводит 0,0

Буду признателен за подсказку. Может блок температуры кривой? Но мне нужен блок без контроля адреса датчика. На одном пине - один датчик.
На всякий случай проект приложил.
Вы сначала через стандартный блок попробуйте снять показания или вообще вместо термометра что нибудь напишите.

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#4

Сообщение ecoins » 25.04.2022{, 17:44}

Заменил на плате блок DS1820 - к нему нужно библиотеку обновленную скачать RT_HW_BASE.h (в последних сообщениях в теме "Разработки ecoins для STM32".
Работает.
20220425_172607.jpg
Датчик1820_1.zip
(106.31 КБ) 30 скачиваний
Но очень медленно.
Время цикла loop() 1.5ms.
Рекомендую использовать диспетчер задач.
Ну и сами блоки медленные и прочее и прочее... Возможно отложим сейчас разработки блоков для новых сенсоров и расширителей и сделаем мультиплатформерные и быстрые блоки под этот дисплей.
Успехов.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#5

Сообщение KulibinOrsk » 25.04.2022{, 18:04}

ecoins, так у меня ARDUINO NANO + датчик не DHT, а DS18B20
Попробовал на всякий случай Ваш вариант - так же пишет нули и все.

Отправлено спустя 1 минуту 20 секунд:
Ingwar, честно говоря никогда не отправлял в UART ничего )
Просто отправить значение или нужно типа генератора и по нему высылать в уарт ?
Если не сложно примерчик какой-нить.

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#6

Сообщение ecoins » 25.04.2022{, 18:21}

KulibinOrsk писал(а):
25.04.2022{, 18:06}
ecoins, так у меня ARDUINO NANO + датчик не DHT, а DS18B20
Попробовал на всякий случай Ваш вариант - так же пишет нули и все.
Только что скачал отправленный Вам файл и запустил проект.
Там на второй плате стоит блок ds1820.
Работает. А Вы новую библиотеку установили.
Если да, то выложу пример с выводом монитор порта(консоль) - блок консоли очень простой и удобен в использовании.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#7

Сообщение KulibinOrsk » 25.04.2022{, 18:38}

ecoins,Библиотеку конечно установил. Выводит на дисплей верхнюю строку и второй строкой температуру = -0.1

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#8

Сообщение ecoins » 25.04.2022{, 19:39}

Наверное что-то с сенсором.
Ниже тест с выводом в монитор.
Project_test_ds1820.png
Консоль.PNG
Test_ds1820.zip
(387.49 КБ) 23 скачивания
pr4.ino
(2.86 КБ) 14 скачиваний
Возможно что-то с пином, попробуйте переключить.
Рекомендую приобрести логический анализатор. Есть и очень не дорогие. Много бы смогли бы увидеть что происходит не пине сенсора.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#9

Сообщение KulibinOrsk » 27.04.2022{, 07:18}

ecoins, благодарю за содействие. Убиты оказались оба датчика.
P.S.
Я так полагаю что консоль специально создавалась для отладки устройств ?

Отправлено спустя 3 часа 29 минут 1 секунду:
ecoins, спрошу в этой теме, потом удалю:
1. Каким образом можно в строку добавлять какой-либо символ с помощью логических сигналов (boolean) ?
2. Каким образом можно можно передавать с входа на выход переменную типа Integer так же с помощью логических сигналов (boolean) ?
Может быть у вас есть какие то дешифраторы для подобных действий ?

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#10

Сообщение ecoins » 27.04.2022{, 11:26}

KulibinOrsk писал(а):
27.04.2022{, 10:47}
ecoins, благодарю за содействие. Убиты оказались оба датчика.
P.S.
Я так полагаю что консоль специально создавалась для отладки устройств ?
Да, консоль долго разрабатывалась (были перепробованы много разных подходов) -поддерживает консоли на MCU и с программной реализацией USB (STM32,Seeeduino,RASPBerry PI PICO и др.) прежде всего для отладки программ и не только проектов и блоков FLProg, но и прежде всего программ на C++. С некоторыми оговорками заменяют классические (сложные и громоздкие) системы типа AVR Studio, и при этом не зависит от архитектуры MCU.
На работу основной программы влияет не значительно, используется буферированный вывод.
Хорошей добавкой для отладки проектов на FLProg являются блоки LCD ecoins - оказалось очень мощным средством, практически не тормозит MCU, очень приятно подключать через SPI или программный SPI (три любых пина).

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#11

Сообщение ecoins » 27.04.2022{, 11:31}

KulibinOrsk писал(а):
27.04.2022{, 10:47}
1. Каким образом можно в строку добавлять какой-либо символ с помощью логических сигналов (boolean) ?
Было бы неплохо привести простой пример для реализации.
Возможно сделать и дополнительный блок.
При работе со строками нужно иметь ввиду, что они ресурсо-затратны (время, память) и страемся искать другие решения.
В разработке блоки поддержки протокола MQTT - те, которые размещены на форуме, имеют вышеперечисленные особенности.

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#12

Сообщение ecoins » 27.04.2022{, 11:33}

KulibinOrsk писал(а):
27.04.2022{, 10:47}
2. Каким образом можно можно передавать с входа на выход переменную типа Integer так же с помощью логических сигналов (boolean) ?
Может быть у вас есть какие то дешифраторы для подобных действий ?
Если Вы имеете ввиду обновления значения переменной по входном стробу - то это сделать не сложно.
Можно будет добавить блок для разных форматов.
Если это практически целесообразно...

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#13

Сообщение KulibinOrsk » 27.04.2022{, 19:16}

ecoins, не стал всю программу прикладывать (она выложена вначале). Прилагаю скрин.
К примеру мне в строку надо добавить символ: > указывающий что в этой строке будет производиться изменение.
Либо иметь возможность оперативно изменять координату по Y для знака >
Есть ПБ - блинк - для того чтобы делать строку мигающей, но она нормально работает когда программа не большая. А когда в программе много экранов для дисплея то работает не корректно, можно сказать совсем не работает.
Сейчас ничего не остается кроме как использовать еще 3 блока для дисплея в которых по координатам выводить значек. Но эти блоки занимают много памяти.
Вложения
Пример вставки.jpg

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#14

Сообщение ecoins » 27.04.2022{, 21:46}

KulibinOrsk писал(а):
27.04.2022{, 19:16}
ecoins, не стал всю программу прикладывать (она выложена вначале). Прилагаю скрин.
К примеру мне в строку надо добавить символ: > указывающий что в этой строке будет производиться изменение.
Блок добавления символа к строке есть в стандартных блоках FLProg, можно его использовать.
А вот убрать его сложнее. Можно конечно сделать блок, который меняет последний символ, но путь как-то кривовато выглядит...
KulibinOrsk писал(а):
27.04.2022{, 19:16}
Есть ПБ - блинк - для того чтобы делать строку мигающей, но она нормально работает когда программа не большая. А когда в программе много экранов для дисплея то работает не корректно, можно сказать совсем не работает.

Смотрел эту библиотеку, потом библиотеку от AlexGryver. К обоим есть вопросы, но вторая интереснее.
Возможно на основе последней начнем делать свою с учетом особенностей FLProg.
Вроде должно сложиться - сейчас кое-какие текущие хвосты подтянем и наверное займемся.
KulibinOrsk писал(а):
27.04.2022{, 19:16}
Сейчас ничего не остается кроме как использовать еще 3 блока для дисплея в которых по координатам выводить значек. Но эти блоки занимают много памяти
OLED и Nano почти несовместимы в практической работе именно из памяти.
Советую избегать использование Nano - если только в самых простых проектах. Да и по цене это теперь не самый дешевый контроллер.

KulibinOrsk
Лейтенант
Сообщения: 515
Зарегистрирован: 25.02.2018{, 08:48}
Репутация: 21
Откуда: Оренбург
Имя: Александр

Не работает: DS18B20 + дисплей ASOLED 128*64

#15

Сообщение KulibinOrsk » 28.04.2022{, 04:09}

ecoins, а что это за блок добавления символа к строке ?
NANO из-за размеров удобен и в практическом использовании - заливка с юсб. По цене да, приподняли до 400 руб. Но все остальное в размерах велико.

ecoins
Полковник
Сообщения: 2945
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 454
Откуда: Шатура
Имя: Энвер

Не работает: DS18B20 + дисплей ASOLED 128*64

#16

Сообщение ecoins » 28.04.2022{, 19:02}

KulibinOrsk писал(а):
28.04.2022{, 04:09}
ecoins, а что это за блок добавления символа к строке ?
Библиотеки блоков (FLProg)->Строки->добавление "Char" к строке.
KulibinOrsk писал(а):
28.04.2022{, 04:09}
NANO из-за размеров удобен и в практическом использовании - заливка с юсб. По цене да, приподняли до 400 руб. Но все остальное в размерах велико.
Все так, но с ростом проекта быстро начинаются проблемы, иногда не очевидные.
Особое время следует уделять контролю за использованием ОЗУ - выше 70% начинается нестабильная работа и т.п.
В проектах Вы широко используете переменные String - они много потребляют ОЗУ. Если русские символы, то каждый символ занимает 2 байта.

Ответить

Вернуться в «Помогите, а то я "нимагу"»