Cortex-M3 调试详解:SWD 接口与限制

需积分: 30 41 下载量 115 浏览量 更新于2024-08-06 收藏 13.01MB PDF 举报
"LPC17XX系列调试指南——基于SWD接口" 本文主要讨论的是LPC1700系列Cortex-M3微控制器的调试技术,特别是使用Serial Wire Debug (SWD) 接口的过程和注意事项。SWD是ARM公司推出的一种轻量级调试接口,用于对嵌入式系统进行编程和调试。它使用两个引脚,SWDCLK和SWDIO,实现与CPU的通信,而SWO引脚则提供了额外的数据输出功能。 在表33.2中,列出了SWD接口的引脚描述: 1. **SWDCLK** - 作为输入的串行时钟,为调试逻辑提供时钟信号,是调试过程中同步的基础。 2. **SWDIO** - 这是一个输入/输出引脚,用于调试工具与Cortex-M3 CPU之间的双向通信,控制CPU的执行。 3. **SWO** - 输出引脚,可以传递ITM (Instrumentation Trace Macrocell) 和/或 ETM (Embedded Trace Macrocell) 的数据,方便外部调试工具进行实时分析。 接着,表33.3介绍了并行跟踪引脚,如TRACECLK和TRACEDATA[3:0],用于更复杂的调试需求,提供更高的数据吞吐量。 调试过程中需要注意的要点包括: 1. LPC1700系列在深度休眠和掉电模式下不能通过常规方式唤醒,因此在调试阶段应避免使用这些低功耗模式。 2. 调试模式会改变CPU的低功耗状态,影响整个系统的功耗,使得在调试时测得的电源值可能高于实际运行时的值。 3. 当CPU暂停时,系统节拍计时器和重复中断定时器也会自动停止,但其他外设不受影响。在某些调试操作中,如单步调试,如果重复中断定时器的PCLK频率低于CPU频率,其计数可能会不准确。 4. 如果代码被读保护,将无法对该设备进行调试。 此外,文档还提及了广州周立功单片机发展有限公司的相关信息,包括其在各地的分公司的地址、电话和网址,这是一家专注于单片机开发和销售的公司,为用户提供产品和服务支持。 在进行LPC1700系列微控制器的开发和调试时,了解上述信息至关重要,它可以帮助开发者避免常见问题,更有效地进行程序调试和系统优化。在使用SWD接口时,需遵循正确的操作步骤,确保正确配置引脚,并理解其对系统行为的影响。同时,考虑到电源管理和低功耗模式的限制,开发者应当调整调试策略以适应实际应用的需求。