Buenas thegame! Otra vez ando por aquí. Estoy probando el bootloader que pasaste y tengo algunos problemillas.
Hice un programa que hace parpadear un led (comprobado).
Tuve problemas compilando el bottloader hasta que ví que había que usar mpasm en lugar del xc8. Así que lo configuré como creí más conveniente lo compile y lo cargué al pic (revise la memoria y aparece la primera linea que redirige al que creo que es el ultimo sector de memoria, aunque no lo he comprobado).
Ahora estoy intentando mediante el ds30 loader GUI free edition cargar por RS232 el programita del led pero se queda al inicio, intentando detectar bl (supongo que será el bootloader) y no lo encuentra. El mensaje es:
"Initiating write...
Searching for bl . . . . . . . . . . . . . . . . . . . . timed out
Tx 20 bytes / Rx 0 bytes / 10s
Write failed"
Si en el ds30 loader GUI free edition cargo el hex del bootloader automaticamente me dice:
"Parsing hexfile...
File timestamp: 06/11/2017 9:53:45
Opening hexfile...ok
Validating hexfile...ok
Detected instructions or data where user app vector should be relocated
Hex file successfully parsed"
Debido a la penultima frase entiendo que es problema de que no he recolocado el programa "parpadea led" en un sitio de memoria que no pise el primer vector del bootloader, pero he intentado recolocarlo en la propiedades del proyecto y lo acepta (mplab lo compila y consigo el hex) pero no soluciona el problema. Los rangos que he usado son 40-3fbf (3fff-40) y 40-3f7f (3fff-40-40), ya que indica que los bloques son de 0x40.
Necesito ayuda detallada con esto por favor. Quizás el problema se a la configuración que le he dado el bootloader.
Gracias de antemano!