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.

[参考译文] AM263P4:CAN TDC SDK 值选择

Guru**** 2810285 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1585016/am263p4-can-tdc-sdk-value-selection

器件型号: AM263P4
主题: SysConfig 中讨论的其他器件

嘿、专家、

有关 TI 示例的问题:mcan_external_read_write_am263px-cc_r5fss0-0_nortos_ti-arm-clang。 甚至是 TDC 的完整 SDK 默认设置。
其中、它们使用 TDCO = 0x6 且 TDCF = 0xA。 我想将 SSP 设置为大约 70%–90%的第一个 SSP。 我希望 TDCO = 0xD 等操作。  
您能解释为什么 TDCO 和 TDCF 的值选择它们的方式吗?

此致、

Marcel

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

    嗨、Marcel、

    TDCO 的值 取决于最终应用中的延迟、但 6 是一个很好的起点。 它还适用于我们的示例、对于大多数收发器来说都是一个很好的值。 由于它是 SysConfig 中的可配置值、因此用户可以根据使用的收发器和比特率自由进行计算和更改。

    此致、
    Pranav Siddappa.

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

    嗨、Pranav、

    根据我的理解、TDCO 对任何与应用和收发器延迟有关的事情都一无所知。 TDCO 会添加到 TDCV、即测得的延迟。 因此、TDCO 仅用于在接收位内设置采样点。 其设置为 6、在 CAN 上有一个 80MHz 时钟、这意味着为 75ns。 总线速度为 5Mbit 时、其中一个位为 200ns。 采样率为 37.5%。 正常采样点设置为 70%–90%、以避免在位开始时出现振铃。 所以它仍然不清楚为什么你选择 37.5%。 在此刻,这似乎更像是猜测,而不是一个明智的选择对我来说。  

    此致、
    Marcel

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

    嗨、Marcel、  

    很抱歉晚才回复。 正如您所说的、正常采样点应该是 70-90%。 但 SSP 没有设置此类限制。 每个位无需具有 SSP 点。 TRM 指定 SSP 点应在数据阶段少于 6 位时间、这意味着 SSP 的唯一限制是该点应每 6 位至少放置一次。  

    您计算出的 TDCV 值为 23。  
    can clk : 80MHz
    每个 quant 为 25ns
    对于数据比特率:
    - Prop Seg 是 2
    -阶段 1 是 3
    - Phase Seg2 为 0

    因此、每个位为 6quanta (1+2+3)、1 用于 SYNC 段。
    TRM 提到、TDCV+ TDCO 值应小于数据阶段的 6 位时间。
    因此、TDCO+TDCV 最高可达 6x6 -> 36quanta。

    TDCV 不断变化、由收发器决定。 TDCO 应小于 13。 将其设置为 13 是不安全的、因为 TDCV 可能会出现尖峰并可能导致位错误。 因此、当 TDCV 为 23 时、6 觉得是一个给 TDCO 的安全值。

    上面是 TRM 的屏幕截图。

    此致、
    Pranav Siddappa.