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.

[参考译文] TM4C129ENCPDT:Tiva C CAN 位时序错误

Guru**** 2482225 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/721734/tm4c129encpdt-tiva-c-can-bit-timing-error

器件型号:TM4C129ENCPDT

大家好、

我想再次提出这个问题。

e2e.ti.com/.../350758

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

    您好!

     我认为源代码不是错误的。 我认为变量名称可能被定义为 ui32PropPhase1Seg、而不是 ui32SyncPropPhase1Seg、因为 Sync 字段是始终等于1 quanta 的段。 这是隐含的份额。 调整标称位时序时、硬件将始终考虑1个份额同步字段。

    这是数据表中显示的内容。 请注意、寄存器域 TSEG1、TSEG2被设定为一个小于其功能值的数值。 如果您查看第一个公式、位时间等于(TSEG1 + TSEG2 + 3)。 * tq。 您可能会询问3的来源。 由于编程值比功能值小1、实际功能(Prog+Phase1+Phase2)将比(TSEG1+TSEG2)多2个。 这占2。 另一个1在哪里? 这是为了考虑隐含的"同步"。