Estoy intentando programar mi Microchip PIC24EP512GU814 en modo ICSP. El recurso que estoy usando para hacer esto es el Microchip dsPIC33E / PIC24E Especificaciones de programación Flash (70619B) y la Microchip dsPIC33EP / PIC24EP Hoja de datos (70616g) . Hasta ahora he programado un Arduino para ingresar al modo ICSP y borrar todo el chip, pero actualmente estoy atascado al escribir en el chip.
La sección 6.6 tiene una tabla 6-5 en la página 31 que muestra los pasos para escribir en el chip. El paso # 6 tiene el siguiente fragmento de código:
MOV #DestinationAddress<15:0>, W2
MOV #DestinationAddress<23:16>, W3
En contexto: estas instrucciones se ejecutarán una vez que se hayan ingresado 128 instrucciones en los cierres de escritura. Este fragmento de código define la ubicación en la memoria de código en la que se copian las instrucciones de los cierres de escritura.
Actualmente no puedo averiguar con qué dirección debo comenzar y cuánto aumenta la dirección en las próximas 128 instrucciones.
He mirado la Sección 4.1, Figura 4-1 de la Hoja de datos (70616g) y la Sección 2.3, Figura 2-2 de Especificaciones de programación (70619B) . ¿Es la memoria de código lo mismo que la Memoria Flash del Programa de Usuario en estas cifras? Como tal, ¿debería la dirección de destino en el fragmento de código anterior comenzar en 0x000200
?
Dado que esto establece una escritura para 128 instrucciones, ¿se incrementa en 128 = 0x80
? ¿O se incrementa por el número de bits escritos (24x128 = 3072 = 0xC00
)?