为什么使用I2C1与MPU6050通信后,如果对LCD初始化后,程序上无法正常运行,串口无法接受数据;如果不对LCD初始化,串口能够接收数据
程序如下:
int main(void)
{
u8 data[7]; //存放LCD ID字符串
delay_init(); //延时函数初始化
LCD_Init();
uart_init(9600);
/*IIC接口初始化*/
I2C_MPU6050_Init();
/*陀螺仪传感器初始化*/
InitMPU6050();
POINT_COLOR=RED;
while(1)
{
data[1]=GetData(ACCEL_XOUT_H);
data[2]=GetData(ACCEL_YOUT_H);
data[3]=GetData(ACCEL_ZOUT_H);
data[4]=GetData(GYRO_XOUT_H);
data[5]=GetData(GYRO_YOUT_H);
data[6]=GetData(GYRO_ZOUT_H);
printf("\r\n---------加速度X轴原始数据---------%d \r\n",data[1]);
printf("\r\n---------加速度Y轴原始数据---------%d \r\n",data[2]);
printf("\r\n---------加速度Z轴原始数据---------%d \r\n",data[3]);
printf("\r\n---------陀螺仪X轴原始数据---------%d \r\n",data[4]);
printf("\r\n---------陀螺仪Y轴原始数据---------%d \r\n",data[5]);
printf("\r\n---------陀螺仪Z轴原始数据---------%d \r\n",data[6]);
LCD_ShowNum(30,50,data[1],3,16);
LCD_ShowNum(30,70,data[2],3,16);
LCD_ShowNum(30,90,data[3],3,16);
LCD_ShowNum(30,110,data[4],3,16);
LCD_ShowNum(30,130,data[5],3,16);
LCD_ShowNum(30,150,data[6],3,16);
}
}
请原子哥指教一下
|