器件型号:MSP432P4111
您好!
我在使用 I2C 输入输出应用时遇到了一些问题。
我想在快速模式(400kHz)下通过 I2C 将 TCA8418连接到 MSP432P4111。 根据数据表、TCA8418需要0.6us 的 I2C 时钟高电平时间(t_sch)和1.3us 的 I2C 时钟低电平时间(t_SCL)。
我使用示波器测量了时序。 在我们的应用中、t_sch 为1.15us、t_SCL 为1.37us、因此我们的 t_SCL 非常接近所需的1.3us 时间、t_sch 远高于此时间。 这是正常的吗?
我还注意到、测得的总线时钟速率不是400kHz、而是342kHz。 我们的系统时钟为48MHz、UCB3BRW 寄存器中的预分频器值为120。 那么、我们为什么不获得完整的400kHz 频率呢? 如果我想获得400kHz 的频率、我必须将软件代码更改为480kHz。
我将 SDA 和 SCL 上拉电阻器从4k7更改为1k2。 然后总线时钟速率 从342kHz 增加到384kHz。 因此、时钟速率似乎取决于上拉电阻(和电容?)、但为什么? 是否有获得400kHz 的正确方法?
提前感谢您的帮助!
Matthias

