我用16路模拟开关cd4067来读取mpu9250的数据,sda共用,scl作为选择引脚,我挂载5个mpu9250的时候数据还没有问题,但是一旦挂载6个及以上,全部的9250数据就都会出错,(单步调试的时候发现,5个及以下9250获得的磁力计器件id是正确的0x48,但是6个及以上读取得到的磁力计器件id会变得乱七八糟0xff,0x6d,0x7c都出现了)
4条回答 默认 最新
- bobhuang 2019-10-09 19:05关注
单片机单个IO端口驱动负载的能力有限,对应的I2C接口下挂的从设备过多时,整个电路就会失效。应该可以用示波器抓取SDA触发时的波形来观察,信号电压是否不够稳。解决的话,要么SDA也用开关选通,要么限制每一路i2c总线下的从设备数量。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 【提问】基于Invest的水源涵养
- ¥20 微信网友居然可以通过vx号找到我绑的手机号
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名
- ¥65 汇编语言除法溢出问题
- ¥15 Visual Studio问题