首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在flash中调试bootloader?

如何在flash中调试bootloader?
EN

Stack Overflow用户
提问于 2010-02-26 22:21:19
回答 1查看 1.4K关注 0票数 2

s3c44b0x不支持闪存断点(不像其他处理器,如lpc1758,它有片上闪存),那么当bootloader仍然在闪存中运行时,如何调试它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-26 23:28:19

逻辑分析仪、printf、ICE和EPROM / Flash存储器仿真器将是老式的方法。

Samsung S3C44b0x (ARM7TDMI)声称具有片上ICE断路器调试支持,因此获得一个在线仿真器可能是您想要做的。

添加了

如果您有足够的RAM,在从Flash启动期间,您可以将日志消息打印到RAM中的内存缓冲区,然后在UART初始化后使用printf将此缓冲区输出到串行。

第二个附加组件:

要隔离引导过程的哪一部分,您可以将模块或步骤替换为空存根,唯一的目的是隔离崩溃。方法是缩小失败的可能性。创建一个仅初始化第一个基本步骤的固件映像,例如系统内存,如果可以,则添加您的任务或进程管家模块/步骤,稍后包括初始化UART等。

如果您有输出引脚,可以添加一些LED来计算二进制代码的节数,这样您就可以看到当前正在运行的代码部分。

看看Debugging Rules这本书,然后打印出你自己的免费Rules of Debugging海报。这是一本简短的书,虽然没有什么革命性的东西,但它巩固了调试过程,并帮助大多数人在调试中更有组织和更有条理。

参考文献:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2342199

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档