Ich habe mir den Sourcecode mal angesehen:

1) Die Variablen zaehler, Ergebnis und timer:
Bei 256 Impulsen/U und max 12000 U/min hast du in 100 ms max 5120 Impulse. Dafür brauchst du keine Long-Variablen, das passt auch locker in Ints (also zaehler und Ergebnis in unsigned int ändern). timer zählt von 0 bis 100, da reicht ein unsigned char. Durch die unnötig großen Variablen werden die ISRs nur unnötig verlangsamt.

2) Die Variable Ergebnis im speziellen:
Diese Variable muss als volatile deklariert werden. Außerdem muss der Zugriff auf Ergebnis in main vor Interrupts geschützt werde. Damit die Interrupts nur so kurz wie möglich blockiert werden, empfehle ich die Verwendung einer zusätzlichen Variable, also z.B. so:
Code:
  volatile unsigned int Ergebnis;
...
...
  unsigned int tmp;
  cli();
  tmp = Ergebnis;
  sei();
  itoa(tmp,Ausgabe,10);
3) SIGNAL (SIG_OVERFLOW0):
Nimm die beiden GIMSK-Zeilen raus und mache daraus eine "normale" ISR. Wenn du erlaubst, dass dieser Interrupt durch den anderen unterbrochen werden kann, handelst du dir nur Scherereien ein, und es bringt dir hier keinen wirklichen Nutzen.

4)
Achte darauf, dass du die Optimierungen des Compilers aktiviert hast, schließlich ist das Timing ja nicht ganz unkritisch.

5)
Dieser Delay von 100ms ist sehr wichtig!!
Wenn im normalen Programmablauf Delays nötig sind, damit es funktioniert, ist das immer extrem verdächtig. Da liegt dann eigentlich immer etwas im Argen. Bei dir ist es folgender Code:
Code:
         while (c != '!')
         {
            Eingabe[Count++] = c;
            c = uart_getc();
         }
Du versuchst hier alle Zeichen der Eingabe direkt hintereinander über uart_getc einzulesen. Das funktioniert aber nur, wenn auch schon alle Zeichen im AVR eingetrudelt sind. Wenn dieser Code mitten in der Übertragung ausgeführt wird, kracht es (und zwar richtig). Und trotz des Delays kann das jederzeit passieren. Das muss unbedingt geändert werden. Ich finde die Struktur der main überhaupt etwas verquer.

Morgen mache ich mal einen Alternativvorschlag für die main. Im Augenblick will ich eigentlich nur noch ins Bett.