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.

DS90UB948-Q1: DS90UB948-Q1

Part Number: DS90UB948-Q1

主 IIC输出的400Khz  经过 ds90ub941ASQ 到ds90ub948Q1  透传出来的IIC 只有76.9Khz  .请问如何解决 透传中途会衰减 IIC 的速率问题。   

  • 您好,关于您的问这个问题我这边看下,稍后给您答复。

  • 您好,948的0x26和0x27您是怎么配置的?

    在您的应用中MCU--DS90UB941--DS90UB948---Display,如果要和remote slave 通信,948作为代理控制器,948的I2C速度是通过0x26和0x27配置的。

    默认的是100Khz的速率。

  • 谢谢,那我要输入400K ,输出也是400K 那这个两个寄存器,分别要设置值是多少呀,有没有计算公式

  • 谢谢,那我要输入400K ,输出也是400K 那这个两个寄存器,分别要设置值是多少呀,有没有计算公式

  • I2C_PERIOD = SCL_HIGH_TIME + SCL_LOW_TIME
    I2C_FREQ = 1/I2C_PERIOD

    以0x26默认值为0x83,0x27默认值为0x84为例,默认的是100Khz的速率,我们可以计算下。

    0x83十进制=131,0x84十进制=132.,OSC内部晶振使用的是26Mhz

    SCL_HIGH_TIME=(1/OSC)*register value=(1/26*10^6)*131

    SCL_LOW_TIME=1/OSC)*register value=(1/26*10^6)*132

    因此SCL_HIGH_TIME + SCL_LOW_TIME=(1/26 *10^6)*(131+132)

    I2C_FREQ = 1/I2C_PERIOD=(26 *10^6)/263=100Khz

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