Estoy usando LPC1788 IAP para escribir en Flash y estoy un poco confundido sobre lo que está pasando. Estoy tratando de escribir 8 bytes de datos en la memoria Flash con 2 técnicas:
1) Con uno que es lógico para mí y no funciona
for(i=0; i<8; i++) {
iap_copy_to_flash(&serial_no[i], OFFSET_SERIAL+i, 1);
}
2) Con uno que no es lógico para mí y funciona
iap_copy_to_flash((BYTE*)serial_no, OFFSET_SERIAL, 8);
OFFSET SERIAL es 0x00040000 y serial_no [8] es una matriz de BYTES
¿Por qué primero no funciona y segundo funciona?
Solo estoy teniendo problemas al escribir la matriz en el sector de Flash, al escribir las variables BYTE, WORD, DWORD, todo está bien.
Aquí está la función iap_copy_to_flash enlace y copy_ram_to_flash function enlace . Estaré muy agradecido si alguien me explica lo que está mal con mi pensamiento. Gracias.