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.

[参考译文] F29H850TU:CAN 比特率

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1664994/f29h850tu-can-bit-rate

器件型号: F29H850TU

我正在 F29 上进行比特率配置。  它适用于 CAN 经典模式、速率为 500K。  我使用的是 20MHz 晶体。  我为 20MHz CANA 时钟的目标分频 200MHz。

已经有一段时间了、对这些计算提出质疑。  能否请您将 chCANBitTimingCalculator.xls 记录我的号码。  应该是什么。  我当时拍摄的是 70%到 80%采样点。  谢谢你。

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

    您好、Michal、  

    总结计算:  

    CPU_clk = 200MHz

    can_clk = 20Mhz [ CPU CLK 被分频]

    PreScalar = 4

    TimeSeg1 = 3+3

    TimeSeg2 = 3

     波特率 = can_clk/(预分频)*(1 + TimeSeg1 + TimeSeg2)  

             = 20 /(4 *(1+3+3+3))

             = 20/40

             = 0.5MHz = 500kHz  

    采样点 =(1 + TimeSeg1)/ 1 + TimeSeg1 + TimeSeg2

                 =(1+3+3)/(1+3+3+3)

                 = 7/10

                 = 70%

    采样点和波特率的计算似乎很好。 这将实现您所期望的结果。   

     
    需要注意的一个小问题是写入寄存器的值。 如果您计划自己写入这些值、请注意写入的值必须小于预期值。 如果您在使用 SDK 和 MCAL 产品、则不必担心、驱动程序会照做这件事。  



    此致、  
    Pranav Siddappa.