FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Суббота, 03.12.2016, 22:44
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Блок пользователя содержащий другие блоки пользователя.
Блок пользователя содержащий другие блоки пользователя.
Max
Дата: Пятница, 24.06.2016, 11:39 | Сообщение # 1
Гуру
Группа: Проверенные
Сообщений: 482
Награды: 14
Репутация: 4
Статус: Offline
Кто пробовал делать блоки пользователя содержащие другие блоки пользователя и в свою очередь имеющие в себе еще блоки пользователя? Ну, по типу матрешки.
Да уж...

Проблем не возникнет с компиляцией и работоспособностью?


Максим (VK - Максим Дунаевский)
 
Boroda Дата: Пятница, 24.06.2016, 12:15 | Сообщение # 2
Майор
Группа: Проверенные
Сообщений: 150
Награды: 7
Репутация: 8
Статус: Offline
В пользовательский блок FBD вообще нельзя воткнуть другой пользовательский блок - нет вкладки "пользовательские".

Сообщение отредактировал Boroda - Пятница, 24.06.2016, 12:16
 
slavas Дата: Пятница, 24.06.2016, 12:29 | Сообщение # 3
Подполковник
Группа: Проверенные
Сообщений: 264
Награды: 6
Репутация: 5
Статус: Offline
огород в огороде, проще нарисовать пользовательский блок с использованием элементов других пользовательских блоков или идей.
 
Boroda Дата: Пятница, 24.06.2016, 13:14 | Сообщение # 4
Майор
Группа: Проверенные
Сообщений: 150
Награды: 7
Репутация: 8
Статус: Offline
Цитата slavas ()
огород в огороде

А как, допустим, вставить ПБ на СИ состоящий из одной строчки (например, Out=In1 xor In2 xor In3 xor In4;) в ПБ на FBD? Стандартного-то блока XOR для переменных типа Byte нет. Лепить FBD огород:
- прочитать бит0/1/2/3/4/5/6/7 переменной IN1
- прочитать бит0/1/2/3/4/5/6/7 переменной IN2
- каждую пару заксорить
- записать биты0/1/2/3/4/5/6/7 в переменную темп
- прочитать бит0/1/2/3/4/5/6/7 переменной темп
- прочитать бит0/1/2/3/4/5/6/7 переменной IN3
- каждую пару заксорить
- записать биты0/1/2/3/4/5/6/7 в переменную темп
- и т.д.

Представляете себе размер коробочки?

Тоже самое с побитовым сдвигом вправо/влево (ну тут можно делением/умножением обойтись), AND и OR.


Сообщение отредактировал Boroda - Пятница, 24.06.2016, 13:26
 
Max Дата: Пятница, 24.06.2016, 14:10 | Сообщение # 5
Гуру
Группа: Проверенные
Сообщений: 482
Награды: 14
Репутация: 4
Статус: Offline
Комментирую дальше. Вероятно, что блоки не должны будут содержать одинаковые (имена) переменные.

Добавлено (24.06.2016, 14:10)
---------------------------------------------

Цитата Boroda ()
В пользовательский блок FBD вообще нельзя воткнуть другой пользовательский блок - нет вкладки "пользовательские".
Вот если в пользовательском блоке нет одинаковых переменных, или вообще нет переменных, то по идее его можно было бы использовать в своем блоке? Было бы крайне удобно и не надо было бы повторять логику нужного имеющегося блока.


Максим (VK - Максим Дунаевский)
 
Boroda Дата: Пятница, 24.06.2016, 14:28 | Сообщение # 6
Майор
Группа: Проверенные
Сообщений: 150
Награды: 7
Репутация: 8
Статус: Offline
Цитата Max ()
если в пользовательском блоке нет одинаковых переменных

Так они и так перед компиляцией преобразуются.



Добавлено (24.06.2016, 14:28)
---------------------------------------------
Правда тогда наверное переменная блока в блоке будет например такой: byte Temp_125723286_1_789723286_1, а если вложение будет десятым, то сами представляете, что будет. Тут палка о двух концах... А когда длина имени переменной превысит 255 символов - у компилятора крыша съедет...


Сообщение отредактировал Boroda - Пятница, 24.06.2016, 14:41
 
slavas Дата: Пятница, 24.06.2016, 15:15 | Сообщение # 7
Подполковник
Группа: Проверенные
Сообщений: 264
Награды: 6
Репутация: 5
Статус: Offline
а как вы вообще собираетесь вставлять блоки?
 
Boroda Дата: Пятница, 24.06.2016, 16:59 | Сообщение # 8
Майор
Группа: Проверенные
Сообщений: 150
Награды: 7
Репутация: 8
Статус: Offline
Цитата slavas ()
а как вы вообще собираетесь вставлять блоки?
А пока никак не получится, и предположу, что Автор так же думает, потому как базовай функционал писался давно и все уже забылось. А трогать работающее чревато последствиями.

Добавлено (24.06.2016, 16:59)
---------------------------------------------
Поэтому, если надо сделать какую-либо хитрую коробочку - открываю Arduino.cc или Arduino.ru и пытаюсь на СИ наваять, благо опыта в программировании на ST, Асме и Бейсике навалом.


Сообщение отредактировал Boroda - Пятница, 24.06.2016, 17:01
 
Max Дата: Пятница, 24.06.2016, 17:26 | Сообщение # 9
Гуру
Группа: Проверенные
Сообщений: 482
Награды: 14
Репутация: 4
Статус: Offline
Цитата Boroda ()
А пока никак не получится

Ну, это понятно...
Есть свои специфичные блоки (для себя) и хотелось бы их задействовать (так же для себя) не делая повторно работу, которую уже делал... Вот и весь смысл темы.


Максим (VK - Максим Дунаевский)
 
Форум » Основной » Спросить у знатоков » Блок пользователя содержащий другие блоки пользователя.
Страница 1 из 11
Поиск:

FLProg © 2016
Яндекс.Метрика