Дополнения к блоку CODE
Добавлено: 26.08.2016{, 18:09}
Создавая блоки CODE , сталкиваюсь с большим на мой взгляд не удобством.
Заключается оно в том, что к блоку нельзя подключать другие блоки увеличивающие его функциональные возможности.
В результате приходится, или делать монстров многоножек ( на все случаи в жизни), которые без полезно съедают место,
или под каждую задачу писать отдельный блок, что в свою очередь лишает его универсальности.
Предлагаю вариант как это можно исправить. Чтобы много не писать, начну с примера.
Создаю блок работающий на прерываниях одного из внутренних таймеров ардуины.
В данном случае блок можно использовать в проекте только раз.
Но сколько нужно будет задач с индивидуальным таймером в этом блоке, пока не известно (может одна, может десять).
Что бы выйти из этой ситуации нужно всего лишь разрешить другому блоку использовать его функцию.
Как я себе это представляю:
В блоке ниже опции «разрешить использовать только один раз» Поставить еще пару чек боксов, Master и Slave.
В блоке мастера создаем все необходимое для полноценной работы блока, но с минимумом требуемых задач.
И допустим рядом с «FunctionSection» будет окошко«MasterSection»
в котором ПКМ можно вставить объявленные переменные или функции, для общего использования с блоками Slave.
В блоке Slave пишется только задача, расширяющая, или дополняющая функции Mastera, использующая его переменные, или функции.
Чтобы заработал пример ниже,
нужно всего то удалить созданный блоком Slave дублера функции.
По сути, он должен дописывать код в уже созданную мастером функцию.
Если это возможно как то реализовать, откроются большие возможности для творчества.
п\с Может кто то еще предложит идеи.
Если кто то захочет повторить данный пример, надо дописать в скетч два номера описанные здесь
Заключается оно в том, что к блоку нельзя подключать другие блоки увеличивающие его функциональные возможности.
В результате приходится, или делать монстров многоножек ( на все случаи в жизни), которые без полезно съедают место,
или под каждую задачу писать отдельный блок, что в свою очередь лишает его универсальности.
Предлагаю вариант как это можно исправить. Чтобы много не писать, начну с примера.
Создаю блок работающий на прерываниях одного из внутренних таймеров ардуины.
В данном случае блок можно использовать в проекте только раз.
Но сколько нужно будет задач с индивидуальным таймером в этом блоке, пока не известно (может одна, может десять).
Что бы выйти из этой ситуации нужно всего лишь разрешить другому блоку использовать его функцию.
Как я себе это представляю:
В блоке ниже опции «разрешить использовать только один раз» Поставить еще пару чек боксов, Master и Slave.
В блоке мастера создаем все необходимое для полноценной работы блока, но с минимумом требуемых задач.
И допустим рядом с «FunctionSection» будет окошко«MasterSection»
в котором ПКМ можно вставить объявленные переменные или функции, для общего использования с блоками Slave.
В блоке Slave пишется только задача, расширяющая, или дополняющая функции Mastera, использующая его переменные, или функции.
Чтобы заработал пример ниже,
СпойлерПоказать
СпойлерПоказать
Если это возможно как то реализовать, откроются большие возможности для творчества.
п\с Может кто то еще предложит идеи.
Если кто то захочет повторить данный пример, надо дописать в скетч два номера описанные здесь