Data Write Match Breakpoints

If the data in a GPR location is modified using any arithmetic instruction like INCF, ADDWF, SETF, CLRF, etc., the data write match breakpoint does not work. It works with MOVF, which moves the data into the same memory location. See code examples below.

1.

MOVLB       0x00
CLRF        0x08
LOOP
INCF        0x08    ;Doesn’t break when data        
                    breakpoint set @ 0x08
                    with data match for 0xAA
GOTO LOOP

2.

MOVLB        0x00
MOVLW        0xAA
MOVF         0x08   ;Breaks when data        
                    breakpoint set @ 0x08
                    with data match for 0xAA
GOTO LOOP

Work around

Use data write breakpoints without matching wherever possible.

Affected Silicon Revisions

A2 A3
X