|
发表于 2013-10-10 21:11:59
|
显示全部楼层
Name_006 发表于 2013-10-10 20:38
额 控件用的网上的 姿态旋转起来总是有问题 一直都没改过来 。。。 ...
还是没明白啊,压缩包里面的使用说明是什么意思,里面有个这样的函数
=============================================
void SendData(int16_t A, int16_t B, int16_t C, int16_t D)
{
uint8_t check_byte;
USART2_Send(0x55);
USART2_Send(0x34);
USART2_Send(0x08); //数据长度 8 byte
//if(A<0)A=32768-A;
USART2_Send(A>>8);
USART2_Send(A);
//if(B<0)B=32768-B;
USART2_Send(B>>8);
USART2_Send(B);
//if(C<0)C=32768-C;
USART2_Send(C>>8);
USART2_Send(C);
//if(D<0)D=32768-D;
USART2_Send(D>>8);
USART2_Send(D);
check_byte = (A>>8)^A^(B>>8)^B^(C>>8)^C^(D>>8)^D; //简单校验 异或所有数据
USART2_Send(check_byte);
}
=================================================
发送给上位机的那四个16位的变量 A B C D 代表什么意思呢,是四元数吗。
MPU6050使用DMP的官方库读出来的四元数是放大2^30倍的,官方库用4个32位有符号的变量来储存,自己算的话要除以1073741824.0再带公式才能出欧拉角。
楼主那四个16位变量代表什么呢 |
|