Der Interrupt bringt wahrscheinlich die Waitschleife durcheinander.
Wenn ein Interrupt ausgelöst wird, müssen bestimme Registerinhalte gesichert werden. Eventuell macht dir das Schwierigkeiten.