智能车制作

标题: 谁有stm32读取MPU6050的代码 [打印本页]

作者: zhaoliujian78    时间: 2013-9-2 15:42
标题: 谁有stm32读取MPU6050的代码
大神们,谁有stm32读取MPU6050的代码,stm32f103c8t6的,谢谢了。

作者: 特种兵    时间: 2013-9-16 23:24
使用STM32F103RC,硬件IIC1,亲测无问题,串口1输出7轴数据
不过STM32的IIC不稳定,下载到你的板子上,难保证没问题[attach]50724[/attach]
作者: 大巧若拙    时间: 2013-9-26 09:25
while (1)
        {
                //读取MPU6050数据,一次性读取14个字节
                //3轴加速度+温度+3轴角速度 高低字节 共14字节
                I2C_ReadBuffer(DataBuffer, 0x3b, 14);
                for(counter=0;counter<7;counter++)
                {
                        value=(DataBuffer[counter]<<8)+DataBuffer[counter+1];        //合成高低各八位数据
                        printf("%d        ",value);                //数据输出
                }
                USART1_Send_Enter();
                delay_ms(1000);        //延时1s
        }


错了吧,DataBuffer[8]到DataBuffer[13]没用到
作者: 大巧若拙    时间: 2013-9-26 09:26
特种兵 发表于 2013-9-16 23:24
使用STM32F103RC,硬件IIC1,亲测无问题,串口1输出7轴数据
不过STM32的IIC不稳定,下载到你的板子上,难保 ...

while (1)
        {
                //读取MPU6050数据,一次性读取14个字节
                //3轴加速度+温度+3轴角速度 高低字节 共14字节
                I2C_ReadBuffer(DataBuffer, 0x3b, 14);
                for(counter=0;counter<7;counter++)
                {
                        value=(DataBuffer[counter]<<8)+DataBuffer[counter+1];        //合成高低各八位数据
                        printf("%d        ",value);                //数据输出
                }
                USART1_Send_Enter();
                delay_ms(1000);        //延时1s
        }


错了吧,DataBuffer[8]到DataBuffer[13]没用到


作者: 特种兵    时间: 2013-9-29 16:45
大巧若拙 发表于 2013-9-26 09:26
while (1)
        {
                //读取MPU6050数据,一次性读取14个字节

是的。。。
其实还有个问题,那就是MPU6050的配置有误。。。
上传一个我修改后的版本吧。。。数据进行了处理,能够显示XYZ轴的加速度和角速度以及温度,用串口1发送出去,波特率115200。。。不过数据处理时的零点漂移量要根据各自的模块进行微调。。。
[attach]50900[/attach]



作者: cocacola    时间: 2013-10-4 19:48
学习!
作者: junjie520    时间: 2013-12-17 10:00
特种兵 发表于 2013-9-29 16:45
是的。。。
其实还有个问题,那就是MPU6050的配置有误。。。
上传一个我修改后的版本吧。。。数据进行了 ...

楼主有没有试过触发读取?
作者: mdgs    时间: 2013-12-18 06:58
如果不用DMA,我觉得硬件IIC和模拟的IIC差不多,我STM32用模拟的IIC速度比400k还高点
作者: 特种兵    时间: 2014-1-4 20:27
junjie520 发表于 2013-12-17 10:00
楼主有没有试过触发读取?

没有。。。

作者: 特种兵    时间: 2014-1-4 20:29
mdgs 发表于 2013-12-18 06:58
如果不用DMA,我觉得硬件IIC和模拟的IIC差不多,我STM32用模拟的IIC速度比400k还高点

因为对速度要求不高,所以没用DMA


作者: 九劫岛    时间: 2015-12-17 22:57
特种兵 发表于 2013-9-29 16:45
是的。。。
其实还有个问题,那就是MPU6050的配置有误。。。
上传一个我修改后的版本吧。。。数据进行 ...

谢谢了,调了一个晚上借用了你的函数才调出来!!!





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2