[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
код см. ниже
глюк (глюк ли ???) в следующем: курсор стоит на строчке cli(); и в дизассемблере и в трассировщике это видно - вручную генерю прерывание установкой SPIF в 1 - СТУДИЯ ВЫПОЛНЯЕТ CLI(), помеченный как (глюк) ПОТОМ ВЫПОЛНЯЕТ ЕЩЕ ОДИН CLI(), положенный по закону, выполняет обработчик прерывания, потом, как положено по закону sei() и уходит на строчку if(условие1)
ПРИ РАЗРЕШЕННЫХ ПРЕРЫВАНИЯХ !!!
в чем дело ? как бороться ? какие еще бывают отладчики (кроме х#@ни типа IAR C_SPY)?
for(;;) // main loop
{
cli(); // (глюк)
if(условие1)
{
//тут код 1
}
sei();
if(условие 2)
{
//тут код 2
}
}
E-mail: info@telesys.ru