Arduino core for ESP32,同时使用两路I2C,会出现问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3718|回复: 6

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

[复制链接]
发表于 2020-6-18 22:33 | 显示全部楼层 |阅读模式
我使用xTaskCreatePinnedToCore,在两个cpu上各开启了一个任务,两个任务分别使用Wire和Wire1,然后发现两路I2C无法同时进行读写。只要其中一路I2C在读写的时候,另一路I2C就无法读写,只能等着,否则会读写超时。
按理说两路I2C是完全独立的,为什么不会同时工作呢?


 楼主| 发表于 2020-6-18 22:40 | 显示全部楼层
不同的通讯速率我也尝试过,无论是100kHz,还是400kHz,都会出现问题。

另外有意思的是,其中一路I2C是连接的OLED,使用u8g2库。然后即便是使用u8g2中的软件I2C,同样也会出现问题。
 楼主| 发表于 2020-6-18 22:43 | 显示全部楼层
还有就是我把其中一路I2C换成SPI,竟然也是冲突的。难道I2C+I2C或者I2C+SPI就无法同时工作?
发表于 2020-6-18 23:52 | 显示全部楼层
好像ESP32的IIC都是模拟的,所以并不独立
 楼主| 发表于 2020-6-19 11:26 | 显示全部楼层

2个CPU内核
发表于 2022-1-8 22:20 | 显示全部楼层
本帖最后由 Highnose 于 2022-1-8 22:26 编辑
开在边缘 发表于 2020-6-18 22:43
还有就是我把其中一路I2C换成SPI,竟然也是冲突的。难道I2C+I2C或者I2C+SPI就无法同时工作? ...

请问楼主,最后搞定了没有? 是不是你用的那个系统的问题?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 08:46 , Processed in 0.074349 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表