hi, also dinge paralel laufen lassen ist eher schlcht zu realisieren da der uC nicht mehrere befehle gleichzeitig bearbeiten kann.
Ich bin aus deiner Programmbeschreibung nicht ganz schlau geworden, aber wenn du alle paar ms einen Programmabschnitt ausführen möchtest könntest du eventuell mit einem timer arbeiten der in einem definierten Zeitabstand einen Interrupt ausführt. In dieser Interrupt routine könntest du dann Interrupts unterdrücken so das dieser Zeitkritische code vollständig ausgeführt wird.

hier noch 2 links die dir helfen könnten: http://www.mikrocontroller.net/artic...mit_Interrupts

http://www.mikrocontroller.net/artic...A4hler_des_AVR

Ich hoffe ich konnte dir helfen