#include <iom16v.h>
#include <macros.h>
#include <math.h>
#include "typedefine.h"
#include "delay.h"
#include "usart.h"
#include "LCD12864.h"
#include "LCD1602.h"
#include "mpu6050.h"
#include "mpu6050_iic.h"
//==============================================
int accel_x,accel_y,accel_z;
int gyro_x,gyro_y,gyro_z;
uint8 accel_x_data[5];//x轴加速度
uint8 accel_y_data[5];//y轴加速度
uint8 accel_z_data[5];//z轴加速度
uint8 angle_x_data[5];//x轴角度
uint8 angle_y_data[5];//y轴角度
uint8 angle_z_data[5];//z轴角度
uint8 mpudata[5];
//===============================================
void data_conversion(int data)
{
 mpudata[0] = data/10000%10 + '0';
 mpudata[1] = data/1000%10 + '0';
 mpudata[2] = data/100%10 + '0';
 mpudata[3] = data/10%10 + '0';
 mpudata[4] = data/1%10 + '0';
}
//*****以下用l602液晶显示*********//
//======显示x轴加速度======
void display_accel_x(void)
{
 int accel_x;
 accel_x = GetData(ACCEL_XOUT_H);//x轴加速度十六位数据 
 
 if(accel_x < 0)
 {
 accel_x = -accel_x;
 LCM_put_char(2,0,'-');
 }
 
 else
 {
 LCM_put_char(2,0,' ');
 }
 
 data_conversion(accel_x);
 
 LCM_put_char(0,0,'x'); //第0行,第0列 显示X
 LCM_put_char(1,0,':');
 LCM_put_char(3,0,mpudata[0]);
 LCM_put_char(4,0,mpudata[1]);
 LCM_put_char(5,0,mpudata[2]);
 LCM_put_char(6,0,mpudata[3]);
 LCM_put_char(7,0,mpudata[4]);
}
//======显示y轴加速度======
void display_accel_y(void)
{
 int accel_y;
 accel_y = GetData(ACCEL_YOUT_H);//x轴加速度十六位数据 
 
 if(accel_y < 0)
 {
 accel_y = -accel_y;
 LCM_put_char(2,1,'-');
 }
 
 else
 {
 LCM_put_char(2,1,' ');
 }
 
 data_conversion(accel_y);
 
 LCM_put_char(0,1,'y'); //第0行,第0列 显示X
 LCM_put_char(1,1,':');
 LCM_put_char(3,1,mpudata[0]);
 LCM_put_char(4,1,mpudata[1]);
 LCM_put_char(5,1,mpudata[2]);
 LCM_put_char(6,1,mpudata[3]);
 LCM_put_char(7,1,mpudata[4]);
}
//======显示z轴加速度======
void display_accel_z(void)
{
 int accel_z;
 accel_z = GetData(ACCEL_ZOUT_H);//x轴加速度十六位数据 
 
 if(accel_z < 0)
 {
 accel_z = -accel_z;
 LCM_put_char(9,1,'-');
 }
 
 else
 {
 LCM_put_char(9,1,' ');
 }
 
 data_conversion(accel_z);
 
 LCM_put_char(9,0,'z'); //第0行,第0列 显示X
 LCM_put_char(10,0,':');
 LCM_put_char(10,1,mpudata[0]);
 LCM_put_char(11,1,mpudata[1]);
 LCM_put_char(12,1,mpudata[2]);
 LCM_put_char(13,1,mpudata[3]);
 LCM_put_char(14,1,mpudata[4]);
}
//*****以下用串口调试助手显示**********//
//=======显示x轴角速度=======
void display_angle_x(void)
{
 gyro_x = GetData(GYRO_XOUT_H);//x轴加速度十六位数据 
 
 if(gyro_x < 0)
 {
 gyro_x = -gyro_x;
 data_conversion(gyro_x);
 putchar('-');
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
 
 else
 {
 data_conversion(gyro_x);
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
}
//=======显示y轴角速度=======
void display_angle_y(void)
{
 gyro_y = GetData(GYRO_YOUT_H);//x轴加速度十六位数据 
 
 if(gyro_y < 0)
 {
 gyro_y = -gyro_y;
 data_conversion(gyro_y);
 putchar('-');
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
 
 else
 {
 data_conversion(gyro_y);
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
}
//=======显示z轴角速度=======
void display_angle_z(void)
{
 gyro_z = GetData(GYRO_ZOUT_H);//x轴加速度十六位数据 
 
 if(gyro_z < 0)
 {
 gyro_z = -gyro_z;
 data_conversion(gyro_z);
 putchar('-');
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
 
 else
 {
 data_conversion(gyro_z);
 putchar(mpudata[0]);
 putchar(mpudata[1]);
 putchar(mpudata[2]);
 putchar(mpudata[3]);
 putchar(mpudata[4]);
 }
 
}
请问如何解决这个问题,我是大一的。刚学,不太懂如何融合,哪位前辈大神能帮我解答一下?