SAMD系列芯片同MPU6050调试记录

    MPU6050   SAMD主控  IIC
	这些天在做角度及姿态等方面的工作,用的MPU6050姿态芯片。其中主控用的SAMD系列芯片。硬件已经完成,调试程序中,用的硬件IIC,出现一个状况,就是占用flash空间大。今天用模拟IIC也编写了,容量可以节省可达一半!不知道大家有遇到这样的情况了没?

遇到的问题:
1、可以读ID正确,但是读数据时全为0.当时也很纳闷,从怀疑——分析——验证,在单步仿真时,发现在MPU6050初始化时就出错,在于MPU_PWR_MGMT1_REG寄存器写0唤醒时,没写进去!原因应该是这个,因为芯片没工作,读数据肯定读不到的。现在硬件IIC的方案现在还在分析为啥没有写进去?读MPU_PWR_MGMT1_REG寄存器一直为0x40。本人以为只有我会遇到,后面在网上竟然也有同样的问题其他朋友也遇到过。这里总结下他们的经验:
①MPU6050芯片坏?这个我想不会吧?因为我的是新电路板啊,虽然我焊接了主控芯片,QFN封装的,但是焊接还是很顺利的,我人工焊接主控芯片对MPU造成损坏的可能性个人觉得少,还有一个原因是没有芯片可以换;
②IIC写函数问题,用的硬件IIC写库函数,这个自己倒不确定是否有问题?
③若存在所有寄存器正常,但读ID但加速度数据为零:网友的经验:“可以尝试初始化两次,或者在初始化前加延时。我尝试初始化一次并在函数开始前加延时,仍为无法读数,情况表现为 有时可以读数有时不可以 读,大部分情况是读值为零的。初始化两次后则读值正常。”
④有网友说是电源不稳造成的?这个情况我用示波器检测一直读写时,波形幅值没有出现下降的现象。
继续努力调试中…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值