Я завел обр связь с вых функции на вход и получил возможность на ST писать свои счетчики, триг со всякой нужной мне логикой. мне показалось, что это удобно и очень компактно. Интересно, кто нибудь так делал?
Я завел обр связь с вых функции на вход и получил возможность на ST писать свои счетчики, триг со всякой нужной мне логикой. мне показалось, что это удобно и очень компактно. Интересно, кто нибудь так делал?
Это не ваша заслуга, а ваша невнимательность, другие(в том числе и я) так давно(всегда) делали для удобства!
https://owen.ru/forum/showthread.php?t=35810
Энергонезависимость.PNG
Последний раз редактировалось Сергей0308; 30.01.2022 в 22:53.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
быстродействие получают с inline за счёт убирания преамбулы и выхода из функции. Но это работает за счёт размера кода и в какой-то момент код, 100% попадающий в кэш вылазит за него и тут, вдруг, в 3-4 раза начинает медленнее выполняться. И вся "оптимизация" идёт в пустыню Наска. Так что утверждать, что в ПР макросы быстрее функций можно на какой-нибудь нанопрограмме. А вот на больших проектах это не так.
Тролль-наседка, добрый, нежный и ласковый
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Дефектов в самом деле много. Плохо, что нельзя вставить в макрос, нет глоб переменных. Но что есть, тоже много дает, если освоить.
Функция преобразования для датчика температуры KTY81-110, интерполяция на основе данных даташита по средним (нормальным) значениям:
function KTY81_110_To_Temp: real; //Преобразование сопротивления датчика KTY81_110 в градусы
var_input //объявление входных переменных
resist : real; //входное сопротивление
end_var
var //коэффициенты кубического полинома
k1 : real := 1.76498e-8;
k2 : real := 0.0000953607;
k3 : real := 0.265696;
k4 : real := 162.834;
end_var
KTY81_110_To_Temp := k1*resist*resist*resist - k2*resist*resist + k3*resist - k4;
end_function
все классно, но полиномиальная функция постоянно меняет знаки между степенным множителями, потому универсальную функцию не сделать.
Да нормально всё с полиномом.
Взял циферки из даташита, скопипастил в эксель, и он мне любезно полином подобрал.
Если полином подобрать не под полный диапазон из даташита, а только под тот, с которым собираешься работать, то точность будет заметно выше.
-------------
Оказалось что это сообщение было юбилейным, 1000. Какой же я старый...
Последний раз редактировалось BETEP; 18.02.2022 в 21:56.
Может кому пригодится в помощь: файл excel, подготавливает ссылки с данными на сайт WolframAlpha, для нескольких типов аппроксимации