Разработки ecoins

Библиотеки для разных контроллеров

Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27.11.2017{, 13:15}
Репутация: 36
Откуда: Rus44
Имя: Michael
Контактная информация:

Разработки ecoins

#1441

Сообщение Alias » 23.12.2021{, 14:26}

Да, на Меге можно все это просто проигнорировать. Я про рост затрат. Но мне же было любопытно покрутить с разных сторон, чтобы сделать осознанный выбор )) В основном интересовала скорость, из-за нее и решил посмотреть.
Задействую и i2c и связь, так что все это не лишнее. Жаль, что оценить масштабов Вашей кодерской работы не смогу - я программист без программирования ))) Спасибо!

Отправлено спустя 31 минуту 4 секунды:
ecoins писал(а):
23.12.2021{, 13:23}
А чтобы пин опрашивался при каждом новом опросе, это можно будет сделать
Попытался в рамках получения нового опыта отредактировать Ваш блок. Запутался )) В прежних версиях flp пробовал создавать свои и даже получались работоспособные, но в новой нужно сначала въехать, а времени нет. Не подскажете, какой параметр в коде нужно поменять для опроса входа пина при каждом обращении к блоку? Не критично и не настаиваю, любопытство, не более того. Но если получится, построю на этой возможности логику по получению температур. Пытливый ум покоя не дает. Скорее всего, ищу повод затянуть проектирование, уж больно сложные алгоритмы нужно заложить в систему. Нет, не пасую - сосредотачиваюсь )))

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

Разработки ecoins

#1442

Сообщение ecoins » 23.12.2021{, 15:30}

Alias писал(а):
23.12.2021{, 14:57}
Попытался в рамках получения нового опыта отредактировать Ваш блок. Запутался )) В прежних версиях flp пробовал создавать свои и даже получались работоспособные, но в новой нужно сначала въехать, а времени нет. Не подскажете, какой параметр в коде нужно поменять для опроса входа пина при каждом обращении к блоку? Не критично и не настаиваю, любопытство, не более того. Но если получится, построю на этой возможности логику по получению температур. Пытливый ум покоя не дает. Скорее всего, ищу повод затянуть проектирование, уж больно сложные алгоритмы нужно заложить в систему. Нет, не пасую - сосредотачиваюсь )))
Без изменения библиотек это сделать не получится.
Возможно мы такую возможность предусмотрим. Подумаем...

tolochko
Сержант
Сообщения: 247
Зарегистрирован: 30.11.2016{, 16:58}
Репутация: 7
Откуда: Днепропетровск

Разработки ecoins

#1443

Сообщение tolochko » 23.12.2021{, 17:14}

Здравствуйте всем
Уважаемый Ecoins похоже ваш блок дисплея не работает с платой WeMos mini
С родным блоком дисплея работает
И если поменять контроллер на Node MCU то тоже работает

Отправлено спустя 1 минуту 2 секунды:
Да это по I2c

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

Разработки ecoins

#1444

Сообщение ecoins » 23.12.2021{, 18:23}

tolochko писал(а):
23.12.2021{, 17:15}
Здравствуйте всем
Уважаемый Ecoins похоже ваш блок дисплея не работает с платой WeMos mini
С родным блоком дисплея работает
И если поменять контроллер на Node MCU то тоже работает
Строго говоря в случае с ESP8266 мало на что влияет выбор типа платы, поскольку пины задаются вручную.
В Arduino IDE длинный перечень плат - в библиотеке проверяются на имена Generic ESP8266 Module, LOLIN(WEMOS) D1 mini Lite, LOLIN(WEMOS) D1 mini Pro, NodeMCU 0.9(ESP12 Module), LOLIN(WEMOS) D1 mini Pro.
Если указать плату, которая не прописана в библиотеке, то она опознается как неизвестная (ANON). В этом случае будет работать только монитор порта.

Результаты выбора можно увидеть в мониторе порта, если использовать блок параметры контроллера. Его можно вставить в любое место и он выдаст однократный заголовок с параметрами выбранной платы.
Вы наверное выбираете плату LOLIN(WEMOS) D1 mini (clone) - выберите LOLIN(WEMOS) D1 mini Lite и все должно заработать.
------------
По дисплею. Готовим переработанную версию. Она компактнее, быстрее, содержит новые опции, оптимизировано меню блока.

tolochko
Сержант
Сообщения: 247
Зарегистрирован: 30.11.2016{, 16:58}
Репутация: 7
Откуда: Днепропетровск

Разработки ecoins

#1445

Сообщение tolochko » 23.12.2021{, 18:50}

Понял спасибо

starshoy81
Лейтенант
Сообщения: 530
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

Разработки ecoins

#1446

Сообщение starshoy81 » 24.12.2021{, 20:15}

Alias, вызывайте датчики диспетчером по одному. По датчику на плату и вызов платы диспетчером задач.

Аватара пользователя
Alias
Лейтенант
Сообщения: 481
Зарегистрирован: 27.11.2017{, 13:15}
Репутация: 36
Откуда: Rus44
Имя: Michael
Контактная информация:

Разработки ecoins

#1447

Сообщение Alias » 24.12.2021{, 21:44}

Я так давно уже делаю. Еще до появления диспетчера. Но что это даст? Памяти то столько же уйдёт.

Masterli
Рядовой
Сообщения: 13
Зарегистрирован: 04.11.2020{, 20:52}
Репутация: 1
Откуда: Москва
Имя: Владимир

Разработки ecoins

#1448

Сообщение Masterli » 28.01.2022{, 09:01}

Здравствуйте, ecoins! Подскажите как обстоят дела с вашими замечательными разработками? Надеюсь не забросили свой проект? Я с удовольствием работаю с вашими блоками и мне они с каждым проектом все больше нравятся! И еще, вопрос к блоку работы с SPI - он почему-то пустой

o615ye161
Сержант
Сообщения: 198
Зарегистрирован: 19.12.2019{, 14:47}
Репутация: 3
Имя: Сергей

Разработки ecoins

#1449

Сообщение o615ye161 » 28.01.2022{, 23:48}

ecoins писал(а):
23.12.2021{, 15:30}
Возможно мы такую возможность предусмотрим. Подумаем...
Я тоже просил чтобы был один блок, а адреса подставлять

Отправлено спустя 4 минуты 45 секунд:
Да и кстати вы обещали поправить блок счетчика что-бы можно было константы менять в процессе работы!

Отправлено спустя 2 минуты 30 секунд:
o615ye161 писал(а):
20.12.2021{, 21:09}
Созрел еще один вопрос про блок счетчик, почему-то входы счетчика не меняют значения если скажем задавать константы через блок меню или переменником внешне, подскажите с чем это связано и можно это исправить.

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

Разработки ecoins

#1450

Сообщение ecoins » 29.01.2022{, 05:42}

Masterli писал(а):
28.01.2022{, 09:01}
Здравствуйте, ecoins! Подскажите как обстоят дела с вашими замечательными разработками? Надеюсь не забросили свой проект? Я с удовольствием работаю с вашими блоками и мне они с каждым проектом все больше нравятся! И еще, вопрос к блоку работы с SPI - он почему-то пустой
Сделано и делается ну много, много работы.
По SPI - библиотека позволяет обращаться к нескольким шинам SPI по логическому номеру. В контроллерах, которые имеют несколько аппаратных шин SPI - физические номера совпадают с логическими - 0,1,2. Но есть и программный номер -8, через который реализуется программный SPI через любые доступные пины. Такая же логика реализована и с i2c. Это позволяет использовать один и тот же блок для устройством с разными интерфейсами на разных шинах - SPI,SSPI(программный SPI, i2c - например LCD HD44780(с разными платами согласования), сенсор BM280 и другие.
SPI c точки зрения мультиплатформенности оказался наиболее сложным к адаптации - в платформах AVR,ESP8266,ESP32,STM32(в STM32 особенно) и др. выявились порой значительные расхождения в реализациях ядер для Arduino IDE и это было существенным препятствием для создания мультиплатформенных блоков. Это было во многом основной причиной, почему мы так и не приступили к реализации блоков для TFT дисплеев. С новой библиотекой эти препятствия преодолены.

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

Разработки ecoins

#1451

Сообщение ecoins » 29.01.2022{, 06:15}

o615ye161 писал(а):
28.01.2022{, 23:55}
Я тоже просил чтобы был один блок, а адреса подставлять
Сейчас тестируется блок DHT22, где можно менять номер пина на входе блока так, чтобы при каждом последующем измерении использовалось новое значение. Чтобы не бы возникало проблем на разных контроллерах разной архитектуры, при каждом изменении пина проверяем доступность этого пина для используемых функций (в данном случае это дискретный ввод/вывод). Такая проверка занимает некоторое время(для контроллеров AVR 16мгц ощутимо) и потому должна выполняться только при изменении номера пина. Совокупность требований - простой интерфейс пользовательского блока, быстродействие и компактность кода сделали эту реализацию не тривиальной.
К слову для нового блока DHT22 добавлен пользовательский параметр "Разрешение блокировки прерываний". Это вызвано возникающими проблемами при работе на контроллерах типа ESP с включенным Wi-Fi. В стандартной реализации библиотеки в FLProg при измерении прерывания блокируются, однако это может вызвать проблемы при работе с блоками, которые используют прерывания (скоростной счетчик, HC-SR04 и др.). В новом блоке пользователь сам будет определять приемлемое для проекта компромиссное решение.
По DS1820 - решения по DHT22 под "копирку" будут перенесены и в новый блок DS1820.

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

Разработки ecoins

#1452

Сообщение ecoins » 29.01.2022{, 06:17}

o615ye161 писал(а):
28.01.2022{, 23:55}
Да и кстати вы обещали поправить блок счетчика что-бы можно было константы менять в процессе работы!

Отправлено спустя 2 минуты 30 секунд:
o615ye161 писал(а): ↑20.12.2021{, 18:09}
Созрел еще один вопрос про блок счетчик, почему-то входы счетчика не меняют значения если скажем задавать константы через блок меню или переменником внешне, подскажите с чем это связано и можно это исправить.
Вынесли счетчики в отдельное подменю в библиотеке пользовательских блоков - задача понятная и не сложная, будет реализована.

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

Разработки ecoins

#1453

Сообщение ecoins » 29.01.2022{, 06:35}

P.S. В новой версии много новых функций - битовые и побайтовые преобраоpвания, конвертация чисел и символов в разные форматы, фильтры медианные, бегущее среднее с кольцевым буфером, набор работы с фронтами импульсов и делители импульсов (можно делать генераторы с "бесконечным" временем), улучшена функция сканирования шины i2c для контроллеров с несколькими шинами, появился блок вывода на плоттер(Arduino IDE) одновременно нескольких параметров, появилjcm подменю интерфейсы (UART,i2c,SPI), которое постепенно наполняется содержанием.
Добавлена поддержка контроллеров Raspberry Pi Pico(очень интересный и не дорогой контроллер), Arduino Zero (SAMD21), ESP32-C3(пока тестировали "поверхностно").
По корректировке передачи в блоках Nextion помню - будет унифицированное меню (протестировано на новом блоке HС595).

uglerod
Рядовой
Сообщения: 73
Зарегистрирован: 27.11.2016{, 18:32}
Репутация: 5

Разработки ecoins

#1454

Сообщение uglerod » 25.02.2022{, 13:21}

Здравствуйте! Занимаюсь разработкой проекта терморегулятора. Решил использовать блоки ecoins для LCD. К показаниям температуры надо вывести знак градуса. В теме уже этот вопрос поднимался, а решился ли он? Как вывести знак градуса?

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

Разработки ecoins

#1455

Сообщение ecoins » 25.02.2022{, 13:41}

uglerod писал(а):
25.02.2022{, 13:21}
Здравствуйте! Занимаюсь разработкой проекта терморегулятора. Решил использовать блоки ecoins для LCD. К показаниям температуры надо вывести знак градуса. В теме уже этот вопрос поднимался, а решился ли он? Как вывести знак градуса?
Пока не знаю. Сейчас занимаюсь дисплеем. О "градусе" подумаю.

o615ye161
Сержант
Сообщения: 198
Зарегистрирован: 19.12.2019{, 14:47}
Репутация: 3
Имя: Сергей

Разработки ecoins

#1456

Сообщение o615ye161 » 05.03.2022{, 12:27}

ecoins писал(а):
25.02.2022{, 13:41}
Пока не знаю. Сейчас занимаюсь дисплеем. О "градусе" подумаю.
Здравствуйте раз уж занимаетесь дисплеем, может получится решить обновление выводимых параметров, а именно когда LCD20х4 выводит все строки и практически все столбцы происходит так сказать эффект полного затирания и потом построчного заполнения ячеек дисплея иными словами пропадание на какое то время выводимой информации!

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

Разработки ecoins

#1457

Сообщение ecoins » 06.03.2022{, 08:25}

o615ye161 писал(а):
05.03.2022{, 12:27}
Здравствуйте раз уж занимаетесь дисплеем, может получится решить обновление выводимых параметров, а именно когда LCD20х4 выводит все строки и практически все столбцы происходит так сказать эффект полного затирания и потом построчного заполнения ячеек дисплея иными словами пропадание на какое то время выводимой информации!
А это не автоматический перезапуск настроенный по умолчанию (возможно 1 раз в 5 мин)?
Этим блоком серьезно занимаемся, к сожалению последнюю неделю отвлекают другие события, но пытаемся закончить.
Готовится большое обновление всех библиотек со всеми блоками и новыми опциями. Идет тестирование.

o615ye161
Сержант
Сообщения: 198
Зарегистрирован: 19.12.2019{, 14:47}
Репутация: 3
Имя: Сергей

Разработки ecoins

#1458

Сообщение o615ye161 » 07.03.2022{, 18:52}

ecoins писал(а):
06.03.2022{, 08:25}
А это не автоматический перезапуск настроенный по умолчанию (возможно 1 раз в 5 мин)?
А где эта настройка и как можно ее убрать?

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

Разработки ecoins

#1459

Сообщение ecoins » 08.03.2022{, 20:53}

o615ye161 писал(а):
07.03.2022{, 18:52}
А где эта настройка и как можно ее убрать?
В параметрах пользователя время перезапуска нужно установить =0.

o615ye161
Сержант
Сообщения: 198
Зарегистрирован: 19.12.2019{, 14:47}
Репутация: 3
Имя: Сергей

Разработки ecoins

#1460

Сообщение o615ye161 » 09.03.2022{, 23:03}

ecoins писал(а):
08.03.2022{, 20:53}
В параметрах пользователя время перезапуска нужно установить =0.
Отключено, затирание происходит!
Вложения
Image 2022-03-09 at 23.02.03.jpeg

Закрыто

Вернуться в «Команда ecoins»