• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

SPI读取mpu9250设备ID也就是WHOAMI总是变

day_day 2019-01-16 浏览量:3047

SPI读取mpu9250设备ID也就是WHO AM I

我读了一堆不断变化的器件id……
我首先用adxl345试了一波,adxl的器件id地址是0x00(adxl的WHO AM I​),读到0xE5,正常,没有问题
然后我把器件地址改成0x75(mpu的WHO AM I​,接mpu9250,结果读出来的不停地变,有时候是0,有时候又是其他数

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 11.jpg


    ID地址是只读的,不能修改。这个值是固定的,厂家固化好的。



    • 发布于 2019-01-17
    • 举报
    • 评论 4
    • 0
    • 0
2016大圣 回复了 川楠:点赞 回复
day_day 回复了 川楠:是啊,没错啊,我就是读取啊……而且你这个手册是adxl345的,我读adxl是没问题的。但读mpu9250的id总是在变 回复
川楠 回复了 川楠:个人觉得,应该部是器件的问题。很有可能是你的时序出了问题,高位在前,低位在后。实在找不到原因,那就用逻辑分析或者示波器看看波形。只要有波形,问题一目了然 回复
day_day 回复了 川楠:我就是用逻辑分析仪分析过了,CPOL和CPHA都严格按照数据手册设置为1,出来的波形也没有问题,mpu应答是正常的,但给的数据是变化的 回复

其他答案 数量:8
  • ID地址是固化好的不能修改只能读!
    • 发布于2019-01-17
    • 举报
    • 评论 1
    • 0
    • 0
day_day 回复了 2016大圣 :是啊,没错啊,我就是读取啊……而且你这个手册是adxl345的,我读adxl是没问题的。但读mpu9250的id总是在变 回复

  • 读取的时候是不是有变化,如果是,看看之前的设置
    • 发布于2019-01-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 正常是0x71,你这读到0也不对。程序复位芯片等待稳定之后读取试试
    • 发布于2019-02-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 试一下降低SPI的通信速度,看是否能收到正确的数据
    • 发布于2019-02-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 有可能是你的通讯的速度太快了,这个值是不会变的。
    • 发布于2019-02-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 最好是对你的数据进行校验,有可能是数据读取错误导致的
    • 发布于2019-02-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 要降低你的SPI速度,跟你的速度有很大的关系
    • 发布于2019-02-23
    • 举报
    • 评论 0
    • 0
    • 0

  • 重点排查干扰的问题,对信号做一个抗干扰的处理
    • 发布于2019-02-27
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

SPI读取mpu9250设备ID也就是WHOAMI总是变