1赞

24回答

3收藏

STM32读取MPU6050数据并串口发送

 

STMCU STMCU 26659 人阅读 | 24 人回复 | 2013-09-16

MPU6050是个好东西,集成3轴加速度、3轴陀螺仪外加1轴温度传感器,适合做智能车的惯性参考模块。
至于性能,不了解,因为我也是刚入手,也没搞过其他模块。。。
网上也有MPU6050的测试程序,不过使用STM32硬件IIC、简单读取几个寄存器数据的程序比较难找,为此贡献一下自己程序,当然我也参考了网上的程序。。。
使用STM32F103RC单片机,硬件IIC,IIC1,网上买的MPU6050成品模块,一次性读取14个字节的数据(包括3轴加速度、1轴温度、3轴陀螺仪,各两字节)然后整合成一个有符号的16位整型数据,并用串口1发送出去,在串口助手里面显示出来,波特率115200
数据并没进行处理,直接显示。。。
也没使用内部的DMP,如有写过的网友还望发一份。。。
程序实测没问题,但因为STM32的硬件IIC不是很稳定,所以程序下载到各位板子上,运行时可能会卡在MPU6050的初始化过程中(估计这是许多人用IO模拟IIC的原因)。。。


STM32 MPU6050 数据测试.rar

2.56 MB, 下载次数: 4646

STM32 MPU6050 数据测试

分享到:
回复

使用道具 举报

回答|共 24 个

倒序浏览

沙发

奋斗哥

发表于 2013-9-17 08:34:12 | 只看该作者

多谢楼主分享,mark!
板凳

疯狂的指头

发表于 2013-11-13 22:14:42 | 只看该作者

小白飘过 多谢共享!!!
地板

mad_world

发表于 2013-12-29 20:53:48 | 只看该作者

谢谢分享~~~~感天动地啊
5#

swustlx86

发表于 2013-12-29 21:32:07 | 只看该作者

多谢分享                                
6#

jauhua

发表于 2014-1-15 20:22:34 | 只看该作者

收藏学习了,感谢分享
7#

mad_world

发表于 2014-1-17 21:42:31 | 只看该作者

发现个问题哦
for(counter=0;counter<7;counter++)
                {
                        value=(DataBuffer[counter]<<8)+DataBuffer[counter+1];        //合成高低各八位数据
                //        printf("%d        ",value);                //数据输出
                //        delay_ms(100);
}
这个counter+1应该是2*counter哦,或者for里面不是i++应该是i+=2哦
8#

mad_world

发表于 2014-1-17 21:43:28 | 只看该作者

额错了应该是value=(DataBuffer[2*counter]<<8)+DataBuffer[2*counter+1];
9#

mad_world

发表于 2014-1-17 21:44:06 | 只看该作者

反正要改下两种方法都可以
10#

思考的大兵

发表于 2014-1-18 15:40:47 | 只看该作者

mad_world 发表于 2014-1-17 21:44
反正要改下两种方法都可以

多谢指正,当时可能是粗心,没注意到这些
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条