Hi Segger Experts,
I create a flash loader which without "SEGGER_FL_Verify" as the fucntion is optional as the wiki SEGGER Flash Loader - SEGGER Wiki introdution, but when I load the binary file to the flash, jlink will report
"****** Error: Verification failed @ address 0x14200000
Error while programming flash: Verify failed."
However, I can make sure the data at 0x14200000 is correct, so my first question is why Jlink will report the above error?
Meanwhile, if I load bin to 0x14100000, there would no such error.
To fix the verify error, I simply add the SEGGER_FL_Verify in the flash loader, just like:
U32 SEGGER_FL_Verify(U32 Addr, U32 NumBytes, U8* pData)
{
U8 *pFlash;
U32 r;
pFlash = (U8 *)Addr;
r = Addr + NumBytes;
do {
if (*pFlash != *pData) {
r = (U32)pFlash;
break;
pFlash++;
pData++;
} while (--NumBytes);
return r;
}
After doing this, the error still exists, please see the attached picture.
It's strange, but I don't know the reason.
Could you give me a help?
BR,
Gavin
I create a flash loader which without "SEGGER_FL_Verify" as the fucntion is optional as the wiki SEGGER Flash Loader - SEGGER Wiki introdution, but when I load the binary file to the flash, jlink will report
"****** Error: Verification failed @ address 0x14200000
Error while programming flash: Verify failed."
However, I can make sure the data at 0x14200000 is correct, so my first question is why Jlink will report the above error?
Meanwhile, if I load bin to 0x14100000, there would no such error.
To fix the verify error, I simply add the SEGGER_FL_Verify in the flash loader, just like:
U32 SEGGER_FL_Verify(U32 Addr, U32 NumBytes, U8* pData)
{
U8 *pFlash;
U32 r;
pFlash = (U8 *)Addr;
r = Addr + NumBytes;
do {
if (*pFlash != *pData) {
r = (U32)pFlash;
break;
pFlash++;
pData++;
} while (--NumBytes);
return r;
}
After doing this, the error still exists, please see the attached picture.
It's strange, but I don't know the reason.
Could you give me a help?
BR,
Gavin
The post was edited 3 times, last by GavinLi5567: Correct some wrong information. ().