Estou com um problema que está dificultando minha vida, até porque estou precisando depurar um firmware que controla um enlace de rádio.
Utilizo o PICkit3 em conjunto com o MPLAB 8.42 e compilador CCS. Com esta combinação consigo depurar sem dificuldades qualquer PIC16 e até mesmo um PIC18F26J50, assim como acionar o PICkit como programador em qualquer situação.
Minha dificuldade atual é conseguir ativar a depuração com o PIC18F14K50, até com ele o modo programador funciona sem restrição.
Vamos aos fatos. Iniciando o depurador recebo a seguinte mensagem na janela output do MPLAB, mesmo alimentando o circuito com 3.3V, embora não utilize o tal AC164114 a que se refere a mensagem:
To prevent device damage, the Programming Adapter product (AC164114) is mandatory when using any Microchip Programmer with PIC18F13K50 or PIC18F14K50 parts (except the PIC18F14K50 Processor Extension Pak emulation header) and the target Vdd is above 3.6 volts.
Target Device ID (00004760) does not match expected Device ID (000047a0).
Após compilar e gravar o hexa, recebo o seguinte erro ao tentar debugar:
Running...
PK3Err0040: The target device is not ready for debugging. Please check your configuration bit settings and program the device before proceeding.
Segundo o datasheet (http://ww1.microchip.com/downloads/en/DeviceDoc/40001350F.pdf), no registro 24-6 da página 286, o fuse BKBUG deve estar zerado (o que não é o padrão), o que talvez não esteja acontecendo, mas não estou encontrando caminho para me certificar de que ele esteja em 0. Mesmo procurando como utilizá-lo via #FUSES não encontrei uma saída. Pelo que já encontrei, é uma característica que ocorre com PIC18's de até 20 pinos.
Agradeço a ajuda de vocês para conseguir habilitar essa depuração.