完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
|
|
通过iic读地址寄存器MPU_DRIVE_ID_REG,打印两个返回的地址值res,都是0x68
|
|
|
|
怎么确定读的是哪一个从机,如果地址相同的话?
|
|
|
|
地址不是不同嘛,一个68一***,分开发送试试
|
|
|
|
那是寄存器的值,不是从机地址,从机地址不对,你i2c都通信不上。
|
|
|
|
从机地址应该由从机决定,由从机的硬件连接决定,可以看下手册,: The slave address of the MPU-60X0 is b110100X which is 7 bits long. The LSB bit of the 7 bit address is determined by the logic level on pin AD0. This allows two MPU-60X0s to be connected to the same I2C bus.
When used in this configuration, the address of the one of the devices should be b1101000 (pin AD0 is logic low) and the address of the other should be b1101001 (pin AD0 is logic high). 你软件上写0x68 0x69是没有作用的,只能由从机自己决定。 |
|
|
|
数据手册上有说明,不管AD0接高还是低,读出来的都是0x68。who am i寄存器的第0bit和第7bit是强制为0,1bit--6bit是固定的110100,所以两个器件读出来都是0110 1000(0x68)。要理解这个值只是表示"我是MPU6050",并不能区分是哪个MPU6050。只能通过从机地址0xD0或0xD2来区分是哪个MPU6050
|
|
1 条评论
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1492 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1427 浏览 3 评论
3261 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1560 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1995 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-5 09:24 , Processed in 0.750925 second(s), Total 88, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号