乐鑫技术交流
直播中

艾玛

11年用户 800经验值
擅长:模拟技术 EDA/IC设计 RF/无线
私信 关注
[问答]

Arduino IDE 上的双I2C总线问题求解

我有一个带有 ESP 12-F、PCF8563 时钟和基于 SSD1306 的 OLED 的商用 PCB。由于一些愚蠢的原因,PCF 和 SSD1306 在两条不同的 IC2 总线上。详细信息:
PCF 为 SDA=0,SCL=2,地址 0x51
1306 为 SDA=5,SCL=4。地址 03C
我可以使用 Wire.begin(0,2) 或 Wire.begin(5,4) 与一个或另一个进行良好的通信,但无法在同一个草图中与两者进行通信。
我尝试使用“Wire.end();” 因为这应该是
  听起来很完美,但是......
当我使用它时,我得到一个编译器错误,
. 查看 Wire.h 和 Wire.cpp 文件,它们都包含 end() 函数。所以 ?????
1.关于这个错误有什么建议吗?Wire.h 文件有一个说明,它是在 2020 年修改的,所以它是相当新的。
2. 替代想法?I2C 多路复用器可能不在卡片中。如果没有软件解决方案,我将使用小刀和烙铁将两个设备放在同一条总线上。

更多回帖

发帖
×
20
完善资料,
赚取积分