Нашел от чего это происходит в этой функции.
Код
void TCPLowLevelInit(void)
{
// Keil: Timer 0 is used for TCP retransmission control
*AT91C_PITC_PIMR = AT91C_PITC_PITIEN | AT91C_PITC_PITEN |
784741; // 262mSec;
*(AT91C_AIC_SVR + AT91C_ID_SYS) = (unsigned int)TCPClockHandler;
*(AT91C_AIC_SMR + AT91C_ID_SYS) = AT91C_AIC_SRCTYPE_INT_POSITIVE_EDGE;
*AT91C_AIC_IECR = (1 << AT91C_ID_SYS);
}
Оказывается во FreeRTOS уже используется этот таймер для переключения задач и я просто затирал старый обработчик прерываний. А вот теперь я хочу код из своего обработчика сунуть в тот, который затирал, но он находится в ассемблерном файле. Отсюда вопрос - можно ли в ассемблерный файл экспортировать глобальные переменные из си файла?