Gast
#4774381
Hallo, ich hab eine vielleicht etwas blöde Fragen zum löschen von Flags im External Interrupt Flag Register (EIFR) eines AVRs (konkret at90can128). Ich möchte das Register pollen um Änderungen an Pins zu detektieren (setzen wir mal voraus, dass es in dem konkreten Kontext Sinn macht, hier keine ISR zu triggern). Ich habe das Datenblatt soweit verstanden, dass ich ein Flag in diesem Register lösche, indem ich es setze ("[...] the flag can be cleared by writing a logical one to it."). Angenommen ich möchte das komplette Register nach dem Auslesen zurücksetzen, schreibe ich dann a) seinen unmittelbar vormaligen Zustand in das Register zurück, sodass nur dort das Flag gelöscht wird, wo es vormals gesetzt war oder b) kann ich einfach 0xFF in das Register schreiben und somit alle Flags löschen, also auch die, die vorher nicht gesetzt waren. Die Frage ist dabei natürlich, welche Funktion eine zurückgeschriebene 0 für das Flag hat. Kann jemand dazu etwas sagen? Vielen Dank!