Страница 3 из 3

вылет версии 3.0

Добавлено: 09.12.2017{, 12:19}
support
Sancho писал(а):CFC - можно. FLProg ближе к стандарту CFC, как мне кажется.
Ну не знал. ))) Надо ещё с кодесисиом повозиться.
Sancho писал(а):P.S. Позволю себе немного отвлечься от темы и, пока Автор здесь, спросить: планируется-ли возможность доступа к "глобальным переменным" из блока пользователя?
Нет не планируется. Зачем? Для этого существуют входы блока. Блоки пользователя подразумеваются как независимые от проекта инстансы, и как обращаться к переменным проекта, если в другом они могут быть совсем другие.

вылет версии 3.0

Добавлено: 09.12.2017{, 12:22}
pan
support писал(а):Зачем?
 для экономии памяти , а так же если блоки на разных платах то + еще промежуточная переменная

вылет версии 3.0

Добавлено: 09.12.2017{, 12:59}
support
А как Вы собираетесь при разработке блока предугадать какая переменная будет в целевом проекте? Если использовать глобальную переменную в качестве параметра, так параметр передается константой.
Я правда сейчас работаю на возможностью использовать в пользовательских блоках возможность прямого доступа к пинам контроллера

вылет версии 3.0

Добавлено: 09.12.2017{, 13:25}
rw6cm
support писал(а):Я правда сейчас работаю на возможностью использовать в пользовательских блоках возможность прямого доступа к пинам контроллера
Сделайте чтобы в declaresection можно было вставить данные из параметров пользователя в любое место кода,
а также можно было вставить весь дозволенный код #ifdef, #endif, #else, и т д (сейчас ужу все не помню)

вылет версии 3.0

Добавлено: 09.12.2017{, 13:27}
Sancho
При работе с массивами память уходит да глазах, тем более не получается создать массив in/out, т.е. принять, обработать, выдать дальше...
Приходится сначала создавать массив на плате, создавать ПБ с галочкой в ПБ "использовать один раз", пред-компилировать, что-бы посмотреть название массива в готовом коде IDE, а потом это название вставлять в коде блока для доступа к нему( глобальному массиву). Речь о С++.
С другой стороны, это штучные(единичные) проекты, можно немного самому заморочиться.

вылет версии 3.0

Добавлено: 09.12.2017{, 13:29}
support
Массивы в качестве параметра будут - это точно. Так же будут коммпорты. ну и как я говорил - пины контроллера. Сейчас как раз над этим уже третий день работаю

вылет версии 3.0

Добавлено: 09.12.2017{, 13:38}
pan
support писал(а):прямого доступа к пинам
а насчет прямого доступа к перенным к которвм подключены входы или выходы, такое возможно?
что б создавался "пустой" вход без переменной, а при компиляции переменная бралась та к которой подключен. 
в стандартных блоках вроде так.
экономия памяти на лицо и количество операций с переменными.
ну если конечно такое возможно.

П.С. пожалуй это всё уже в другую ветку надо.

вылет версии 3.0

Добавлено: 25.12.2017{, 21:43}
Labu55
pan писал(а):прямого доступа к перенным
Спасибо Вам огромное за вопрос.
Более полугода стеснялся задать этот-же вопрос ввиду моего непрограммистского профиля.
Собственно вопросПоказать
Ощутимо «ударился»об этот вопрос, когда при создании довольно скромного проекта, начал анализировать почему он кушает так много ресурсов в FLProg. Там использовались несколько  Пользовательских Блоков (моих на FBD и С, каких не так важно и встроенные в программу, здесь уже иногда не важно). Я пытаюсь говорить не о конкретном проекте, а о принципе. Выход первого блока (переменная- класса String)  является входом второго, выход второго (переменная класса String)-  входами 3-го, 4-го, 5-го и т.д., ит.п. Т.е. одни и те же данные (выхода) перезаписываются в несколько  переменных (входов) с теми же данными,- т.е. дублируются. Все они (переменные) объявляются как глобальные, но по факту они являются локальными, каждая в своём блоке. Расточительно? Может есть возможность сделать опцию некой «сквозной» переменной видимой с пользовательских блоков и перезаписываемую только с одного?
Спасибо, что дочитали до конца.
Предполагаю, что здесь по смыслу то-же, но по форме (описание)- другое, потому кажется излишним.

Добавлено (25.12.2017, 21:43)
---------------------------------------------
Labu55 писал(а):ввиду моего непрограммистского профиля
Похоже с новой версией мой "этот профиль" усугубился? Теперь программа предлагает добавить ещё одну промежуточную переменную (ликвидировать непосредственную обратную связь).

вылет версии 3.0

Добавлено: 25.12.2017{, 21:47}
pan
всё правильно предлагает. теперь так и будет. низя подавать в "зад"

вылет версии 3.0

Добавлено: 25.12.2017{, 22:19}
Labu55
pan писал(а):низя подавать в "зад
А для чего тогда установка значения переменной по умолчанию , и что произойдёт страшного, если в передней части программы переменная будет перезаписана/прочитана в следующем цикле? Или может если одна и та-же переменная будет продублирована н-раз, будет обрабатываться более корректно? Извините, конечно, за непонимание, но здесь похоже перемудрено. Перебирал свои старые проекты (чистил папки), так теперь почти на все ругается, хотя проекты рабочие. Я понимаю, что преследуется цель минимизации проблем у начинающих пользователей, ну а как же с пониманием принципа работы?

вылет версии 3.0

Добавлено: 25.12.2017{, 22:28}
pan
имеется ввиду прямую связь в зад низя.
переменными можно как хош

вылет версии 3.0

Добавлено: 25.12.2017{, 22:42}
Labu55
pan писал(а):имеется ввиду прямую связь в зад низя
А я имею ввиду, что у меня выход/вход пользовательских блоков - уже дублированные переменные теперь надо добавить ещё один дубль между ними.

вылет версии 3.0

Добавлено: 25.12.2017{, 22:46}
pan
Labu55, ну с пользовательскими вот так вот...