Invalid ROM Table 终极解决方案

本文分享了一次使用SWD接口下载程序时遇到的问题及解决过程。主要问题源于时钟不匹配和下载线过长导致的信号不稳定。解决办法包括调整程序与硬件时钟一致,缩短下载线长度,降低下载频率至500kHz。这些经验对于遇到类似问题的开发者来说具有较高的参考价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Before

最近入手一块儿硬石的开发板,其之留出SWD接口用作下载仿真接口
So 满心欢喜的将jlink和转SWD的转接板一连接就去下程序了
然鹅~~
我看到的竟是如此画面
在这里插入图片描述
真是一口老血涌上心头
好吧 纵横江湖这么几天~~ 我从未遇到这样的问题
只能上网求助

网上解决办法

1. 时钟不匹配导致

啥意思呢 就是你的程序里面写的是25M的外置晶振 但是 板载确实8M晶振 使得芯片与程序冲突

这个就简单了 改了程序和板子对应就好了

通过 把BOOT0置1,BOOT1置0,keil配置修改一下:进入Debug–Settings–Flash Download页面,把Program、Verify、Reset and Run前面的勾干掉,然后按复位键,再点击下载,下载程序进行芯片的擦除。恢复BOOT0接地。再把刚才修改过的Debug配置改回来,就可以正常使用了。目的就是一开始让芯片进入bootloader程序,此时就可以进行下载程序了。如果没有复位按键,那么就可以先将BOOT0接入高电平(默认BOOT0,BOOT1一般是通过电阻接低电平的,所以此时只需将BOOT0引出接入高电平),然后上电(相当于复位了),最后点击下载,当程序正在下载时就可以不接高电平了。
我举手说明一下 我的程序和板子是一致的 so 我的原因不在这里 若是这个问题导致的 就按照上面的步骤来就好了

2. 下载线太长了 -------------> 敲重点了

出现这种问题 那就是说我们采用的下载线可能是通过排线连接的JTAG2SWD的转接板导致的
排线不可靠 这时候的解决办法就是

  • 换用可靠的压接排线
  • 将下载线剪短
  • 将下载频率减小 —> 当然 这个是最简单的 我就是改到500kHz才搞定的
    在这里插入图片描述
    就是图中画圈圈的位置 我改到了500kHz
    *然后这问题就解决了~~~~~*

可以继续嗨皮了 发起进攻(  ´-ω ・)▄︻┻┳══━一

在这里插入图片描述

9.687656][ T9] device-mapper: verity: 179:7: metadata block 65535 is corrupted [ 9.687703][ T1] EXT4-fs (dm-1): unable to read superblock [ 9.687726][ T1] [pid=1][BEGET][ERROR][fstab_mount.c:418]Mount device /dev/block/dm-1 to /vendor failed, err = 5, retry [ 9.687941][ T9] device-mapper: verity: 179:7: metadata block 65535 is corrupted [ 9.688000][ T1] EXT4-fs (dm-1): unable to read superblock [ 9.688010][ T1] [pid=1][BEGET][ERROR][fstab_mount.c:418]Mount device /dev/block/dm-1 to /vendor failed, err = 5, retry [ 9.688224][ T9] device-mapper: verity: 179:7: metadata block 65535 is corrupted [ 9.688283][ T1] EXT4-fs (dm-1): unable to read superblock [ 9.688292][ T1] [pid=1][BEGET][ERROR][fstab_mount.c:418]Mount device /dev/block/dm-1 to /vendor failed, err = 5, retry [ 9.939611][ T1] [pid=1][BEGET][ERROR][fstab_mount.c:381]Unsupported file system " none " [ 10.121327][ T1] [pid=1][Init][ERROR][switch_root.c:121]Failed to mount moving /mnt/data to /usr/mnt/data, err = 2 [ 10.199560][ T1] [pid=1][BEGET][ERROR][fstab.c:334]Failed to get fstab item from mount point " /misc " [ 10.200180][ T1] [pid=1][PARAM][ERROR][param_include.h:75]Invalid current param const.cust.config_dir_layer [ 10.200271][ T1] [pid=1][PARAM][ERROR][param_manager.c:673]Forbid to access const.cust.config_dir_layer label 0 0 [ 10.200285][ T1] [pid=1][PARAM][ERROR][param_manager.c:724]SystemReadParam failed! name is:const.cust.config_dir_layer, errNum is:1002! [ 10.200297][ T1] [pid=1][PARAM][ERROR][param_include.h:75]Invalid current param const.cust.follow_x_rules [ 10.200371][ T1] [pid=1][PARAM][ERROR][param_manager.c:673]Forbid to access const.cust.follow_x_rules label 0 0 [ 10.200383][ T1] [pid=1][PARAM][ERROR][param_manager.c:724]SystemReadParam failed! name is:const.cust.follow_x_rules, errNum is:1002! [ 10.202931][ T1] [pid=1][PARAM][ERROR][param_include.h:75]Invalid current param const.cust.config_dir_layer [ 10.203010][ T1] [pid=1][PARAM][ERROR][param_manager.c:673]Forbid to access const.cust.config_dir_layer label 0 0 [ 10.203023][ T1] [pid=1][PARAM][ERROR][param_manager.c:724]SystemReadParam failed! name is:const.cust.config_dir_layer, errNum is:1002! [ 10.203034][ T1] [pid=1][PARAM][ERROR][param_include.h:75]Invalid current param const.cust.follow_x_rules [ 10.203111][ T1] [pid=1][PARAM][ERROR][param_manager.c:673]Forbid to access const.cust.follow_x_rules label 0 0 [ 10.203122][ T1] [pid=1][PARAM][ERROR][param_manager.c:724]SystemReadParam failed! name is:const.cust.follow_x_rules, errNum is:1002! [ 10.207896][ T1] [pid=1][PARAM][ERROR][param_base.c:390]Invalid workSpace for musl.log.enable [ 10.207902][ T1] [pid=1][PARAM][ERROR][param_base.c:620]Forbid to access parameter musl.log.enable [ 10.207913][ T1] [pid=1][PARAM][ERROR][param_base.c:390]Invalid workSpace for musl.ld.debug.dlclose [ 10.207922][ T1] [pid=1][PARAM][ERROR][param_base.c:620]Forbid to access parameter musl.ld.debug.dlclose [ 10.207932][ T1] [pid=1][PARAM][ERROR][param_base.c:390]Invalid workSpace for debug.hitrace.tags.enableflags [ 10.207942][ T1] [pid=1][PARAM][ERROR][param_base.c:620]Forbid to access parameter debug.hitrace.tags.enableflags [ 10.307640][ T54] bbox:[info][blackbox_core.c:267] wait for log part [/data] end!
最新发布
08-19
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值