Цитата(Т.Достоевский @ Jun 12 2007, 02:39)

А что такой возможности в embedded средах нет, НЕВЕРЮ!
А зря.
Цитата(Т.Достоевский @ Jun 12 2007, 02:39)

Кстати про __raw есть только в пдф на мср, на авр нет!
Там оно называется или __task или __C_task.
Цитата(Т.Достоевский @ Jun 12 2007, 02:39)

Проверял через поиск!
Почему бы вам просто не прочитать весь раздел описания, посвященный ключевым словам?
Цитата(Т.Достоевский @ Jun 12 2007, 02:39)

Хотя работает.
Или наоборот, не работает, просто не вызывает ошибок при компиляции?
Ваша ошибка в самом алгоритме, вам на нее =AVR= на сахаре намекал. Вам надо подготовительную часть кода выполнить не в начале, а в конце прерывания:
Код
__interrupt
{
std rxx,-Y //мк сохраняет все регистры используемые далее в С
~~~~~
std rxx,-Y
PORTx.y =1;//защелкнуть в защелке
__enable_interrupt(); // уже можно разрешить вложенные
//подготовить новый data
PORTx.y =0;
PORTxx=data;
}
А вообще прислушайтесь к тому, что говорит
rezideent - Если у вас проблемы с индикацией от джиттера в несколько тактов, то надо менять алгоритм (или вообще ваш подход к построению алгоритмов), а не пытаться насиловать компилятор.