Guys,
I am back again with another question.
While trying to update a application software though my Bootloader on M3 side, i encountered a issue with regards to the generated Intel hex format of the application software.
So with in my Bootloader application i program totally 64 bits or 8 bytes of data at once using the below API. where data_buffer is the pointer to my array of 8 bytes.
oReturnCheck = Fapi_issueProgrammingCommand((uint32 *)flash_address , data_buffer, 8, 0, 0, Fapi_AutoEccGeneration);
Every byte of data from the application project generated intel hex file gets programmed fine until i reach the below two line:
:044DA000200030B906
:204DA40040004000400580004000500040059000400060004005A000400070004005B0001B
When i parse through the first line the address i form is 0x00214DA0 and the data i form is 0x200030B9. Now because i program 8 bytes at time the remaining 4 bytes i write 0xFFFFFFFF and pass data_buffer. This data gets programmed fine.
But when i arrive at the second line where the address is 0x00214DA4 , i guess because of the ECC check performed on this address in the previous step i will no more be able to override 0xFFFFFFFF with the data i want to write and hence i end up in error state when i verify the flash section.
Below is the Memory section of my application project. Please note i am starting my application flash section from 0x0020C000.
Can i get some hint on where should i make changes so that i don't end up in such situation ??
Thanks