初级会员

- 积分
- 129
- 金钱
- 129
- 注册时间
- 2013-3-24
- 在线时间
- 19 小时
|
5金钱
大家好,我第一次发帖,请各位多多包涵。
我移植原子哥的STM32F407的MPU6050 6轴传感器 实验 到STM32F103C8T6中 ,
IO口对应如下: MPU6050 STM32F013C8T6
SCL PA5
SDA PA7
AD0 (接地)
INT PA15(程序中未用到)
-----------------------------------------------------------------------------------------------------------
myiic.c中 iic端口配置函数如下:
void IIC_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA, ENABLE );
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP ;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
IIC_SCL=1;
IIC_SDA=1;
}
myiic.h中 iic端口定义如下:
#define SDA_IN() {GPIOA->CRL&=0X0FFFFFFF;GPIOA->CRL|=0X80000000;}
#define SDA_OUT() {GPIOA->CRL&=0X0FFFFFFF;GPIOA->CRL|=0X30000000;}
#define IIC_SCL PAout(5) //SCL
#define IIC_SDA PAout(7) //SDA
#define READ_SDA PAin(7) //输入SDA
在main 函数中调用了MPU_Init(); 返回0 证明已经初始化成功了 ,mpu_dmp_init();也是返回了0 也证明初始化成功了 但是
mpu_dmp_get_data(&pitch,&roll,&yaw);返回了1
因为
if(dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors,&more))return 1;
大家帮我分析一下 ,谢谢大家。 |
|