Цитата(alexeika007 @ Nov 18 2011, 17:41)

Вот прерывание:
EX_INTERRUPT_HANDLER(SPORT1_RX_ISR)
{
if (*pSPORT1_STAT & 1)
Здесь лучше не if, а while.
Цитата(alexeika007 @ Nov 18 2011, 17:41)

Работает, но мне кажется, что что-то здесь не так...
В прерывании выгребать данные как-то не комильфо. Используйте DMA.