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.

28388的MCAN时钟频率

您好,我最近在使用28388D的MCAN模块,看大例程里面要求在CPU1里设置MCAN的时钟频率,指令为SysCtl_setMCANClk(SysCtl_MCANClkDivider divider),请问这是在哪个基准时钟上进行分频呢?看到datasheet里寄存器AUXCLKDIVSEL Register (Offset = 24h)也没有表述清楚,现在我配置CM的时钟为125M,辅助时钟是500M,这个MCAN应该配置多少分频?谢谢。

  • 可以使用辅助时钟(AUXCLKIN)来为MCAN位时序提供时钟。该时钟将馈入AUXPLL,因此应为AUXPLL配置正确的乘法器和分频器,使其满足数据表中表5-11(内部时钟频率)中所述的要求。可以使用MCANCLKDIV对AUXPLLCLK的输出进行预缩放,并将所得的输出用作MCAN位时序的基础。

    如果为位时序选择了CMCLK,则MCANCLKDIV将被忽略。MCAN仅在CM端分配,因此没有PALLOCATE0字段可将模块分配给C28x CPU1 / CPU2内核。

    另外请参考下面的帖子

    TMS320F28388D: MCAN baud rate calculation questions - C2000 microcontrollers forum - C2000™︎ microcontrollers...

    e2e.ti.com
    Part Number: TMS320F28388D Hi expert, I go through the TRM and still not sure how baud rate of MCAN is calculated based on register value or driverlib structures

  • 感谢您的解答,但是我还是没有太明白你说的意思,MCAN的时钟可以不用在CPU1里面进行配置吗?可以直接来自CM的125M系统时钟?CM的系统时钟通过哪个寄存器设置MCAN的具体时钟分频呢,MCAN的时钟频率最大可以设置为多少?谢谢

  • MCAN的时钟源可以来自于CMCLK(125M),也可以源自于AUXPLLCLK(500M),还可以源自于AUXCLKIN(外部晶振),我现在想让MCAN时钟源自于CMCLK(125M)或者AUXPLLCLK(500M),
    我的理解是这应该是在CPU1里面对寄存器CLKSRCCTL2进行配置才对;CPU1里面还需要进行其他配置吗?
    比如说需要配置分频系数吗,我一直没有理解这个函数SysCtl_setMCANClk(SysCtl_MCANClkDivider divider)是用来做什么?到底是给那个时钟进行分频,datasheet并没有说清楚,然后MCAN的时钟应该配置为多大?
  • 请参考TRM内的说明

x 出现错误。请重试或与管理员联系。