 Charlie (21.06.2007 14:03, просмотров: 1) ответил bus16 на Можно поподробнее по проблемам с GCC?
 Charlie (21.06.2007 14:03, просмотров: 1) ответил bus16 на Можно поподробнее по проблемам с GCC?
Пролог и эпилог функций обработки прерываний генерируется неправильно (у 4.2.0 не проверял). Лечится двумя способами 1) исправленный компилятор напр. от Klen по ссылке и было обсуждение на http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/
http://www.klen.org
Электрониксе 3.10.2006 2) см ниже  и пример у WinARM
#define INTERRUPT_PROLOG() asm volatile("STMDB SP!,{R0-R12,LR}\n")
#define INTERRUPT_EPILOG() asm volatile("LDMIA SP!,{R0-R12,LR}\nSUBS  R15,R14,#0x0004\n") 
#define IRQ_PROC __attribute__((naked))
void _100HzHandler (void) IRQ_PROC;
void _100HzHandler (void)
{
 INTERRUPT_PROLOG();
 _100Hz_Serv();
 EXTINT |=0x1;
 VICVectAddr=0;
 INTERRUPT_EPILOG();
}