Ist ok.. die Tipps waren ok und es funktioniert auch damit..

Das Problem lag aber woanders. Ich will einen Impuls messen (2µs, 4µs, 8µs...). INT0 nimmt die steigende Flanke und resettet Timer1 (16Bit) mit einem nackten Assembler Interrupt (11cycles lang). Die fallende Flanke wird dann vom ICP über das ICR1 Register des Timer1 aufgenommen.
Laut Datenblat des ATmega168 kein Thema und im Bereich des Möglichen.

Mein Problem war nun, das dieser Impuls im Bereich von 2µs noch erfassbar sein sollte.. deswegen wollte ich mir (was jetzt funktioniert - auch ohne die oben angegebene Interrupt-sichere Beschreibung der Ausgabepins) den Wert von ICR1 binär ausgeben lassen..
Zu erwarten sind ungefähr Werte von 16, 32, 64.. (16cyclesx0,125µs/cycle sind grade 2µs) usw.. für die Impulsbreite, aber die kamen nicht..
Auf der LED Zeile war irgendwie nichts stimmig.. weswegen ich hier Probleme mit zufällig ausgelösten Interrupts vermutete, ansonsten sah ja alles gut aush.. naja..

..4h später - eher zufällig...

Gelegen hats an folgendem:
Der Clock des Prozessors muss für diese Messung natürlich auf 8MHz laufen - Standard ist 1MHz - Prescaler=8.. also muss man auch den Clock_IO Prescaler verstellen..
Ich dachte das hätte ich!..
(hätte eigentlich schon vorher stutzig werden müssen, da die kleinste mögliche Messung 32µs betrug!)

Nun ja:
CLKPR |= (1<<CLKPCE);
CLKPR = 0;

funktionierte offensichtlich nicht, wie ich feststellen musste.
Der CLK_IO blieb bei 1MHz. /den Schnipsel hatte ich glaube aus dem Forum...

Verwendet hab ich nun:
CLKPR = (1<<CLKPCE)|(0<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)(0< <CLKPS0);
CLKPR = (0<<CLKPCE)|(0<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)(0< <CLKPS0);


Damit funktioniert alles wie ich es wollte...
2µs Impulse sind damit erfassbar.. INTO resettet Timer1 und ICP1 liest den Wert vom Timer1 bei fallender Flanke.

Ich denke mal, ich bräuchte nur bei der oberen Variante die erste Zeile durch 'CLKPR = 0x80;' ersetzen und es würde laufen.. vielleicht teste ich das morgen
Die Vorschrift zum setzen des CLK_IO Prescalers sagt ja, zuerst CLKPCE auf 1 und alle anderen auf Null und dann danach gleich CLKPCE auf Null und die anderen entsprechend dem Prescale... der '|' wird wohl der Übeltäter sein, da durch seinen Einsatz die CLKPS-Bits nicht gesetzt werden (IMHO)

Grüße und vielen Dank
Nico

PS: wenn der Code noch gewünscht wird, bitte bescheid sagen, dann poste ich den noch..