模块可以读出原始数据,是模块卖家给的资料,但是不知道怎么转换角度 
 
    
[mw_shl_code=c,true]void main()
{ 
	delay(500);		//上电延时		
//	InitLcd();		//液晶初始化
	init_uart();
	InitMPU6050();	//初始化MPU6050
	delay(150);
	while(1)
	{
		  Display10BitData(GetData(ACCEL_XOUT_H));//显示X轴加速度
		  Display10BitData(GetData(ACCEL_YOUT_H));	//显示Y轴加速度
		  Display10BitData(GetData(ACCEL_ZOUT_H));	//显示Z轴加速度
		  Display10BitData(GetData(GYRO_XOUT_H));	//显示X轴角速度
		  Display10BitData(GetData(GYRO_YOUT_H));	//显示Y轴角速度
		  Display10BitData(GetData(GYRO_ZOUT_H));	//显示Z轴角速度	 
     
		  SeriPushSend(0x0d); 
          SeriPushSend(0x0a);//换行,回车
		  delay(100);
	}
}[/mw_shl_code]
 
[mw_shl_code=c,true]int GetData(uchar REG_Address)
{
	uchar H,L;
	H=Single_ReadI2C(REG_Address);
	L=Single_ReadI2C(REG_Address+1);
    H=(H<<8)+L;
    //H=((float)(H<<8| L))/32768.0*180;
	return H; 	        //合成数据 
}[/mw_shl_code]
 
 
[mw_shl_code=c,true]void Display10BitData(int value)
{   
    uchar i;
   //value/=64;							//转换为10位数据
   lcd_printf(dis, value);			    //转换数据显示
	for(i=0;i<6;i++)
	{
      SeriPushSend(dis);
    }[/mw_shl_code]
 
 
[mw_shl_code=c,true]void lcd_printf(uchar *s,int temp_data)
{
	if(temp_data<0)
	{
		temp_data=-temp_data;
		*s='-';
	}
	else *s=' ';
	*++s =temp_data/10000+0x30;
	temp_data=temp_data%10000;     //取余运算
	*++s =temp_data/1000+0x30;
	temp_data=temp_data%1000;      //取余运算
	*++s =temp_data/100+0x30;
	temp_data=temp_data%100;       //取余运算
	*++s =temp_data/10+0x30;
	temp_data=temp_data%10;        //取余运算
	*++s =temp_data+0x30; 	
}[/mw_shl_code]
 
以上是主要的程序了,求大神指点下 |