Tolik (26.01.2006 11:26, просмотров: 1) ответил Romario на Ответ
Прошагал до точки, откуда программа валится на адрес 0х0... увидел, что после входа в функцию OSINTExit() значение SP=0xFFFFFFC0! В файле конфигурации линкера прописано:
-D_CSTACK_SIZE=200
-D_IRQ_STACK_SIZE=80
-D_FIR_STACK_SIZE=80
-D_SVC_STACK_SIZE=40
-D_ABT_STACK_SIZE=40
-D_UND_STACK_SIZE=40
-D_HEAP_SIZE=200
OS еще не стартовала, я для тестирования запустил таймер и разрешил прерывания:
void main (void)
{
..............
BSP_IntDisAll(); /* Disable all interrupts */
BSP_Init();
__enable_interrupt();
while(1);
.............
}
Где искать ошибку?