学以致用 发表于 2026-5-7 11:17:39

Ai8051U的I2C功能引脚切换到01(P15、P14)时通信失败 | 已解决

Ai8051U的I2C功能引脚切换到01(P15、P14)时通信失败,切换到另外两组则正常。


在做一个项目需要使用I2C接口与传感器通信,之前测试是正常的,使用的是P32、P33引脚,后来因为结构需要,改了板子,将I2C引脚切换到了P15、P14,读取的返回值就一直是0xFF。
为了确认是不是板子修改的问题,将代码烧录到开发板(所有IO口独立引出的那种)中,使用杜邦线连接 传感器模组,使用I2C三组接口分别测试,结果也是 除了 P15、P14 这组不正常外,其他两组均正常。
切换操作使用官网库函数测试过,也直接给P_SW2赋值0x90测试过,结果都是一样
IO口的模式配置也全部都是准双向。
不知问题出在哪里?



最终查到原因,是个人测试代码中,包含可SPI的初始化,刚好使用的是同一组引脚,造成了冲突,是个人失误,与芯片无关!

_奶咖君_ 发表于 2026-5-7 11:32:55

用8H8K64U的时候,硬件IIC是可以的,,个人感觉8051U应该也是可以的。

再检查检查 硬件和程序吧。

学以致用 发表于 2026-5-7 12:00:16

手上现在没有逻辑分析仪,使用示波器观察了一下,是有时钟输出的,说明切换过去了,但是就是通信不正常,初始化函数没有做任何修改,只是改了 引脚切换,IO模式已经统一配置成了准双向。因为测试,没有再接其他的外设。

之前的STC8系列我也使用过第二组引脚的I2C,也是没问题的。
页: [1]
查看完整版本: Ai8051U的I2C功能引脚切换到01(P15、P14)时通信失败 | 已解决