можно и так написатьКод:IF MinD1O AND NOT OldMinD1O THEN i:=1; ELSIF NOT MinD1O AND OldMinD1O THEN i:=0; END_IF; OldMinD1O:=MinD1O;
можно и так написатьКод:IF MinD1O AND NOT OldMinD1O THEN i:=1; ELSIF NOT MinD1O AND OldMinD1O THEN i:=0; END_IF; OldMinD1O:=MinD1O;
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Сам спростил, сам ответил. Решение нашел, не нашел ответа.
Строку OldMinD1O:=MinD1O; не выполнялась совсем. OldMinD1O всегда в false. Почему такое?
Переставил строку OldMinD1O:=MinD1O; в начало программы, заработало. OldMinD1O при присвоении MinD1O=true, тоже стала становиться true.
Затем переставил строку OldMinD1O:=MinD1O; промеж двух IFов. Тоже заработало. Затем вернул строку OldMinD1O:=MinD1O; на место где она не работала. И о чудо!!! Все стало работать!!
Это что? глюки компилятора CodeSys? И часто это бывает с ним такое? Когда абсолютно правильно написанный код просто не работает? А мне предстоит написать еще тысячи строк кода! И если это повторится как тогда вообще отлаживать сложные программы, когда простейшее условие и не работает по совершенно непонятной причине? Я в честно говоря шокирован.
Доброго здоровья!
Доброго здоровья!
Если ответить по существу нечего, промолчи и пройди мимо, за умного сойдешь.
Нет конечно, не единственный. До этого дошел пытаясь понять почему не работает. Есть и детектор фронта. Я в основном пишу на си и мне быстрее намного написать так, чем использовать библиотечные функции. Даже число в степень возвести лучше ручками, чем использовать EXPT(x,y). Ручками даже вещественные возводятся в 2 раза быстрее чем эта функция.
Доброго здоровья!
Мдя. Думал тут люди серьезные, а оказалось пара троллей ничего не могущих ответить и порекомендовать, но зато разбирающихся в балете. Адью.
Доброго здоровья!
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран