Цитата(3m-soft @ Sep 25 2007, 18:40)

P.S. Кстати почему никто не думает что это может быть проблема компилятора или компиляции.
По следующим причинам:
1) До вас этим компилятором пользовалась туева хуча народа (в том числе и здесь на форуме) и никто таких глюков не обнаруживал.
2) Компилятор про UART знать не знает, для него это обычные регистры.
3) В 99.9% "ошибки" компилятора оказывались ошибками писателя программы.
4) Если вы покажете в листинге место, где компилятор ошибся - будем обсуждать. Пока видно, что в листинг вы не заглядывали.
Можно телепатически сделать следующие предположения:
1) Мало выделили стека. Во время прерываний стек наползает на данные со всеми вытекающими.
2) Если у вас есть кольцевые буфера - указатель на голову обгоняет указатель на хвост (или наоборот) с вытекающим выводом всего буфера.