He escrito mis propias funciones de programación flash para ser utilizadas en un gestor de arranque.
Tengo una pequeña función que realiza la operación de escritura que se copia en el ram para que se puedan escribir los dos bloques de memoria flash.
La documentación revisada y el código cumple con: AN4695 "Evitar leer mientras se escriben errores Al desarrollar en software Aplicaciones de programación flash para Kinetis y ColdFire + MCU "y el" Manual de referencia de la subfamilia K64 "
He probado completamente la escritura en el bloque flash 1 y todo funciona como se esperaba.
Cuando intento escribir en un bloque alineado correctamente en el bloque de flash 0, K64 (FTFE_FSTAT) no advierte ningún error, PERO el flash en la ubicación especificada NO se cambia.
Nuevamente, todo funciona bien en el bloque 1, pero no escribe en el bloque 0 y no se informan errores.
He comprobado los registros de protección de flash y no hay ninguna protección de escritura flash en su lugar.
Me quedé sin ideas, así que espero que haya alguien en el foro y ofrezca alguna información.
Gracias.
Joe