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.

[参考译文] CCS/UCD3138:UCD3138HSFBEVM-029:DPWM 同步

Guru**** 2493545 points
Other Parts Discussed in Thread: UCD3138

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/712234/ccs-ucd3138-ucd3138hsfbevm-029-dpwm-sync

器件型号:UCD3138

工具/软件:Code Composer Studio

大家好、我最近学习了 UCD3138HSFBEVM_029演示板、无法理解"同步"功能的不重要之处、我想问两个问题。

I SET:LoopMuxRegs.SYNCCTRL.bit.SYNC_DIR = 1. 并在  我将 SYNC (TP46)下拉至 GND 时选中"LoopMuxRegs.SYNCCTRL.bit.SYNC_IN = 0"。 但我注意到、当为电路板供电时、" LoopMuxRegs.SYNCCTRL"的所有位等于1。  我想是否有其他关于"LoopMuxRegs.SYNCCTRL"的设置,但我找不到。 我想知道原因。

此外 ,我注意到“DPWMCTRL1”中的“EXT_SYNC_EN”寄存器,有两个注释: "设置 EXT_SYNC_EN 位会导致 DPWM 使用 Sync IN 引脚作为同步源"和"从 DPWM 到外部同步"、我对此感到困惑、我想 让 DPWM (不同演示板)时序保持一致、 如何设置寄存器?  

期待您的回复、  非常感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我假设当您说所有位都为1时、实际上是指所有活动位字段。 我也会看到这一点、除非我下拉引脚。

    要进行同步、只需将其他所有内容保留为默认值、并设置要同步到的 DPWM 中的 EXT_SYNC_EN 位。 这样、SYNC 引脚的输入也将用于 DPWM 的 SYNC 输入。 您可以将信号从另一个器件传输到 SYNC 引脚。 您可以运行 DPWM 信号、也可以使用另一个器件上的 SYNC 引脚作为输出、在这种情况下、您需要使用 SYNCCTRL 寄存器来实现该同步引脚和输出、并决定输出哪个 DPWM 同步信号。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常感谢!
    我多次测试电路板、当我将8引脚(ADC_EXT_TRIG/TACP/SYNC/PWM0)设置为 ADC_EXT_TRIG 模式时、它可以正常运行(包括输入和输出)。 但是、当在同步模式下工作时、它只能在输出模式下工作、不能在输入模式下工作。 我不知道代码是否正确写入:
    "杂 项 AnalogRegs.IOMUX.bit.EXT_TRIG_MUX_SEL = 2;//同步函数
    LoopMuxRegs.SYNCCTRL.bit.SYNC_DIR = 1;/SYNC 作为输入引脚工作"
    此外、当我下拉或上拉时、我检查"LoopMuxRegs.SYNCCTRL.bit.SYNC_IN"值、它始终等于1。 我认为我的代码应该有错误、希望您能给我一些建议。

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

    好的、我相信我已经解决了。  我已经在我的板上工作了。  需要解开的结点是 IOMUX 寄存器之间存在内置冲突、并且未记录优先级。  并且您的配置具有最低的优先级。  根据您描述的 IOMUX 设置、您实际上需要将 SYNC 引脚置于三个位置。  

    当然、您要求它位于 EXT_TRIG 引脚上。  

    您还要求它位于 TCK 引脚上、这可能是因为芯片进入 IOMUX 的 JTAG_CLK_MUX_SEL 字段中的 A 2。  即使直接进入 ROM 模式、UCD3138也会在该域中置位2。  所有后面的系列成员在 ROM 模式中置为0、但是如果它们使用有效的校验和直接进入闪存、它们也会置为2。  这样做是为了确保 JTAG 被禁用以保持代码安全。  

    您还要求它也位于 SYNC 引脚上、因为 SYNC_MUX_SEL 字段中有一个零。

    为了使其正常工作、我采用了您的设置并向 JTAG_CLK_MUX_SEL 写入0、并向 SYNC_MUX_SEL 写入1。  我认为、只要您不在其中任何一个中选择 SYNC、您就可以在这两个值中添加其他值。  

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