Hallo stargard!

Wenn du einen PIC der P16CXXX serie hast ist es ganz normal, dass er sich nur einmal programmieren lässt.

Wenn sich um PIC16FXXX handelt, dann wahrscheinlich löschst du ein Bit sicher nicht in dem richtigem Register, da der OPTION_REG sich in der 1. Bank befindet. Um in bestimmtem Register etwas Programmieren, muss man die Speicherbank wählen, in welcher sich der gewünschte Register befindet. Ein Beispiel, wie man die pull-ups für PORTB aktiviert, findest du im Code.

Übrigens, ich würde dir den Artikel im Wiki "PIC Assembler" empfehlen, wo du richtige Antworten auf fast alle Fragen finden solltest:

https://www.roboternetz.de/wissen/in.../PIC_Assembler

Viel Spass und Erfolg mit PICs!

MfG
Code:
  	    bsf	STATUS,RP0		; auf Bank1 umschalten
  	    bcf	OPTION_REG,7		; aktiviere pull-ups
  	    bcf    STATUS,RP0		; auf Bank0 umschalten (zurückschalten)