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.

[参考译文] AM2434:ICSSG XFER2VBUS 问题

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1291562/am2434-icssg-xfer2vbus-question

器件型号:AM2434

您好、

1.  从 TRM、XFER2VBUS 的写入命令、17.B3启用64字节模式或32字节模式。

我想知道如何设置 R17.B3?  

是否意味着 LDI R17.B3、0将在32字节模式中设置 xfer2vbus、而 LDI R17.b3、1将 xfer2vbus 设置为64字节模式?

或者您能否共享一个示例代码来启用32字节模式?

2. Read Command 中的注释相当模糊。

您能解释更多吗?

如果0 -> 1、则必须写入 RD_ADDR。  这意味着什么?
如果1 -> 0、则不得写入 RD_ADDR、必须漏极 RD_DATA/RD_CMD  这是什么意思?
如果0 -> 0、则必须写入 RD_ADDR  这是什么意思?

如何设置 RD_AUTO 模式? 您能分享一个示例代码吗?

此致

安德烈

 

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

    您好、Andre、

    这一问题的专家将在今后两天休假(11/14 - 11/15)。 响应可能会延迟。 感谢您的耐心等待。

    此致、

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

    您好 Andre:

    我会尽量在假期期间提供一些额外的信息。  

    吕运平 说:
    我可以知道如何设置 R17.B3?  [/报价]

    这可以通过不同的方式完成、有关更多信息、请参阅 https://www.ti.com/lit/ug/spruij2/spruij2.pdf?ts = 1699979551782&ref_url=https%253A%252F%252Fwww.google.com%252F 

    您可以使用 LDI R17.B3、0或者 汇编指南中详述的其它方法来设定此位。  

    不过、  

    是否意味着 LDI R17.b3,0将在32字节模式下设置 xfer2vbus,而 LDI R17.b3将在64字节模式下设置 xfer2vbus?

    这是正确的、默认情况下、xfer2vbus 为64字节模式、并设置 R17.B3。  

    您能解释更多吗?

    如果0 -> 1、则必须写入 RD_ADDR。  这意味着什么?
    如果1 -> 0、则不得写入 RD_ADDR、必须漏极 RD_DATA/RD_CMD  这是什么意思?
    如果0 -> 0、则必须写入 RD_ADDR  这是什么意思?

    [/报价]

    0/1表示 xfer2vbus 小工具是否处于读取自动模式。 设置该值时、必须写入读取将从哪个地址开始。 如果该位已置位且要清除、则必须在写入新的读取地址之前弹出所有数据。  

    此致、

    埃里克

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

    Erik、

      您提供的链接只是说明指南。 这是你要给我的吗?

    在我的测试中、无论我设置 R17.B3=0或 R17.B3=1、XFER2BUS 都可以进行64字节模式事务。

    请检查以下代码和测试结果。

    在此代码中、我在进行64字节 WR 事务之前设置 R17.B3=0。 并且在 R18和 R19中将目标地址加载为64字节模式。

    这是 PRU 寄存器捕获和目标地址存储器转储。

    我在64字节 WR 事务之后的行处设置断点。

    您可以看到结果仍然使用64字节模式。 我希望它应该将32字节地址写入 R11-R10、但我不能。  

    您能否提供正确的过程来使用32字节模式?

    此致

    安德烈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以尝试以下代码吗?
    ; Macro: M_xfr2vbus_write32
    ; 通过 XFR2VBUS widget 发出32字节写命令
    ; PeakCycles:
    ;    4个周期
    ; 调用:
    ;   无
    ; 寄存器:
    ;   r2..r9、r10:r11
    ; 伪代码:
    ;   (开始代码)
    ;   使用编程地址向 xfr2vbus 小部件发出 XOUT
    ;   (结束代码)
    ; 参数:
    ;   xid :实例(<XFR2VBUSP_WR0_XID><XFR2VBUSP_WR1_XID>)
    ;   addr_low : 48位外部地址的低32位
    ;   addr_high : 48位外部地址的高16位;
    ; 返回:
    ;   无
    ; 另请参阅:
    m_xfr2vbus_write32 .macro xid、addr_low、addr_high
      ldi32 R10、addr_low
      LDI r11.w0、addr_high
      XOUT xid、&R240
      .endm
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Nilabh,

      Marco 的确适用于32字节模式。 但我不知道 R17.B0函数是什么。 TRM 是否正确?

    此致

    安德烈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    但我不知道 R17.B0函数是什么。 TRM 是否正确?

    R17.B)对于32B 或64B 似乎不会影响任何内容。

    让我在内部向大家核实一下。 感谢您对此事的关注。