Hallo,
seit Jahren beschäftige ich mich schon mit den PICs.
Beim Durchforsten des Datenblatts vom 12F617 sehe ich grad einen Programmcode der mich doch ins Erstaunen versetzt.

bcf INTCON,GIE
btfsc INTCON,GIE
goto $-2

Dann wird auf die Application Note AN576 verwiesen.

Dort wird beschrieben:
Wenn während der Ausführung des Befehls bcf INTCON,GIE ein Interrupt auftritt, wird die Interrupt Funktion ausgeführt.
dann verzweigt das Programm normalerweise mit RETFIE zurück und setzt automatisch das GIE-Bit wieder.
Der RETFIE Befehl macht also unser Löschen des GIE-Bits zu nichte.
Dort steht jedoch, dass man sich auf die PIC16Cxx und 17C42 bezieht.

Kann das beim 12F617 auch passieren ?
Ich habe bisher mit den PICs 12F 16F und 18F niemals solch Code eingebaut.

Ich habe aber ein ähnliches Problem schon mit nem Cortex M3 Prozessor gehabt.
Dort war es bedingt durch die internen Schreibpuffer.

Vielleicht hat man aber auch beim Erstellen des Datenblatts den Code aus einem anderen Datenblatt kopiert und das Problem existiert
in diesem Chip (12F617) garnicht.

Hat evtl. jemand von Euch zusätzliche Info mich mich.
Ich danke schonmal im voraus
Siro

Verweis aufs Datenblatt PIC12F617 WRITING TO FLASH PROGRAM MEMORY Example 3-2 Seite 34