Как я понимаю проект уже сдан/сроки прошли. Сейчас разбор полетов.
Код конечео путанный :-).. Пока явно причину порчи не вижу. Порекомендовал бы Вам поаккуратнее со стеком работать. Поставте на вектор
Цитата
org URXCaddr
rjmp USART_RXC ; USART RX Complete Handler
просто reti
И вместо
Цитата
rcall USART_Transmit
rjmp USART_Transmit
Если пересылать другой код, вместо ff, данные не считая этого бита верные?
Зачем эти строчки?
Цитата
ldi data, 0x59
MOV zh,data
;cp zh:zl, data
сведите проверку до минимума. Может диодиком помигать, а то длинная цепочка получается.
Программа работает на другм чипе, с теми же условиями?(Вы говорили что заменить нечем....?!)
Если задачу можно решить, то не надо тревожиться. А если нельзя решить, то тревожиться бесполезно.