大家好,团队
请帮您检查一下,我的 MCAN 波特率计算是否正确? 谢谢。
配置来自 C:\ti\mmWave_mcuplus_SDK_04_02_00_02\MCU_plus_SDK_awr294x_08_01_01_06\sources\drivers\mcan\V0\mcan.c
公式是 TDA 处理器代码的副本。
/*分别将默认的1Mbps 和5Mbps 配置为标称比特率和数据比特率 */
IF (比特时间!= NULL)
{
/*初始化位计时*/
bitTimes-> nomRatePrescalar = 0x7U;
比特时间->nomTimeSeg1 = 0x5U;
bitTimes-> nomTimeSeg2 = 0x2U;
BitTimes-> nomSynchJumpWidth = 0x0U;
BitTimes->dataRatePrescalar = 0x1U;
比特时间->dataTimeSeg1 = 0x3U;
比特时间->dataTimeSeg2 = 0x2U;
比特时间->dataSynchJumpWidth = 0x0U;
}
比特率计算:
位速率=((mcan_clk /预校准)/(计时参数总和))
nomRate,mcan_clk = 80 MHz,预校准=(nomRatePrescalar + 1)= 8,计时参数总和=(nomTimeSeg1 + TimenomSeg2 + 3)= 10
比特率=(80MHz / 8)/ 10 = 1000 kbps
datarate,mcan_clk = 80 MHz,预校准=(nomRatePrescalar + 1)= 2,计时参数总和=(nomTimeSeg1 + TimenomSeg2 + 3)= 8
比特率=(80MHz / 2)/ 8 = 5000 kbps
谢谢
韦斯利