LPC1778 checksum in vector table invalid need recover

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

LPC1778 checksum in vector table invalid need recover

193 次查看
BianHaopeng1
Contributor II

你好,我在调试LPC1778的FLM时,调用FLM向0x0-0x400写入数据之后发现数据不正确。现在我的调试器无法连接芯片,我查阅了资料,认为是vector table写入的数据出错了,和我想要写入的数据不一致,导致checksum不合法。资料显示checksum不合法会导致芯片进入ISP模式等待下载程序。

1.我想知道这个状态要怎么恢复?

2.为什么FLM写0x0-0x400会引发问题,我尝试了写0x400-0x7FFFF都是正常的。翻看FLM源码,其中有个SET_VALID_CODE的参数会自动修改校验和,是不是这部分有什么问题?

标记 (1)
0 项奖励
回复
1 回复

164 次查看
Harry_Zhang
NXP Employee
NXP Employee

Hi @BianHaopeng1 

0x0000–0x0400 不只是普通 flash 数据区,它包含启动向量表、0x1C 的 valid-code checksum,以及 0x2FC 的 CRP 配置字 。checksum 错会让 ROM bootloader 判定 user code invalid 并进入 ISP;如果 0x2FC 被误写成 CRP pattern,还会导致 JTAG/SWD 访问受限甚至不可恢复到普通调试状态。

您可以优先按 ISP 恢复 处理:

拉低 P2[10],然后复位芯片 ,bootloader 接管并进入 ISP mode。

通过 UART0:P0[2] / P0[3] 连接 FlashMagic 或等价 ISP 工具,执行全片擦除或重新下载一个有效镜像。

如果只是 checksum 不合法 ,进入 ISP 后应能擦除并恢复;如果误写了 CRP1/CRP2 ,JTAG 会被禁用,但 ISP 仍有受限恢复路径;如果误写成 CRP3 ,文档说明它会完全禁止 JTAG 和 ISP,这种情况下基本不能再通过常规 ISP/JTAG 恢复。

BR

Harry

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2389468%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%3ELPC1778%20checksum%20in%20vector%20table%20invalid%20need%20recover%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2389468%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%3E%3CP%3E%E4%BD%A0%E5%A5%BD%EF%BC%8C%E6%88%91%E5%9C%A8%E8%B0%83%E8%AF%95LPC1778%E7%9A%84FLM%E6%97%B6%EF%BC%8C%E8%B0%83%E7%94%A8FLM%E5%90%910x0-0x400%E5%86%99%E5%85%A5%E6%95%B0%E6%8D%AE%E4%B9%8B%E5%90%8E%E5%8F%91%E7%8E%B0%E6%95%B0%E6%8D%AE%E4%B8%8D%E6%AD%A3%E7%A1%AE%E3%80%82%E7%8E%B0%E5%9C%A8%E6%88%91%E7%9A%84%E8%B0%83%E8%AF%95%E5%99%A8%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E8%8A%AF%E7%89%87%EF%BC%8C%E6%88%91%E6%9F%A5%E9%98%85%E4%BA%86%E8%B5%84%E6%96%99%EF%BC%8C%E8%AE%A4%E4%B8%BA%E6%98%AFvector%20table%E5%86%99%E5%85%A5%E7%9A%84%E6%95%B0%E6%8D%AE%E5%87%BA%E9%94%99%E4%BA%86%EF%BC%8C%E5%92%8C%E6%88%91%E6%83%B3%E8%A6%81%E5%86%99%E5%85%A5%E7%9A%84%E6%95%B0%E6%8D%AE%E4%B8%8D%E4%B8%80%E8%87%B4%EF%BC%8C%E5%AF%BC%E8%87%B4checksum%E4%B8%8D%E5%90%88%E6%B3%95%E3%80%82%E8%B5%84%E6%96%99%E6%98%BE%E7%A4%BAchecksum%E4%B8%8D%E5%90%88%E6%B3%95%E4%BC%9A%E5%AF%BC%E8%87%B4%E8%8A%AF%E7%89%87%E8%BF%9B%E5%85%A5ISP%E6%A8%A1%E5%BC%8F%E7%AD%89%E5%BE%85%E4%B8%8B%E8%BD%BD%E7%A8%8B%E5%BA%8F%E3%80%82%3C%2FP%3E%3CP%3E1.%E6%88%91%E6%83%B3%E7%9F%A5%E9%81%93%E8%BF%99%E4%B8%AA%E7%8A%B6%E6%80%81%E8%A6%81%E6%80%8E%E4%B9%88%E6%81%A2%E5%A4%8D%EF%BC%9F%3C%2FP%3E%3CP%3E2.%E4%B8%BA%E4%BB%80%E4%B9%88FLM%E5%86%990x0-0x400%E4%BC%9A%E5%BC%95%E5%8F%91%E9%97%AE%E9%A2%98%EF%BC%8C%E6%88%91%E5%B0%9D%E8%AF%95%E4%BA%86%E5%86%990x400-0x7FFFF%E9%83%BD%E6%98%AF%E6%AD%A3%E5%B8%B8%E7%9A%84%E3%80%82%E7%BF%BB%E7%9C%8BFLM%E6%BA%90%E7%A0%81%EF%BC%8C%E5%85%B6%E4%B8%AD%E6%9C%89%E4%B8%AASET_VALID_CODE%E7%9A%84%E5%8F%82%E6%95%B0%E4%BC%9A%E8%87%AA%E5%8A%A8%E4%BF%AE%E6%94%B9%E6%A0%A1%E9%AA%8C%E5%92%8C%EF%BC%8C%E6%98%AF%E4%B8%8D%E6%98%AF%E8%BF%99%E9%83%A8%E5%88%86%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%EF%BC%9F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2389685%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20LPC1778%20checksum%20in%20vector%20table%20invalid%20need%20recover%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2389685%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F262795%22%20target%3D%22_blank%22%3E%40BianHaopeng1%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E0x0000%E2%80%930x0400%20%E4%B8%8D%E5%8F%AA%E6%98%AF%E6%99%AE%E9%80%9A%20flash%20%E6%95%B0%E6%8D%AE%E5%8C%BA%EF%BC%8C%E5%AE%83%E5%8C%85%E5%90%AB%E5%90%AF%E5%8A%A8%E5%90%91%E9%87%8F%E8%A1%A8%E3%80%810x1C%20%E7%9A%84%20valid-code%20checksum%EF%BC%8C%E4%BB%A5%E5%8F%8A%200x2FC%20%E7%9A%84%20CRP%20%E9%85%8D%E7%BD%AE%E5%AD%97%20%E3%80%82checksum%20%E9%94%99%E4%BC%9A%E8%AE%A9%20ROM%20bootloader%20%E5%88%A4%E5%AE%9A%20user%20code%20invalid%20%E5%B9%B6%E8%BF%9B%E5%85%A5%20ISP%EF%BC%9B%E5%A6%82%E6%9E%9C%200x2FC%20%E8%A2%AB%E8%AF%AF%E5%86%99%E6%88%90%20CRP%20pattern%EF%BC%8C%E8%BF%98%E4%BC%9A%E5%AF%BC%E8%87%B4%20JTAG%2FSWD%20%E8%AE%BF%E9%97%AE%E5%8F%97%E9%99%90%E7%94%9A%E8%87%B3%E4%B8%8D%E5%8F%AF%E6%81%A2%E5%A4%8D%E5%88%B0%E6%99%AE%E9%80%9A%E8%B0%83%E8%AF%95%E7%8A%B6%E6%80%81%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%82%A8%E5%8F%AF%E4%BB%A5%E4%BC%98%E5%85%88%E6%8C%89%20ISP%20%E6%81%A2%E5%A4%8D%20%E5%A4%84%E7%90%86%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E6%8B%89%E4%BD%8E%20P2%5B10%5D%EF%BC%8C%E7%84%B6%E5%90%8E%E5%A4%8D%E4%BD%8D%E8%8A%AF%E7%89%87%20%EF%BC%8Cbootloader%20%E6%8E%A5%E7%AE%A1%E5%B9%B6%E8%BF%9B%E5%85%A5%20ISP%20mode%E3%80%82%3C%2FP%3E%0A%3CP%3E%E9%80%9A%E8%BF%87%20UART0%EF%BC%9AP0%5B2%5D%20%2F%20P0%5B3%5D%20%E8%BF%9E%E6%8E%A5%20FlashMagic%20%E6%88%96%E7%AD%89%E4%BB%B7%20ISP%20%E5%B7%A5%E5%85%B7%EF%BC%8C%E6%89%A7%E8%A1%8C%E5%85%A8%E7%89%87%E6%93%A6%E9%99%A4%E6%88%96%E9%87%8D%E6%96%B0%E4%B8%8B%E8%BD%BD%E4%B8%80%E4%B8%AA%E6%9C%89%E6%95%88%E9%95%9C%E5%83%8F%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%A6%82%E6%9E%9C%E5%8F%AA%E6%98%AF%20checksum%20%E4%B8%8D%E5%90%88%E6%B3%95%20%EF%BC%8C%E8%BF%9B%E5%85%A5%20ISP%20%E5%90%8E%E5%BA%94%E8%83%BD%E6%93%A6%E9%99%A4%E5%B9%B6%E6%81%A2%E5%A4%8D%EF%BC%9B%E5%A6%82%E6%9E%9C%E8%AF%AF%E5%86%99%E4%BA%86%20CRP1%2FCRP2%20%EF%BC%8CJTAG%20%E4%BC%9A%E8%A2%AB%E7%A6%81%E7%94%A8%EF%BC%8C%E4%BD%86%20ISP%20%E4%BB%8D%E6%9C%89%E5%8F%97%E9%99%90%E6%81%A2%E5%A4%8D%E8%B7%AF%E5%BE%84%EF%BC%9B%E5%A6%82%E6%9E%9C%E8%AF%AF%E5%86%99%E6%88%90%20CRP3%20%EF%BC%8C%E6%96%87%E6%A1%A3%E8%AF%B4%E6%98%8E%E5%AE%83%E4%BC%9A%E5%AE%8C%E5%85%A8%E7%A6%81%E6%AD%A2%20JTAG%20%E5%92%8C%20ISP%EF%BC%8C%E8%BF%99%E7%A7%8D%E6%83%85%E5%86%B5%E4%B8%8B%E5%9F%BA%E6%9C%AC%E4%B8%8D%E8%83%BD%E5%86%8D%E9%80%9A%E8%BF%87%E5%B8%B8%E8%A7%84%20ISP%2FJTAG%20%E6%81%A2%E5%A4%8D%E3%80%82%3C%2FP%3E%0A%3CP%3EBR%3C%2FP%3E%0A%3CP%3EHarry%3C%2FP%3E%3C%2FLINGO-BODY%3E