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.

[参考译文] MSP-FET:读取问题时 MSP-FET 复位

Guru**** 1831180 points
Other Parts Discussed in Thread: MSP-FET, MSPDS, MSP430G2452, ENERGYTRACE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1055262/msp-fet-msp-fet-reset-on-read-issue

器件型号:MSP-FET
主题中讨论的其他器件: MSPDSMSP430G2452ENERGYTRACE

此帖子与我之前发布的 MSP-FET 保持一致:由于该线程已锁定、因此从1.4a 迁移到2.0+ MSP-FET。

我不会详细介绍这里的问题、因为前面的帖子中对此进行了介绍、 但总之、在 SBW 中使用的 MSP-FET 上的 TDIO 引脚表现出一种行为、在该行为中、信号在读取启动前被拉至低电平两次、这会导致器件复位两次、因为 TDIO 连接到 MSP 上的 SBWTDIO/RESET 引脚、 并将 RESET 引脚拉至低电平会导致复位。 这种行为对于较新的 MSP-FET 2.0+而言是新的、但在较旧的 MSP-FET 上不存在。 如果您想在不干扰程序的情况下进行读取、这是一个问题、并且不能接受使用旧的 MSP-FET、因为支持正在迁移到新的编程器、最终会被弃用、无法购买。

虽然我一直无法找到 MSP-FET 行为本身的解决方案、但我找到了一种权变措施、我希望其他人在解决此问题之前知道他们是否处于同一场景中。

注意:这只适用于 SBW、不适用于完整 JTAG、并且只适用于兼容的 MSP430芯片。

事实上、大多数开发平台上的 MSP-eZFET 调试器能够用于除 MSP 板载目标之外的外部目标、并且使用 SBW 仿真。 此编程器不存在 MSP-FET 编程器中存在的复位问题、您只需从开发板上移除所有跳线并将其跳线连接到外部器件即可。 所有 eZ-FET 器件手册都详细介绍了这一点。

虽然这是一种权变措施、但遗憾的是、板载 eZ-FET 的成本几乎是其10倍的编程器最终至少是 SBW 的更好器件。

我通过观察示波器上的 SBWTDIO/RESET 信号并使用两个编程器来验证结果。 可以清楚地看到、MSP-FET 编程器会在读取前使信号失效两次、从而导致双复位。 我认为这完全是一个软件问题、由于其中的一个断言已被为 MSP430Flasher 提供的修订代码删除、而修订代码只允许您对 SBW 接口进行硬编码、我认为问题在于程序员之间的初始化差异以及处理方法。 我不是嵌入式编码领域的专家、因此我可以进行故障排除。 希望这能使今后在解决这个问题上遇到困难的任何人清楚明了。

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

    您好!

    感谢您分享知识。

    如果您想降低成本、可以尝试以下操作:MSP430_ezFETLite

    如果您想找到 MSP-FET 和 ezFET,的源代码、您可以在 MSP430.dll 开源包中找到它们: MSP 调试堆栈

    伊斯天

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

    TI 应尽快解决此问题并发布新的 MSP-FET 固件。 客户购买了 MSP-FET、该 MSP-FET 应通过 SBW 或 JTAG 接口连接到自由运行的目标器件、而不会将其复位。 调试 MSPDS 不是客户的任务。

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

    我个人希望我更了解尝试修复此问题的源代码、但我同意修复此问题不应由客户来完成。 如果我有时间像这样教授自己的低级代码、我将在这里发布修复程序。

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

    我了解有关源代码的更多信息、我的建议是让 TI 来处理。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="495386" URL"~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1055262/msp-fet-msp-fet-reset-on-read-issue ]我认为这完全是一个软件问题、并且由于其中一个断言通过为 MSP430Flasher 提供的修订版代码被删除、只需对 SBW 接口进行硬编码、 我认为问题在于程序员与处理方法之间的初始化差异。

    我查看 了 MSPDebugStack_OS_Package_3_15_1_1的内容、尝试了解软件如何处理不同的 MSP-FET 硬件版本。

    我唯一能找到的区别是 BIOS/src/fw/ft/EnergyTrace_TSPA/VCC_Current.c 源文件、该文件用于 MSP_FET 上的 MSP430G2452软件控制的直流/直流 MCU;有两个不同 的 pwmConfigTable[]查找表、用于查看两个 MSP-FET 硬件版本的每个目标电压的 PWM 设置。 可能还有一些其他软件差异、我没有找到这些差异。

    找到 CCS/MSP-FET:MSP-FET 2.x 版无法在目标处理器上写入闪存 、而目标处理器中包含一些有关 MSP-FET 硬件版本之间硬件差异的信息。  《MSP 调试器用户指南》(修订版 O) 提供了以下器件的原理图:

    • MSP-FET USB 调试器修订版1.2
    • MSP-FET USB 调试器修订版2.5

    一个硬件差异是、在版本2.5上、接地端和每个目标 MCU 信号之间有100pF 电容器:

    版本1.2上没有的:

    不确定 MSP-FET 之间的硬件差异是否可以解释在尝试连接到自由运行的目标器件时 RESET 引脚的行为差异。

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

    我想你是对的、zrno。 它应该由 TI 修复。 但是  从 CCS/MSP-FET 中的回复中可以看到:MSP-FET 2.x 版无法在目标处理器上写入闪存、目前仍没有更新 MSP-FET 固件的计划。 无论如何、我将向相关团队报告此问题。

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

    切斯特、

    也许我错了、但我看不到挖掘旧源代码的任何意义、因为新的 MSP-FET 2.X 版本没有开源固件。 此外、不确定 FPGA 是 MSP430主器件和目标器件之间链的情况。

    伊斯天

    Stefan Topic 属于全球生产和商店中"全新"MSP-FET 2.X (第二代)的错误报告。 他对"旧"MSP-FET 1.X 版本没有任何问题、也没有人提到"旧"MSP-FET 1.X 的固件更新 如果没有 MSP-FET 2.X 固件更新计划、TI 应将错误列表放在 https://www.ti.com/tool/MSP-FET 顶部 、并注意不会有新固件、如果客户希望在不复位的情况下从自由运行的目标读取 MSP-FET、则不会购买。  

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

    您好、Zrno、

    感谢你的建议。 我说我们没有任何计划、这并不意味着我们不会、因为仍有团队负责维护该项目。 实际上、我不认为这是一个无意识的错误。 我将假定设计人员应该如何修复 JTAG 访问而不进行复位所导致的其他错误。 这可能是添加2个复位序列的原因。 无论如何、仍需要时间来了解添加此功能的原因。

    伊斯天  

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

    在此处添加另一个解决方案以解决此问题:

    禁用复位功能并将其更改为 NMI。 然后、您可以停止运行代码、而不会干扰代码。

    伊斯天