Цитата(oran-be @ Feb 19 2008, 16:27)

Есть еще выход - использовать таймер 0 или 1. В этих таймерах флаг нельзя выставить аппаратно, а только сбросить, поэтому. что с контекстом ни делай. прерывания будут работать корректно.
Спасибо за ответ.
В вашем случае мне прийдется отказаться от timer2 вообще. Так как порт P4 находится в области sfr 0xC8 и контрол регистр таймера 2 находится по этому же адресу sfr. sfr page timer 0 или 1 = 0. И у таймер 2 sfr page = 0. А это означает, что сохранять в прерывании будет опять таки контрол регистр таймера 2 и восстанавливать опять же его. Значит или об использовании таймер 2 прийдется забыть, или искать другой путь решения.
Я пока пошел по 2-му пути.
Еще раз спасибо за ответ.
Удач.
PS. А как все же использовать асм вставки?????? Я думал сначала что с помощью вставок в прерывании просто вытащ все из стека (что кеил запихнул) проманипулирую с флагом таймера, а затем перейду на страничку сфр 0x0F и запихаю в стек то что уже нужно (ну в принципе что кеил уложил).
но не получилось.
Удачи.