Jean Labrosse (26.10.2005 13:28, просмотров: 1) ответил JeDay на Вопросик по синтаксису иаровского асма ...
К сожалению (или счастью ;) не имел дела с Atmega128 и IAR. Просто у Вашей исходной проблемы есть простое объяснение, не зависящее от конкретной платформы: Пока из прерывания не вызывается OS*Post, вызов OSIntExit НИЧЕГО НЕ ДЕЛАЕТ, т.е. все могло более-менее работать. При вызове OS*Post появляется более приоритетная задача готовая к выполнению, поэтому в OSIntExit происходит переключение контекста. Код в начале ISR как раз и формирует контекст текущей задачи. В Вашем случае в стеке находилось совсем не то что ожидалось в OSIntExit, и система падала.
Good luck!