打印
[其他ST产品]

如何在外部 flash 上调试代码?

[复制链接]
392|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
柴库柴库|  楼主 | 2025-3-16 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
正在调试映射在 0x90000000 的外部flash中的代码。但是,在调试期间收到以下错误。Failed to execute MI command:          -data-disassemble -s 2415922564 -e 2415922663 -- 3          Error message from debugger back end:          Cannot access memory at address 0x90000d86












使用特权

评论回复
沙发
Wordsworth| | 2025-3-22 07:46 | 只看该作者
尝试调整调试设置,在调试器的配置中增加等待时间,或者调整数据传输速度,可能有助于避免访问错误。

使用特权

评论回复
板凳
Bblythe| | 2025-3-22 07:47 | 只看该作者
检查外部 Flash 的初始化代码,确保在程序启动时,外部 Flash 已经正确初始化。如果 Flash 初始化失败,也可能导致调试过程中访问地址失败。

使用特权

评论回复
地板
Pulitzer| | 2025-3-22 07:48 | 只看该作者
通过连接脚本验证外部 Flash 地址,检查是否在调试时使用了正确的连接脚本或链接文件,确保外部 Flash 的地址被正确映射到 MCU 的内存空间。

使用特权

评论回复
5
Uriah| | 2025-3-22 07:49 | 只看该作者
使用简单的测试程序,创建一个简单的程序,把代码加载到外部 Flash 中,看看是否能够正常运行,确保外部 Flash 的读取和写入没有问题。

使用特权

评论回复
6
Clyde011| | 2025-3-22 07:50 | 只看该作者
查看调试日志,通过调试器的日志查看是否有更多的错误信息,帮助确认问题的具体原因,比如是否是 Flash 地址访问冲突或调试器未能正确读取外部存储器。

使用特权

评论回复
7
公羊子丹| | 2025-3-22 07:51 | 只看该作者
确认外部 Flash 的连接和配置,确保外部 Flash 与 MCU 的连接正确,地址映射(例如 0x90000000)在硬件和程序中都正确设置。

使用特权

评论回复
8
周半梅| | 2025-3-22 07:52 | 只看该作者
检查外部 Flash 的启动地址,确保在调试时,外部 Flash 的起始地址(0x90000000)确实是正确的,并且与程序中的启动地址匹配。

使用特权

评论回复
9
童雨竹| | 2025-3-22 07:53 | 只看该作者
在调试器中设置正确的 Flash 存储器映射,在 STM32CubeIDE 或其他 IDE 中,确保你已经正确配置了外部 Flash 的存储映射,并且 Debug 配置中包含该存储区域。

使用特权

评论回复
10
帛灿灿| | 2025-3-22 07:54 | 只看该作者
调试器支持问题,部分调试器可能不完全支持外部 Flash 的直接调试,可以尝试更新调试器固件或使用其他调试工具,如 J-Link。

使用特权

评论回复
11
万图| | 2025-3-22 07:55 | 只看该作者
检查外部 Flash 的时序和频率,确认外部 Flash 的时序和读写频率没有设置得过高,导致调试时无法正确访问。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

31

帖子

0

粉丝