оказалось, что я жду полного вывода символа через UART и не стираю соответствующий флаг (TXC) и при следующем выводе он уже установлен и я вхожу в спячку не дождавшись вывода очередного символа. При введении задержки символ полностью успевал выводится и я видел нормально идущие данные.