[an error occurred while processing this directive]
|
Предположим есть таймер timer (16 - битовое целое), который прерыванием увеличивается на 1 каждую миллисекунду.
Есть код, которыйберет это значение и с чем-то сравнивает.
Нет никакой гарантии, что в момент, когда программа возьметодин байт, произойдет прерывание и при взятии программой второго байта итоговое значение будет ошибочным.
Вариант - запрещать прерывания, копировать значение переменной в некую промежуточную переменную, разрешать прерывания и использовать далее промежуточную переменную.
Есть-ли способ указать атрибут переменной таким образом, что-бы перед доступом к такой переменной (а компилятор, обычно сначала сбрасывает такие переменные в регистры) прерывания запрещались и потом разрешались в автоматическом режиме?