This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TPS65982:单线调试器接口

Guru**** 2589265 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/910579/tps65982-single-wire-debugger-interface

器件型号:TPS65982

数据表中提供的关于 SWD 接口的唯一信息是:

9.3.15单线调试器接口

SWD 接口提供了一种直接控制数字内核的机制。

如何利用这种机制 来"直接控制数字内核?" 数据表甚至未指定数字内核的架构。

请提供更多有关 SWD 接口所提供机制的详细信息。

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SWD 接口通常保留用于内部调试。 如果您想与 PD 控制器通信、我建议使用 I2C 接口。 有大量现成的文档可用于介绍如何使用 I2C 通道与 PD 控制器进行交互  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的回答。

    我知道 i2c 接口、但仍然希望使用可用的和用户公开的 SWD、即使它的使用是"非典型"的。 没有公开文档提到 SWD 只是一个内部接口、这与之相反(请参阅文章中的摘录)。

    我的问题不是何时或何时使用社署,而是如何使用。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、我理解您的请求。 我所说的是、由于没有说明如何使用此功能的文档、因此您将很难实现此功能。 I2C 接口有详尽的文档记录、应使您的设计实现更简单。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    缺少文档并不是放弃承诺接口的原因。 这是发布缺失文档的原因。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您想要使用 SWD 而不是 I2C、具体原因是什么? 它们都需要两根导线、并且通过使用 IRQ 线路、您实际上可以从 I2C 接口获得更多功能。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SWD 在调试附件模式中复用、i2c 不是。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    以下是前一个 E2E 主题的摘录(链接如下)

    SWD 到 SBU 引脚的多路复用是 TI 内部固件调试功能、但固件1.12.07中确实存在您的建议。 我们不建议使用该模式、该模式被置于器件中用于内部开发和调试目的、但如果您确实使用该模式、我们无法更改其功能。  

    https://e2e.ti.com/support/interface/f/138/t/701315#pi320995filter=all&pi320995scroll=false 

    不建议使用多路复用功能、因此如果这是您选择通过 I2C 进行 SWD 通信的原因、那么我建议使用 I2C、因为 I2C 为您提供了更多的控制和功能、例如 IRQ 功能。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    再次感谢您的推荐。

    不过,我再也不想就使用 SWD 接口的问题提出进一步的建议。 我完全明白这是“非典型”,“不推荐”。 我所寻找的是有关如何使用它的文档、尤其是因为接口被认为是可用和可访问的(即使"不推荐"、也是官方文档中未提到的方式)。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    除了数据表中已经提到的内容外、目前还没有说明如何使用 SWD 接口的文档。 数据表中的图9显示了 SWD 接口的消息传递序列、其中突出显示了表7.25中描述的时序变量。  

    请参阅主机接口技术参考手册、了解要写入/读取的寄存器和值

    https://www.ti.com/lit/ug/slvuan1a/slvuan1a.pdf?ts=1591126463876

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    数字内核的 CPU 架构是什么(如果有)?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的、我自己想了:

    通过 SWD 连接到目标
    找到 ID 为0x0BC11477的 SW-DP
    DPIDR:0x0BC11477
    扫描 AP 映射以查找所有可用 AP
    AP[1]:AP 扫描已停止、因为已达到 AP 映射的末尾
    AP[0]:AHB-AP (IDR:0x04770031)
    迭代 AP 映射以查找要使用的 AHB-AP
    AP[0]:找到内核
    AP[0]:AHB-AP ROM BASE:0xE00FF000
    CPUID 寄存器:0x410CC601。 实现者代码:0x41 (ARM)
    找到了 Cortex-M0 r0p1、小端字节序。
    FPUnit:4个代码(BP)插槽和0个文字插槽
    CoreSight 组件:
    ROMTbl[0]@ E00FF000
    ROMTbl[0]:E000E000、CID:B105E00D、PID:000BB008 SCS
    ROMTbl[0]:E0001000、CID:B105E00D、PID:000BB00A DWT
    ROMTbl[0]:E0002000、CID:B105E00D、PID:000BB00B FPB
    已识别 Cortex-M0。