kann PinChange Interrupt Flag nicht zurücksetzen

Gast #2377125
Lesenswert?

Hallo,

ich versuche seit Stunden verzweifelt das PIN CHANGE INTERRUPT FLAG 0 
zurück zusetzen (Atmega164PA)

Zitat aus Datenblatt:

Bit 0 – PCIF0: Pin Change Interrupt Flag 0
When a logic change on any PCINT7..0 pin triggers an interrupt request, 
PCIF0 becomes set (one). If the I-bit in SREG and the PCIE0 bit in EIMSK 
are set (one), the MCU will jump to the corresponding Interrupt Vector. 
The flag is cleared when the interrupt routine is executed. 
Alternatively, the flag can be cleared by writing a logical one to it.

demnach muss ich doch mit

PCIFR |= (1<<PCIF0);

dieses verdammte Flag clearen können (auch aus der IR-Routine heraus) 
oder??

aber es bleibt felsenfest gesetzt laut AVR-Studio...

bitte um Hilfe

Gruß Stefan
Gast #2378412
Lesenswert?

auf realer Hardwar mit JTAG

es scheint sich um ein EMV Problem zu handeln.

Ich werde permanent mit mit dem PinChange-Interrupt zugespamt, und zwar 
wenn ich mit JTAG Debugge!

Im normalem Betrieb werden kaum "falsche" Interrupts ausgelöst

Warum ich allerdings das Flag nicht zurücksetzen kann (per Mausklick via 
JTAG, oder per Anweisung im Programm), obwohl im Code an dieser Stelle 
alle Interrupts deaktiviert sind weis ich immer noch nicht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren