智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7434|回复: 6
打印 上一主题 下一主题

MCF52255 I2C读取MPU6050 出现问题及解决方法

[复制链接]

34

主题

500

帖子

1

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3183

推广达人奖章优秀会员奖章活跃会员奖章

威望
2298
贡献
257
兑换币
597
注册时间
2011-10-2
在线时间
314 小时
跳转到指定楼层
1#
发表于 2013-5-13 14:50:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
做四轴的的不少,但是用ColdFire的人估计不多,话不多说,上问题及解决方案,希望对大家有帮助,如有错误欢迎指出~
问题1:硬件I2C写的完全没错,软件模拟也试了,程序是对的,但就是读不出数据。
解决方法:1、确保MPU6050供电稳定; 2、在I2C读或写操作后(I2C_Stop函数后面),重新初始化I2C。

问题2:读取的值是对的,但是只有一次结果,也就是说读出的结果是第一次的,然后就不变了。
解决方法:不知道是不是寄存器配置的问题,试了一下,在读取数据前重新写MPU6050寄存器,解除休眠状态,问题就解决了。

问题3:MPU6050 I2C的速度到底有多快?
解决方法:手册里说I2C支持最高400KHz的速度,但是以这个速度读取6轴12个数据,时间长度可想而知(超过1ms,当然可以用中断和DMA的方式解决),现在让我们来试试提高I2C总线速度可不可行。单片机总线频率:48MHz。
分频20,I2C读取失败……分频24,I2C读取失败……分频26,读取成功!分频28,读取成功!也就是说,I2C的速度可以达到1.847MHz。这时候,即使不用中断和DMA,读取12个数据也只需要270us。


1

主题

6

帖子

0

精华

高级会员

Rank: 4

积分
587
威望
309
贡献
150
兑换币
131
注册时间
2012-9-25
在线时间
64 小时
毕业学校
东北大学秦皇岛分校
2#
发表于 2013-8-31 00:32:54 | 只看该作者
你好  对于第二个问题我想问一下  你是具体在哪些位置加的解除休眠哪   我的陀螺仪出现了类似的情况  正常最多三四分钟之后采集的值就一直保持不变了   我也试着在读取前加了解除休眠的语句  可是不起作用  很纳闷~希望高人指点一二  不胜感激
回复 支持 反对

使用道具 举报

34

主题

500

帖子

1

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3183

推广达人奖章优秀会员奖章活跃会员奖章

威望
2298
贡献
257
兑换币
597
注册时间
2011-10-2
在线时间
314 小时
3#
 楼主| 发表于 2013-8-31 16:36:30 | 只看该作者
automatic爱好者 发表于 2013-8-31 00:32
你好  对于第二个问题我想问一下  你是具体在哪些位置加的解除休眠哪   我的陀螺仪出现了类似的情况  正常最 ...


我是这么弄的。像你的这种情况是不是供电不稳?或者可以试试隔一段时间就重新初始化一次6050.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

高级会员

Rank: 4

积分
587
威望
309
贡献
150
兑换币
131
注册时间
2012-9-25
在线时间
64 小时
毕业学校
东北大学秦皇岛分校
4#
发表于 2013-9-1 05:00:02 | 只看该作者
问乐寻音 发表于 2013-8-31 16:36
我是这么弄的。像你的这种情况是不是供电不稳?或者可以试试隔一段时间就重新初始化一次6050.

多谢回复  我试试先  
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

高级会员

Rank: 4

积分
587
威望
309
贡献
150
兑换币
131
注册时间
2012-9-25
在线时间
64 小时
毕业学校
东北大学秦皇岛分校
5#
发表于 2013-9-1 06:23:04 | 只看该作者
问乐寻音 发表于 2013-8-31 16:36
我是这么弄的。像你的这种情况是不是供电不稳?或者可以试试隔一段时间就重新初始化一次6050.

还没解决~我贴个代码上来看看  希望快点解决掉这个问题

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

34

主题

500

帖子

1

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3183

推广达人奖章优秀会员奖章活跃会员奖章

威望
2298
贡献
257
兑换币
597
注册时间
2011-10-2
在线时间
314 小时
6#
 楼主| 发表于 2013-9-1 09:41:41 | 只看该作者
automatic爱好者 发表于 2013-9-1 06:23
还没解决~我贴个代码上来看看  希望快点解决掉这个问题

我是一次只读一个数据,连续读出了问题。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

注册会员

Rank: 2

积分
48
威望
36
贡献
10
兑换币
11
注册时间
2014-7-13
在线时间
2 小时
毕业学校
池州一中
7#
发表于 2014-7-15 08:34:25 | 只看该作者
为什么我的mpu6050用串口调试工具老读不出来?求大神解答
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-27 04:50 , Processed in 0.051997 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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