器件型号: TMS320F2800157-Q1
i2cLib_FIFO_Polling.c init.c …
我附加了.C 文件...我有 SVERE 问题
状态= I2CBusScan (I2CA_BASE、pAvailableI2C_Targets);..进入 InfinIT 循环..
我不知道背后的 RESAON。。。
请尽快查看。
正如标记我的照片以黄色突出显示它不会从黄色无限循环出来。
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.
器件型号: TMS320F2800157-Q1
i2cLib_FIFO_Polling.c init.c …
我附加了.C 文件...我有 SVERE 问题
状态= I2CBusScan (I2CA_BASE、pAvailableI2C_Targets);..进入 InfinIT 循环..
我不知道背后的 RESAON。。。
请尽快查看。
正如标记我的照片以黄色突出显示它不会从黄色无限循环出来。
尊敬的 Muntazha,
您能否确认是否看到控制器发送了第一个启动条件+地址 (0x50)、EEPROM ACK、然后由于 TX FIFO 为空、代码滞留在这一行中? 您可以尝试设置一下
I2C_setDataCount(base, 0);发送启动条件?
此外、还可以从以下句段的第一行中删除;:
while(I2C_getStopConditionStatus(base) && attemptCount <= 3U); // ← SEMICOLON
{
DEVICE_DELAY_US(I2C_Params->Delay_us);
attemptCount++;
}
此致、
Aishwarya
Muntaha,
另请查看本文档以获取与总线电容相关的信息、并确认: I2C 总线上拉电阻器计算。 4.7k 通常很好、但您可能需要不同的值、但假设这是定制电路板、电容也很重要。 Launchpad 已经处理好了。
软件方面、您能否提供 100kHz 下 I2C 工作情况的示波器屏幕截图? SCL 实际上是以该速率还是其他某个频率切换? 我还会尝试将代码放在第 58 行之后的第 49 行。
此致、
Aishwarya