Новый редактор для создания пользовательских блоков.

Появился в версии 7.

Создаем свой блок. Вопросы, помощь знатоков.
vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#321

Сообщение vlad1451 » 29.07.2023{, 06:24}

AlexCrane писал(а):
28.07.2023{, 14:09}
vlad1451, Добавь к переменной UIID (идентификатор экземпляра). Есть кнопка такая в редакторе
Где прописываются параметры, нет этой кнопки. Сразу подумал что нужно как то привязать к UIID, вопрос как.
034.jpg

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#322

Сообщение aidar_i » 29.07.2023{, 06:30}

vlad1451, в коде после SP нажми правой кнопкой на мышку

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#323

Сообщение vlad1451 » 29.07.2023{, 08:08}

aidar_i писал(а):
29.07.2023{, 06:30}
vlad1451, в коде после SP нажми правой кнопкой на мышку
Когда пишешь код блока это понятно, суть в другом. Например, если в одном из блоков уже есть параметр "Текст", то при создании нового блока при попытке ввести параметр и идентичным именем, к нему прибавляются цифры (_1, _2 и т.д.). В итогу если есть несколько блоков с одинаковым именем параметра, то редактор их нумерует.

Отправлено спустя 2 минуты 36 секунд:
Я и предположил, что есть возможность параметр привязать к конкретному блоку, типа UIID.

Аватара пользователя
Phazz
Полковник
Сообщения: 2552
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 367
Откуда: Сургут
Имя: Анатолий

Новый редактор для создания пользовательских блоков.

#324

Сообщение Phazz » 29.07.2023{, 09:50}

Да ничего вы не сделаете. Только смириться.

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#325

Сообщение aidar_i » 10.08.2023{, 07:55}

В последней версии программы в проф редакторе расположение скетча в лооп тоже зависит от порядка вытаскивания блоков из библиотеки ПБ.
Сделал тестовый блок, в лооп ни в общих блоках, ни в экземплярах код не зависит от расположения блоков.
Посмотрите у себя тоже. В примере вытащил сперва 2й блок, потом 1й, в проекте их переставил , как нужно их расположить в скетче, но компилируется в порядке , как вытащил.
Тест редактора.flp
(238.26 КБ) 13 скачиваний
PS. Компилируется правильно только, если поставить в Место вставки блока в "Loop"/
Хотел GyverPortal перевести в профредактор, build расположить в loop, чтобы блоки не зависели от порядка вытаскивания.
В функциях зависит только от порядка вытаскивания, даже с платами невозможно сдвинуть, как в сетап.
Есть также необходимость создать Перенос кода, как в параметрах и условиях.
Одинаковые параметры, хотя и находятся в разных блоках , невозможно создать, добавляется цифра на последующие, очень неудобно.
Нужна возможность сохранения экземпляров блоков или папки с такими блоками отдельно и возможность импортирования их в общий блок. Потребность такая возникла при работе над общим блоком нескольких человек.
Хотел форумчанин помочь мне , но редактор не позволил.

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#326

Сообщение vlad1451 » 16.08.2023{, 09:43}

Есть два мульти-блока, созданные отдельно друг от друга, но завязаны на работу с одной библиотекой. Внутри себя они синхронизированы. При использовании в проекте блоки из разных мульти-блоков не корректно работают друг с другом, нарушается порядок блоков в коде. При объединении всех блоков в один сразу появляются "тормоза" редактора. Как заставить их корректно работать?
test_001.zip
(5.64 МБ) 11 скачиваний
Отправлено спустя 1 час 32 минуты 23 секунды:
Было бы не плохо иметь возможность сохранять (экспортировать) блок из мульти-блока, Про импорт так же вопрос поднимали, редактор принимает только файлы ubl, хотелось бы ещё поддержку файлов ubi.

Naladchik
Капитан
Сообщения: 822
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 151
Откуда: Новосибирск
Имя: Павел

Новый редактор для создания пользовательских блоков.

#327

Сообщение Naladchik » 16.08.2023{, 12:11}

Использование в одном проекте блоков из одинаковых мультиблоков разных версий это очень плохая идея
СпойлерПоказать
111.png
В мультиблоках чаще всего есть общий код для всех блоков, соответственно при использовании разных версий мультиблоков в одном проекте он дублируется, что неминуемо приводит к ошибкам.
Win10-64. FLProg Portable.
Изображение

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#328

Сообщение aidar_i » 16.08.2023{, 12:36}

Naladchik писал(а):
16.08.2023{, 12:11}
мультиблоках чаще всего есть общий код для всех блоков
здесь нет общего кода. Попытались объединить, но программа тормозила на редакторе, когда блоков набирается .
Отдельно не тормозит, но блоки располагаются в пределах блоков разделов, во внутрь не пускают блоки другого блока раздела..

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#329

Сообщение vlad1451 » 16.08.2023{, 16:52}

Naladchik писал(а):
16.08.2023{, 12:11}
Использование в одном проекте блоков из одинаковых мультиблоков разных версий это очень плохая идея
СпойлерПоказать
111.png
В мультиблоках чаще всего есть общий код для всех блоков, соответственно при использовании разных версий мультиблоков в одном проекте он дублируется, что неминуемо приводит к ошибкам.
Вы скорее всего не так меня поняли (плохой из меня объяснитель)... Есть несколько блоков, созданных для одной библиотеки. Созданы отдельно, синхронизированы. Блоки сгруппированы по функционалу.
041.jpg
041.jpg (20.64 КБ) 814 просмотров
В тестовом проекте были использованы блоки формирования страницы из одного блока, а содержимое из других блоков.
Предыдущая версия блоков (на старом редакторе) работает корректно. Новые блоки в код "ложатся" как попало, не так как расположены на платах.
039.jpg
040.jpg
042.jpg
Отправлено спустя 2 минуты 3 секунды:
test_001.zip
(3 МБ) 12 скачиваний

ivansidor012
Сержант
Сообщения: 279
Зарегистрирован: 10.09.2020{, 14:37}
Репутация: 43
Имя: Иван

Новый редактор для создания пользовательских блоков.

#330

Сообщение ivansidor012 » 16.08.2023{, 17:21}

vlad1451 писал(а):
29.07.2023{, 06:24}
Новые блоки в код "ложатся" как попало
не "как попало", а согласно хронологии их вытаскивания на плату (и это для любого кода из setup секции)

много раз уже этот нюанс обсуждался)))

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#331

Сообщение vlad1451 » 16.08.2023{, 17:37}

ivansidor012 писал(а):
16.08.2023{, 17:21}
vlad1451 писал(а):
29.07.2023{, 06:24}
Новые блоки в код "ложатся" как попало
не "как попало", а согласно хронологии их вытаскивания на плату (и это для любого кода из setup секции)

много раз уже этот нюанс обсуждался)))
На плату вытаскивались именно в той последовательности, что на фото.
043.jpg
044.jpg
Так нагляднее?

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#332

Сообщение aidar_i » 16.08.2023{, 18:03}

ivansidor012 писал(а):
16.08.2023{, 17:21}
vlad1451 писал(а):
29.07.2023{, 06:24}
Новые блоки в код "ложатся" как попало
не "как попало", а согласно хронологии их вытаскивания на плату (и это для любого кода из setup секции)

много раз уже этот нюанс обсуждался)))
Обсуждалось, но для старого редактора, в новом более запутаннее, мы с Владимиром бьемся уже больше недели. Когда блоков начинается становится больше - тормозит.

Кстати, в новый редактор можно импортировать блоки из старого редактора, последние блоки портала импортировал, правда редактирование их трудоемко из за тормознутости редактора от такого количества блоков.
А без редактирования правильность работы блоков нарушается.

ivansidor012
Сержант
Сообщения: 279
Зарегистрирован: 10.09.2020{, 14:37}
Репутация: 43
Имя: Иван

Новый редактор для создания пользовательских блоков.

#333

Сообщение ivansidor012 » 16.08.2023{, 18:33}

vlad1451 писал(а):
29.07.2023{, 06:24}
Так нагляднее?
а к чему на скрине порядок компиляции блоков?
эта опция не влияет на тот нюанс, который мы обсуждаем)

Отправлено спустя 1 минуту 11 секунд:
aidar_i писал(а):
16.08.2023{, 18:33}
Обсуждалось, но для старого редактора
в новом редакторе все тоже самое - примерно год назад эта тема поднималась...но год назад ты сказал что тебе это неинтересно и будешь юзать старый редактор, ибо тебя в нем все устраивает)))

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#334

Сообщение aidar_i » 16.08.2023{, 18:53}

ivansidor012 писал(а):
16.08.2023{, 18:34}
в новом редакторе все тоже самое - примерно год назад эта тема поднималась...но год назад ты сказал что тебе это неинтересно и будешь юзать старый редактор, ибо тебя в нем все устраивает)))
К сожалению не все тоже самое. Каждый раздел там работает по своему, тестирую уже неделю и больше.
Старый редактор меня устраивает, тк даёт экономию времени на создание блоков, небольшой вес блоков, несмотря некоторые недостатки, я им стараюсь пользоваться.
У нового возможностей больше, но он громоздкий, хотел перевести портал на него , по желаниям некоторых форумчан, пока неудачно, если кто хочет поучаствуйте в переводе, критиковать и я умею, вот тестировщика искал, никто не отозвался, думаю, нет смысла переводить на новый редактор. Просто сосредоточусь на тестах и исправлениях недостатков.

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#335

Сообщение vlad1451 » 06.10.2023{, 07:37}

Доброго всем времени суток. Хотел бы вернуться к теме вывода параметра из настроек блока на его вход. Пытался реализовать это в блоке для MAX31865. Есть потребность удалённо (через web интерфейс) изменять настройки блока. Вроде и проштудировал всю тему, но на сростается как то. Блок настроек сделал, переменная объявлена, но в конечную функцию данные со входа не попадают.

Делаю так:

<Wire.Name>=<In_Wire>;
wire=&<Wire.Name>[0];
thermo.begin(MAX31865_wire);


В коде получается так:

void setup()
{
// * * * * * * * * * * * * * * * * * * * * * * * * * *
_gtv1=(String("_4WIRE"));
wire=&_gtv1[0];
thermo.begin(MAX31865_wire);
// * * * * * * * * * * * * * * * * * * * * * * * * * *
}


Где я что пропустил?
Test_Max.flp
(494.46 КБ) 11 скачиваний
Отправлено спустя 3 часа 54 минуты 58 секунд:
P.S. Вся "фишка" в том, что проблема не в конвертации, а в том что функция thermo.begin(MAX31865_*** не воспринимает данные. В библиотеке функция имеет 3 значения: MAX31865_2wire, MAX31865_3wire, MAX31865_4wire. В блоке через параметры выбирается нужное значение и подставляется к MAX31865_. А подставление переменной не проходит.

Отправлено спустя 20 минут 45 секунд:
P.S. Пробовал не "дробить" функцию (в ковычках), на вход блока настроек подавал целиком (MAX31865_3wire). В консоль выдаётся как надо, но функцией на воспринимается. Причём эта же функция прекрасно работает (даже раздробленая) когда используется стандартный параметр.

Naladchik
Капитан
Сообщения: 822
Зарегистрирован: 04.10.2015{, 19:10}
Репутация: 151
Откуда: Новосибирск
Имя: Павел

Новый редактор для создания пользовательских блоков.

#336

Сообщение Naladchik » 06.10.2023{, 12:25}

vlad1451 писал(а):
06.10.2023{, 11:53}
"...Хотел бы вернуться к теме вывода параметра из настроек блока на его вход..."
Никак не могу понять в чем смысл этого действия?
Что такое вход? Это то, что может принимать информацию, изменяющуюся по мере выполнения программы.
Что такое параметр? Это то, что служит для задания определенных начальных значений, которые, чаще всего, в процессе выполнения программы неизменны.
При этом очень часто параметр может принимать значение из строго определенного набора (как раз данный случай).
И зачем одно подменять другим?
Win10-64. FLProg Portable.
Изображение

vlad1451
Сержант
Сообщения: 133
Зарегистрирован: 06.09.2019{, 19:23}
Репутация: 7
Имя: Владимир

Новый редактор для создания пользовательских блоков.

#337

Сообщение vlad1451 » 06.10.2023{, 12:34}

Naladchik писал(а):
06.10.2023{, 12:25}
vlad1451 писал(а):
06.10.2023{, 11:53}
"...Хотел бы вернуться к теме вывода параметра из настроек блока на его вход..."
Никак не могу понять в чем смысл этого действия?
Что такое вход? Это то, что может принимать информацию, изменяющуюся по мере выполнения программы.
Что такое параметр? Это то, что служит для задания определенных начальных значений, которые, чаще всего, в процессе выполнения программы неизменны.
И зачем одно подменять другим?
Смысл в том, что к устройству будут подключаться датчики с разным подключением. Что бы не прошивать под новый датчик, проще менять тип подключения.

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новый редактор для создания пользовательских блоков.

#338

Сообщение aidar_i » 07.10.2023{, 07:57}

vlad1451 писал(а):
06.10.2023{, 11:53}
библиотеке функция имеет 3 значения: MAX31865_2wire, MAX31865_3wire, MAX31865_4wire
Создайте 3 кода и подключайте код по условию.
На вход подавайте, например, 1,2,3.
Но нужно будет перезагружать МК.

Ответить

Вернуться в «Разработка пользовательских блоков»