Ответ: Переменная экрана eeprom?
Много раз уже писано, но повторю:
1) писать часто во встроенную память - точно не стоит. Из-за ошибки в счетчике наработки (писали ежесекундно вместо раз в минуту) - 2G убили меньше чем за год (у пикселя с этим еще хуже, емнип).
2) в дополнительный модуль памяти FROM - без проблем, его ресурс по записям (в тиках) превосходит срок жизни самого контроллера. Чтобы любая запись была на модель памяти - надо в левом верхнем углу поляны поставить любой блок памяти, которым и занять всю внутреннюю память (подробности в хелпе).
ваш случай
3) SMArt всегда пишет во внутреннюю память, то есть её убивает как в п.1.
Решений здесь возможо два:
а) если это не основной экран пикселя (а тот, который только изредка вызывается оператором) - поставьте перед переменной SMArt D-регистр и записывайте его только когда экран активен;
б) если это основной экран (лично я считаю моветоном использовать функцию экрана настроек для мониторинга, ну да ладно) - то не остается ничего иного, как обновлять переменную реже. То есть перед переменной SMArt ставить все тот же D-регистр, но для записи используйте фильтр: входную величину подаёте на "длинный" (скажем, в минуту) spdelay, все выходы которого на элемент сравнения, который через OR записывает данные в регистр, и для учета сильных отклонений ставим MUX и компараторы: (например, если критично отклонение на 3% - и два элемента сравнения: выход регистра * 0,97 и выход регистра * 1,03). соответствующие выходы компараторов цепляем к тому же OR...
Но гораздо правильнее - все же перейти к варианту 3а.
|