Разработки ecoins

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

Dmabst
Сержант
Сообщения: 149
Зарегистрирован: 08.12.2018{, 16:49}
Репутация: 10
Имя: Дмитрий

Разработки ecoins

#1001

Сообщение Dmabst » 23.04.2021{, 00:16}

ecoins писал(а):
21.04.2021{, 21:11}

Это отдельная библиотека и отдельный файл.
В вашем случае (чтобы не разбираться с библиотекой RT_HW_BASE.h ) рекомендую п.2
Абсолютно не помогает ваш совет. Все равно появляются ошибки компиляции.

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

Разработки ecoins

#1002

Сообщение ecoins » 23.04.2021{, 03:08}

Выложите проект с библиотекой

Dmabst
Сержант
Сообщения: 149
Зарегистрирован: 08.12.2018{, 16:49}
Репутация: 10
Имя: Дмитрий

Разработки ecoins

#1003

Сообщение Dmabst » 25.04.2021{, 09:48}

Dmabst писал(а):
21.04.2021{, 00:47}
Test_HTU21.flp
Не компилируется этот тест.

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

Разработки ecoins

#1004

Сообщение o615ye161 » 25.04.2021{, 14:56}

10.png
Здравствуйте ecoins скажите пожалуйста возможно сделать блок для этого датчика, очень необходим для инкубатора, для контроля СО, какие можете предложить варианты?

Ecomat
Рядовой
Сообщения: 35
Зарегистрирован: 02.07.2019{, 08:47}
Репутация: 0
Имя: Александр

Разработки ecoins

#1005

Сообщение Ecomat » 25.04.2021{, 15:16}

Прошу помочь. Выходные провел в попытке внедрения в свой проект Диспетчера задач. Реально получилось запустить только один, не требующий библиотек. Все остальные примеры и варианты просят библиотеки, которых в zip файлах этой темы я не нашел. В частности просит RT_HW_TASK.h и в другом варианте диспетчера RT_00_HW_MAIN.h.

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

Разработки ecoins

#1006

Сообщение ecoins » 25.04.2021{, 16:53}

Ecomat писал(а):
25.04.2021{, 15:16}
Прошу помочь. Выходные провел в попытке внедрения в свой проект Диспетчера задач. Реально получилось запустить только один, не требующий библиотек. Все остальные примеры и варианты просят библиотеки, которых в zip файлах этой темы я не нашел. В частности просит RT_HW_TASK.h и в другом варианте диспетчера RT_00_HW_MAIN.h.
Сильно выбиваемся из графика - до конца месяца наверное выложим новую версию в новом редакторе в новой ветке - будет все понятнее.

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

Разработки ecoins

#1007

Сообщение ecoins » 25.04.2021{, 16:56}

o615ye161 писал(а):
25.04.2021{, 14:56}
Здравствуйте ecoins скажите пожалуйста возможно сделать блок для этого датчика, очень необходим для инкубатора, для контроля СО, какие можете предложить варианты?
Закажем на Ali и попробуем.

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

Разработки ecoins

#1008

Сообщение o615ye161 » 25.04.2021{, 21:51}

ecoins писал(а):
25.04.2021{, 16:56}
Закажем на Ali и попробуем.
Вот это круто, :smile9: :smile9: :smile9: более отзывчивого человека я не знаю на просторах форума!

Отправлено спустя 8 минут 58 секунд:
ecoins скажите пожалуйста, можно вывод на дисплей 2004 реализовать каждая строчка на отдельной плате, чтобы во время работы не происходило стирания всей информации и заполнение заново, и еще обнаружил что блок DS18 при отключении датчика на выходе err нет 1

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

Разработки ecoins

#1009

Сообщение ecoins » 26.04.2021{, 12:03}

o615ye161 писал(а):
25.04.2021{, 22:00}
и еще обнаружил что блок DS18 при отключении датчика на выходе err нет 1
Проверим и поправим, когда будем переводить в новый редактор.
o615ye161 писал(а):
25.04.2021{, 22:00}
ecoins скажите пожалуйста, можно вывод на дисплей 2004 реализовать каждая строчка на отдельной плате, чтобы во время работы не происходило стирания всей информации и заполнение заново,
Вопрос не вполне понятен - Вы для lcd библиотекой ecoins пользуетесь?
Вроде проблем не должно быть.

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

Разработки ecoins

#1010

Сообщение o615ye161 » 26.04.2021{, 22:18}

ecoins писал(а):
26.04.2021{, 12:03}
Вы для lcd библиотекой ecoins пользуетесь?
пользуюсь, просто в какой-то период времени происходит как-бы стирание всего и потом заполнение, вот поэтому и подумал может для каждой строки сделать отдельную плату.

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

Разработки ecoins

#1011

Сообщение ecoins » 26.04.2021{, 23:08}

o615ye161 писал(а):
26.04.2021{, 22:18}
пользуюсь, просто в какой-то период времени происходит как-бы стирание всего и потом заполнение, вот поэтому и подумал может для каждой строки сделать отдельную плату.
Это специальная опция (может быть отключена - параметр ПЕРИОД ПЕРЕЗАГРУЗКИ=0). По умолчанию этот параметр 120 тиков(50мс), т.е. 6000 сек. Этот параметр может быть увеличен (int16_t).
Эта функция защищает дисплей в условиях плохих контактов, помех и прочее.
В новом редакторе буде поудобнее и понятнее.
Тоже самое делается, если происходит обрыв (или потеря) связи через i2c.

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

Разработки ecoins

#1012

Сообщение ecoins » 04.05.2021{, 20:16}

Разработана новая версия библиотек ecoins с блоками на новом редакторе FLProg.
Получилась сильно другая идеология.
В новую ветку пока не готов выложить - дорабатываются библиотеки сенсоров и пр. под новый редактор.

Все основные свойства остались прежние - мультиплатформенность (в т.ч.STM32),многозадачность без торможения.
Работа с дискретными пинами стала быстрее за счет доступа непосредственно к регистрам.
Блоков стало меньше и они настраиваемые.
Появились отдельные блоки многофункциональный генератор и счетчики -много возможность и пользоваться проще.
Проще стало настраивать проект под конкретный контроллер.
Появилась возможность получать параметры из строки (до восьми параметров).
Блок консоль стал универсальным и очень, очень мощным.
В нем есть и функция сканирования шин i2c.
Появилась возможность работать с разными шинами i2c (ESP32,STM32). В планах шина SPI.
Сделаны функции обращений к UART по номеру - 8 аппаратных и 1 программный. Это открывает путь для создания мощной библиотеки ModBus для FLProg (несколько мастеров и слейвов одновременно и без "тормозов") - но это не в самое ближайшее время.
В новом редакторе интерфейс для конечного пользователя более интуитивно понятен и описания делаются проще
Блоки дисплеев, сенсоров пока не переделывались - все новые блоки будут связаны с основной библиотекой RT_HW_BASE.h - это уже достаточно мощный самостоятельный продукт.
RT_00_HW_ECOINS_v1.05_040521_Short.zip
(314.67 КБ) 70 скачиваний
RT_HW_BASE.01.СИСТЕМА_v4.08_alfa.04.05.21.zip
(392.75 КБ) 49 скачиваний
RT_HW_BASE.v4_03_ver.02-СЕНСОРЫ.20.01.21.zip
(38.96 КБ) 46 скачиваний
RT_HW_BASE.v4_02_ver.02-ДИСПЛЕИ.20.01.21.zip
(105.62 КБ) 53 скачивания

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

Разработки ecoins

#1013

Сообщение ecoins » 04.05.2021{, 20:18}

Пару примеров -один совсем простой, вывод на консоль (115200) значения счетчика типа "Треугольник",
второй напичканный разными устройствами.
Простой тест счетчика.zip
(281.89 КБ) 36 скачиваний

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

Разработки ecoins

#1014

Сообщение o615ye161 » 04.05.2021{, 23:51}

ecoins писал(а):
04.05.2021{, 20:16}
Появилась возможность работать с разными шинами i2c (ESP32,STM32).
Здравствуйте ecoins, подскажите пожалуйста будут ли работать адекватно i2c MCP23017 и SPI 74HC595 (если есть информация нужно ли неиспользуемые ноги подтягивать к земле на 74HC595) одновременно в одном проекте на ESP32 и какие пины лучше использовать SPI при работе с вашими блоками? и если не сложно поясните принцип работы консоли? Будут работать на одной шине 74HC595 и 74HC165?

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

Разработки ecoins

#1015

Сообщение ecoins » 05.05.2021{, 07:48}

1
o615ye161 писал(а):
04.05.2021{, 23:51}
Здравствуйте ecoins, подскажите пожалуйста будут ли работать адекватно i2c MCP23017 и SPI 74HC595
Прямо сейчас не проверял, но в предыдущих тестах всегда включал два расширителя MCP23017(i2c) и один 74HC595 - тесты "бегущая единица" на них запускались. Но пользовательские блоки на них запускались.
Особенностью блоков с интерфейсом i2c, разработанных ecoins, является то, что они допускают "горячее подключение" (подключение во время работы контроллера) и "не тормозят" работу процессора.
2.
o615ye161 писал(а):
04.05.2021{, 23:51}
если есть информация нужно ли неиспользуемые ноги подтягивать к земле на 74HC595

Входа данных не нужно.
3.
o615ye161 писал(а):
04.05.2021{, 23:51}
Будут работать на одной шине 74HC595 и 74HC165
Не проверял, но ничего не должно мешать их одновременное использование.
Мы предпочитаем использовать MCP23017 - они расширители и ввода, и вывода. Как ни странно, но приобрести модули с SPI (MCP23S17) нам не удалось, потому используем модули на i2c.
И ещё - 74HC595 у нас часто выгорают (причины не идентифицированы) и мы их стали устанавливать в панельки.
o615ye161 писал(а):
04.05.2021{, 23:51}
в одном проекте ESP32
4.В проекте на ESP32 работать будут, испытывалось.
----------
По совместимости с разными видами контроллеров. Это одна из особенностей библиотек ecoins - мультиплатформенность.
Обычно все испытывается на стационарно сделанных стендах (фото было уже много в этой ветке):
1.Arduino Nano (AVR) (в него загружаются усеченные тесты или тест разбивается на несколько) из-за ограничения по памяти;
2.Arduino Mega (AVR);
3.ESP8266 (разные модели);
4.ESP32 (разные модели, в том числе M5Stack(в нем пины i2c немного иные);
3.Arduino DUE (архитектура SAM3);
4.Seeduino XIAO MO (архитектура SAMD21);
4.STM32F103C, STM32F103R, STM32F103V;
5.STM32F407V;
6.STM32F401CC.
Один и тот же тест загружается в разные контроллеры (кроме Nano при больших тестах) и выполняется без каких-либо доработок.
Тестовые пины, адреса для каждого из прописанного в библиотеке контроллеров (21 тип) прописаны в библиотеке. В конечном коде это занимает совсем не много памяти PROGMEM.
.

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

Разработки ecoins

#1016

Сообщение ecoins » 05.05.2021{, 08:16}

o615ye161 писал(а):
04.05.2021{, 23:51}
и если не сложно поясните принцип работы консоли?
Консоль получился как отдельный и мощный инструмент.
1.При отладке сложных проектов полезно прибегать к выводу рабочих параметров на консоль. Это можно сделать и стандартными блоками UART FLProg, но на практике это оказывается не очень удобно.
2.Через блок консоль можно выводить до 8-ми одновременно параметров типов byte,word(int16_t), bool. Будет еще float (в процессе оптимизации был выброшен и просто забыт). Эти переменные при выводе могут быть отформатированы по размеру поля.
Перед каждой группой выводимых переменных может добавляться отформатированный(или не отформатированый) по размеру поля префикс(текст до 80 символов) (хранится в PROGMEM). После вывода может добавляться суффикс (некоторые содержат код перевода строки). При необходимости разные блоки с выводом переменных могут объединяться в одну строку.
Вывод осуществляется по выбору - однократно, в каждом цикле, периодически, по изменению переменных, периодически при изменении переменных.
3.Некоторые параметры (например используемые пины) удобнее вывести вначале теста. Для этого каждый блок может быть привязан к одному из состояний консоли:
-"готовность консоли" (удобно для простых проектов);
-"вывод заголовков";
-"вывод сообщений"
4.Кроме вывода переменных есть дополнительные типы вывода:
- текст/линия - для дополнительного оформления выводимой информации;
- параметры контроллера - так много разных опций (параметры процессора, доступные пины (для ESP8266 и STM32 и в текстовой форме, интерфейсные пины (UART,i2c,SPI,CAN), сетевые параметры (в работе - Ethernet, Wi-Fi), рекомендуемые тестовые пины и адреса.
5.Вывод сканирования шины i2c. Для тестирования разных модулей удобно запускать в периодичном режиме - так мы проверяем работоспособсность разных модулей i2c.
--------------
Описание есть в самом блоке.
Если требуется примеры - пишите, создадим и выложим, они будут очень простыми.

Gordon0007
Сержант
Сообщения: 138
Зарегистрирован: 19.04.2018{, 13:37}
Репутация: 13
Имя: Павел

Разработки ecoins

#1017

Сообщение Gordon0007 » 06.05.2021{, 09:34}

ecoins, Добрый день, я так понял, что "01.Дисплеи типа LCD HD44780!" и "05_Дисплеи Nextion" так на новый редактор пока не переведены.

Хотелось бы узнать когда они выйду?
Просто я жду именованно их и платы расширения i2c MCP23017 в новом редакторе, что бы переделать свой проект :smile198:

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

Разработки ecoins

#1018

Сообщение ecoins » 06.05.2021{, 18:58}

Gordon0007 писал(а):
06.05.2021{, 09:34}
ecoins, Добрый день, я так понял, что "01.Дисплеи типа LCD HD44780!" и "05_Дисплеи Nextion" так на новый редактор пока не переведены.

Хотелось бы узнать когда они выйду?
Просто я жду именованно их и платы расширения i2c MCP23017 в новом редакторе, что бы переделать свой проект
Не придал значения, что это может быть важно.
Попробую побыстрее добавить перечисленные блоки, позднее напишу как быстро это может получиться.
В планах было переработать библиотеку lcd, но пока оставляю как есть.

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

Разработки ecoins

#1019

Сообщение ecoins » 08.05.2021{, 17:34}

o615ye161 писал(а):
25.04.2021{, 14:56}
Здравствуйте ecoins скажите пожалуйста возможно сделать блок для этого датчика, очень необходим для инкубатора, для контроля СО, какие можете предложить варианты?
Получил два датчика, но не смог запустить - не обнаруживается на шине i2c.
Проверял и на ESP32, и на MEGA2560 через конвертор 5v<->3v, тот же результат.
Пробовал и Reset к Vcc подтягивать - не помогает.
И пины sda, scl пробовал перебрасывать...
А Ваш экземпляр работает?
Без рабочего экземпляра начинать делать ПБ не могу.
Если у Вас работает, закажу еще раз в другом месте.
Сенсор BME280 с такой же разводкой опознается, а CSS811 (плата CJMCU-811) нет.
Попозже может по разбираюсь с самими платами - может резистор какой-то не тот впаяли, приходилось сталкиваться с подобным.

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

Разработки ecoins

#1020

Сообщение o615ye161 » 10.05.2021{, 23:52}

ecoins писал(а):
05.05.2021{, 07:48}
Мы предпочитаем использовать MCP23017
Скажите пожалуйста могу я использовать через ваш блок MCP23017 как входы с GPB1 по GPB6, а GPB0 как выход, ЭТО ВОЗМОЖНО?????

Отправлено спустя 4 минуты :
ecoins писал(а):
08.05.2021{, 17:34}
А Ваш экземпляр работает?
к сожалению я не смог найти для него каких то блоков и библиотек, поэтому решил обратиться к вам с этим вопросом

Отправлено спустя 6 минут 18 секунд:
ecoins писал(а):
08.05.2021{, 17:34}
но не смог запустить - не обнаруживается на шине i2c.
Single address select bit to allow alternate address to be selected

When ADDR is low the 7 bit I²C address is decimal 90 / hex 0x5A

When ADDR is high the 7 bit I²C address is decimal 91 / hex 0x5B.
Питание по даташиту MAX 3.6V
Вложения
55.png
products_sensor-co2-ccs811-with-case_ccs811-datasheet.pdf
(572.23 КБ) 28 скачиваний

Закрыто

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