I am trying to flash a binary image to LPC1853 flash A via Keil ULINK-ME. The MCU resides on a proprietary board, connected to the ULINK board via a 6-pin SWD JTAG connection. I opened the GUI Flash Tool in MCUXpresso, and it discovers the probe.
In the options, the default flash driver is LPC18x3_43x3_2x256_BootA.cfx. Reset handling and Flash reset handling are default. The selected action is 'Program'. The file to program is a binary file that was built with Keil uvision 4.74, and modified with custom tools to set the size of the file, embed data and add CRC32. The format to use for programming is 'bin', and the base address is set at 0x1a000000.
After clicking on 'Run', the console shows the tool writing to each sector. At the end, both the pop-up and the console indicates success. I have done this many times, and there is never an error. The flashed contents also verify successfully with the GUI Flash Tool. However, the file was not written correctly. It is as if some bytes were changed.
Here are details from preview mode:
crt_emu_cm_redlink --flash-load-exec "D:\ARM\projects\MyProj\image\MyProj.bin" -g --debug 2 --vendor NXP -p LPC1853 --load-base=0x1a000000 -ProbeHandle=1 -CoreIndex=0 --flash-driver LPC18x3_43x3_2x256_BootA.cfx
Could someone help with this please? Is the Flash GUI Tool assuming certain things about the binary image and making changes to the data during the process? I have verified that the binary file is not the problem, and the flash region is not the problem, as I can use IAP to correctly write the same binary file to the same flash region. What I want is to use the Flash GUI Tool to write any binary image, as-is, to the LPC1853 flash. Any help would be greatly appreciated.