I3C ENTDAA tSU-STA time

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

I3C ENTDAA tSU-STA time

1,366 Views
AlicePXLin
Contributor II

I3C tSU-STA time 

@kerryzhou 

你好,下面是我的code

請問該如何看FCLK 是多少呢?

    CLOCK_AttachClk(kMAIN_CLK_to_I3C_CLK);
    CLOCK_SetClkDiv(kCLOCK_DivI3cClk, 4);

    BOARD_InitBootPins();
    BOARD_InitBootClocks();
    BOARD_InitDebugConsole();
    I3C_MasterGetDefaultConfig(&masterConfig);
    masterConfig.baudRate_Hz.i2cBaud          = EXAMPLE_I2C_BAUDRATE;
    masterConfig.baudRate_Hz.i3cPushPullBaud  = 4000000U;
    masterConfig.baudRate_Hz.i3cOpenDrainBaud = 1500000U;
    masterConfig.enableOpenDrainStop          = false;
    I3C_MasterInit(EXAMPLE_MASTER, &masterConfig, I3C_MASTER_CLOCK_FREQUENCY);
    I3C->MCONFIG =
        (I3C->MCONFIG & ~(I3C_MCONFIG_SKEW_MASK | I3C_MCONFIG_PPBAUD_MASK | I3C_MCONFIG_PPLOW_MASK | I3C_MCONFIG_ODBAUD_MASK | I3C_MCONFIG_I2CBAUD_MASK | I3C_MCONFIG_ODSTOP_MASK)) |
        I3C_MCONFIG_SKEW(0)   |  // SKEW = 0
        I3C_MCONFIG_PPBAUD(6) |  // THPP = 40ns * (7) = 280ns
        I3C_MCONFIG_PPLOW(1) |  // TLPP = 280ns+1*40ns
        I3C_MCONFIG_ODBAUD(0) |  // ODBAUD = THPP*(0)= 280ns
  	  I3C_MCONFIG_ODHPP(1) |  //  ODHPP=1 use PPBAUD 280ns for high
  	  I3C_MCONFIG_ODSTOP(0) |
        I3C_MCONFIG_I2CBAUD(8);  // 5*ODBAUD = 5*280ns for high, 5*ODBAUD = 5*280ns for low

 

謝謝! 

Labels (1)
0 Kudos
Reply
3 Replies

1,356 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @AlicePXLin 

  感谢你新建的帖子。

这个问题,如果你看了RT685 UM的时钟树就会很清楚了:

kerryzhou_0-1642755128851.png

你看,也就是你选择的时钟,然后做分频。

所以你看看你的main_clk是多少,还有分频多少,然后除一下就出来了。

希望能帮到你!

如果还有问题,欢迎继续交流!

Best Regards,

Kerry

 

0 Kudos
Reply

1,351 Views
AlicePXLin
Contributor II

@kerryzhou 

我選的main clock 為 A_SEL(3)裡面再選擇48M Hz

AlicePXLin_0-1642757770521.png

AlicePXLin_1-1642757824823.png

CLOCK_SetClkDiv(kCLOCK_DivI3cClk, 4);

DIV = 4

這樣I3C FCLK = 48/4 = 12MHz 嗎?

該如何設定才會 FCLK = 25MHz呢?

謝謝!

0 Kudos
Reply

1,345 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @AlicePXLin 

 可以调主频,调分频。

  你如果使用MCUXPresso IDE, 里面的clock 工具就能直接改时钟的。

  你先试试看。

如果不行,我周一去公司帮你调看看。

Best Regards,

Kerry

0 Kudos
Reply