ecoins, Посмотрел внимательнее ваш вариант, на сколько я понял первая плата для замера цикла используется и только-то?
В флпрог на есп строго прописаны пины на i2c (0,2) Могу я вашими средствами поменять их? Блок в первых постах я скачал.
Мы всегда вставляем такую плату, если не используем диспетчер, в котором такой выход уже предусмотрен (control).
Да, мы специально создали блок, который настраивает пины sda,scl и частоту шины.
Разработки ecoins
Добавлено: 23.07.2019{, 11:14}
ecoins
Начало недели отмечено дополнительным интересом к линейке контроллеров на STM32:
1.Ранее мы писали, что нас привлекает линейка фирмы Фрактал (Зеленоград), с которой мы имеем большой опыт работы и у которой по нашему мнению удачный форм-фактор и замечательные периферийные модули. Мы не только подключились к шине этих модулей (сейчас через i2c) контроллером на STM32, но и загрузили программу на FLProg в их родной контроллер. Сама система Фрактал использует внутренний специализированный для их модулей Basic с поддержкой прерываний и таймеров. Очень интересная и мощная разработка. При этом ,по нашему мнению, FLProg предоставляет иные, существенно большие возможности с существенно более низким порогом вхождения.
2. Мы подключились к процессорной плате программируемого реле ПР-200 - фирма Овен (спасибо Rovki - он здесь и вдохновитель, и оборудование предоставил). Сейчас разбираемся с архитектурой этой устройство - оно на достаточно продвинутом контроллере STM32 - будем пытаться загружать туда проекты на FLProg.
3. Мы разобрали программируемое реле ПР-114 фирмы Овен - там похоже вообще все просто и понятно - встроим туда адаптер (пока думаем какой и через какие способы загрузки) и будем грузить туда проекты FLProg.
———
Перечисленное выше оборудование годится для промышленных систем автоматизации - необходимо только, чтобы и загружаемое в него программное обеспечение (на FLProg + правильные библиотеки) соответствовали требованиям к промышленным системам автоматизации.
Задача не тривиальная, команда ecoins последовательно пытается её решить.
Разработки ecoins
Добавлено: 26.07.2019{, 07:35}
ecoins
БЛОКИ ДЛЯ РАБОТЫ С КОНСОЛЬЮ
Потратили некоторое время на доработку библиотеки и блоков для работы с консолью. Для нас тема важная, так как при отладке мы активно используем вывод в UART. Стандартный блок "Отправка в UART" хорош, но есть некоторые сложности:
1. Для контроллеров с Native USB портом (Leonardo, Esplora, Zero, Due MKR Family, STM32) готовность консоли появляется только после подключения к ней физического устройства (например: компьютер, клавиатура, мышь и т.п.) и потому есть некоторые трудности в использовании на этих контроллерах.
2.На входе стандартного блока ожидается переменная String, а это значит, что появление только одного такого блока без вывода на него "тормозит" работу - для NANO около 200мкс.
Кроме того есть дополнительные желания:
1.Добавление перед выводом переменной заголовка.
2.Добавление после вывода переменной дополнительного символа. Удобно, когда переменные выводятся в одну строку- можно разделить их пробелом или подчеркиванием или т.п.
3.Упростить использования имеющихся возможностей - использование разных форматов вывода DEC,HEX,BIN,FLOAT,CHAR,STRING, Time (добавляется впереди 0, если значение <10), управление ПЕРЕВОДОМ СТРОКИ (есть/нет), одноразовый вывод, вывод по изменению, вывод по внешнему событию.
------------------------------------
Сам проект:
------------------------------------
Сравнение быстродействия работы на разных контроллерах:
Nano - 103mcs, ESP8266 - 35mcs, ESP32 - 7mcs, STM32F103C -35mcs(как у ESP8266)
Разработки ecoins
Добавлено: 26.07.2019{, 07:37}
ecoins
Пользовательские блоки (они почти все есть и в проекте):
--------------------------------
Представленные возможности могут быть полезны не только при отладки проектов, но и как вывод переменных на консоль в самих проектах.
Разработки ecoins
Добавлено: 26.07.2019{, 23:48}
eric25
Простой пример использования разработанных блоков в FLprog и переработанных библиотек для вывода значений на LCD дисплей переменной типа Int в форматах DEC, HEX, BIN и переключения заголовков
ecoins, посмотрите пожалуйста проект. Не компилируется, если присутствует диспетчер задач.
Подправил проект, работает. По деталям и особенностям оформления - задавайте вопросы.
У Вас в проекте было два дисплея - стандартный и ecoins - первый точно тормозил.
Похоже аккуратно надо использовать клеммы - они должны быть объявлены раньше их использования. Почему то проект выскакивал с ошибкой FLProg - мне показалось по этой причине, но тщательно гипотезу не проверял. Поэтому работу с переменными переделал на структуры.
Прикрепляю новые библиотеки - в них для дисплея счет идет от 1 -как в дисплее FLProg.
Логическим анализатором проверял - более чем приемлемое быстродействие.
Успехов.
Пожалуйста, помещайте новые библиотеки еще и в первый пост. Желательно с датой обновления.
Разработки ecoins
Добавлено: 31.07.2019{, 16:38}
olddolin
Те же грабли и тот же лоб, всё один к одному. Библиотеки менял, блоки из последних выложенных в №274 ДЮАИР. Попробовал на есп, компилируется, но не проверял пока работу