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.

[参考译文] SDK-AM243X:MCU-PLUS-SDK v8和 v9之间的 I2C 速度差异

Guru**** 2448780 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1502239/mcu-plus-sdk-am243x-i2c-speed-difference-between-sdk-v8-and-v9

器件型号:AM243X - MCU-PLUS-SDK

工具/软件:

您好、

我们正在将现有工程从 SDK v8迁移到 v9。 我们用 EEPROM 代替了 I2C、我看到 I2C 驱动程序已经进行了大量更改、现在比使用 V8慢很多。 速度差似乎是由于睡眠功能造成的。 如果我替换 Clock_uSleep 以使用 V8中的 I2C_udelay 函数、则可以获得更好的速度。

- i2cLldHandle->Clock_uSleep = ClockP_usleep;
+ i2cLldHandle->Clock_uSleep = I2C_udelay;

我的问题是:

1. 使用 SDK v9优化 I2C 事务速度的最佳方法是什么?

2、有没有建议验证 I2C 驱动器后的稳定性?

谢谢你。

赢了。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Won:

    感谢您的查询。 我已经听取了你的意见并进行了研究。 请等待一段时间恢复。

    此致、

    Tushar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Won:

    Unknown 说:
    如果我替换 Clock_uSleep 以使用 V8中的 I2C_udelay 函数、我可以获得更好的速度。

    您发现这两个 API 调用的性能之间有多大差异?

    我可以看到、较旧的 i2c_udelay API 实现不正确、实际上并未延迟给定的微秒数。

    请参阅下图。  

    此致、

    Tushar