Es macht keinen Sinn, sie zu blockieren, weil sie automatisch blockiert
werden. Beim Einsprung in die ISR löscht die Hardware automatisch das
I-Bit im SREG (was man sonst mit cli machen müsste) und setzt es erst
dann wieder, wenn die ISR abgeschlossen ist (in Assembler mit reti, in
C mit der abschließenden '}').
Wie oben gesagt, man kann nested Interrupts in bestimmten Fällen
zulassen, muss sich aber über sein tun im klaren sein (Beispiel: Ein
Timer-Interrupt, der sich selbst unterbrechen kann und der sich
schneller wiederholt, als die zugehörige ISR abgearbeitet ist,
unterbricht ständig die eigene ISR [Das auslösende Flag wird ja
ebenfalls bereits beim Einsprung in die ISR automatisch gelöscht und
kann durch ein erneutes Ereignis prinzipiell sofort wieder gesetzt
werden], was bereits nach kurzer Zeit zu einem Stacküberlauf führt).
Deshalb die Grundregeln für die Interrupt-Bearbeitung beachten (ISR
kurz halten, keine Funktionsaufrufe und Schleifen, irgendeine Variable
in der ISR als Job-Flag setzen und im Hauptprogramm abfragen), dann
kann eigentlich nicht viel schief gehen...