Other Parts Discussed in Thread: SYSCONFIG
器件型号: AM263P4-Q1
主题: SysConfig 中讨论的其他器件
在与外部 EEPROM 进行 I2C 通信期间(执行 I2C_TRANSFER() 时)发生超时。 情况概述如下:
*正在使用 AM263Px MCU、SDK 版本 09.02.00。
* I2C3 用于与 EEPROM 通信。
*要启用超时, SDK 的 eeprom_write () 和 eeprom_read () 函数不用于与 EEPROM 的通信。 而是使用添加了超时设置的自定义函数。
*超时持续时间是根据从比特率和数据传输音量得出的估计通信时间来设置的。
*一个单独的任务是使用 I2C1 和 I2C2 与 EEPROM 以外的器件进行通信。
*所有 I2C1、I2C2 和 I2C3 设置的比特率都相同,中断被禁用。
*我们已经确认在与 EEPROM 进行通信时,I2C1 和 I2C2 通信(执行 I2C_TRANSFER()) 在一个单独的任务中发生。
*进行以下更改后,与 EEPROM 通信期间的超时不再发生:
**禁用 I2C1 和 I2C2 通信、或在与 EEPROM 通信期间显著延长超时时间。
根据上述情况、我们认为同步 I2C 通信产生的作用会延长通信时间。
请告诉我们这种现象的原因并提出相应的对策(例如,在同时进行 I2C 通信时估算通信完成前的时间的正确方法)。
预期响应日期:2026/5/17