Habe mich eben 5 Stunden von der Input capture unit des ATMEGA128 foppen
lassen, bis ich im Datasheet folgende Zeilen las:
1 | "• Bit 5 – ICF1: Timer/Counter1, Input Capture Flag
|
2 | This flag is set when a capture event occurs on the ICP1 pin."
|
OK, dann wird also der Interrupt vom GESETZTEM Flag ausgelöst, sofern
freigegeben. Weiter:
1 | "........ICF1 is automatically cleared when the Input Capture Interrupt vector is executed."
|
Durch Einsprung in den Int.Handler wird das Flag also automatisch
gelöscht.
OK, weiter:
1 | " Alternatively, ICF1 can be cleared by writing a logic one to its bit location."
|
Aha, von Hand wird das Flag also auf 0 zurückgesetzt(!), indem man eine
'1' reinschreibt(!).
...........????????????
Ist das jetzt einfach bescheuert, oder sehe ich irgendeinen Sinn dieser
verdrehten Logik nicht?