Да, спасибо огромное!
Проблему решила следующим образом:
данные записываю в массив, по переполнению таймера проверяю наличие данных и если есть - передаю по уарту.

к сожалению, основной проблемы это не решило

...
Возможно вы сможете помочь?
Программа для кард-ридера написана под atmega8 c кварцем 7,3 , я её переделываю под atmega16u4 c кварцем 8.
Сама программа по сути универсальная, то есть её алгоритмы, но она упорно не хочет правильно работать. Каждый раз выдает ошибку проверки LRC.
Весь проект крепить не буду, смысла нет. Только основное - файл magestripe, настройка таймеров, юарта, файл с переменными (board.txt) ну и мейн (avr_cunit)...
Буду очень благодарна за любые предположения!!!