Работаю с IAR под ARM128. Проект линкуется нормально, а при попытки записать flash выдает сообщение "writing new keyes is not allowed" и дальше писать в флэш отказывается.
Происходит это если я добавляю некий код в обработчик прерывания. Так скажем есть такой код:
case CIM_TAP:
ADISR1 = 0x00FF;
while (!(ADSR & GP1_END))
;
adcSensors[0] = iirFilter(ADDR0, &memSensors[0]);
adcSensors[1] = iirFilter(ADDR1, &memSensors[1]);
adcSensors[2] = iirFilter(ADDR2, &memSensors[2]);
adcSensors[3] = iirFilter(ADDR3, &memSensors[3]);
adcSensors[4] = iirFilter(ADDR4, &memSensors[4]);
adcSensors[5] = iirFilter(ADDR5, &memSensors[5]);
adcSensors[6] = iirFilter(ADDR6, &memSensors[6]);
adcSensors[7] = iirFilter(ADDR7, &memSensors[7]);
break;
при таком раскладе выводится то сообщение о котором сказано выше, а если убрать несколько строчек кода, скажем оставить только одну строчку вместо 8-и:
adcSensors[0] = iirFilter(ADDR0, &memSensors[0]);
то все нормально пишется в флэш.
Встречался кто-нибудь с такой херней? Как с ней бороться?