AnsweredAssumed Answered

Hard Fault on Memory Write K64F

Question asked by Nathaniel Hinshaw on Jun 28, 2016
Latest reply on Jun 28, 2016 by Nathaniel Hinshaw



I am currently doing development on a custom boot-loader for my K64F, and I noted a hard fault when writing in certain memory locations.  In this case, there are two portions of an S19 that when flashed cause a hard fault.  these two lines are

53 33 0D 00 04 57 EC 00 00 00 00 01 14 00 00 96

followed by the second line

53 33 29 00 04 57 F4 EC 57 04 00 00 A0 00 20 08 00 00 00 F4 57 04 00 00 05 FF 1F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 06


both records seem to align properly, the first address, going to 0x457EC, aligns as two 32 bit values, while the second, at 0x457F4, aligns 9 32 bit values.  neither value should overwrite the other, as they are in different 32 bit spaces, which led me to changing my write to take each 32 bit chunk and write it individually to the flash, allowing me to debug which chunk crashes the program.

Write execution followed this order, First packet is sent, both pieces are wrote to their memory locations, 0x457EC, 0x457F0.  followed by the second packet being sent.  As its sent, the address at 0x457F0 turns red.  As "third write occurs", it is erased, and as the next write of the second packet occurs, we hit "hard fault" where the program has crashed.  From the variable view, the addresses are being stored correctly, and the U32 i am writing is the correct data to be wrote.  Any idea what could be happening?  attached are the PNG's referenced, as well as the S19 file i am attempting to flash.



Nate Hinshaw

Original Attachment has been moved to: