开在边缘 发表于 2020-6-18 22:32:44

Arduino core for ESP32,同时使用两路I2C,会出现问题


我使用xTaskCreatePinnedToCore,在两个cpu上各开启了一个任务,两个任务分别使用Wire和Wire1,然后发现两路I2C无法同时进行读写。只要其中一路I2C在读写的时候,另一路I2C就无法读写,只能等着,否则会读写超时。

按理说两路I2C是完全独立的,为什么不会同时工作呢?

开在边缘 发表于 2020-6-18 22:40:23

不同的通讯速率我也尝试过,无论是100kHz,还是400kHz,都会出现问题。

另外有意思的是,其中一路I2C是连接的OLED,使用u8g2库。然后即便是使用u8g2中的软件I2C,同样也会出现问题。

开在边缘 发表于 2020-6-18 22:43:29

还有就是我把其中一路I2C换成SPI,竟然也是冲突的。难道I2C+I2C或者I2C+SPI就无法同时工作?

20060606 发表于 2020-8-1 05:20:43

可能是两路i2c都接在了一个接口
页: [1]
查看完整版本: Arduino core for ESP32,同时使用两路I2C,会出现问题