初级会员
- 积分
- 143
- 金钱
- 143
- 注册时间
- 2016-7-15
- 在线时间
- 23 小时
|
发表于 2016-8-19 08:28:09
|
显示全部楼层
我用的是这一段代码,你看看是不是没有乘100
[mw_shl_code=c,true]void ANO_DT_Send_Status(float angle_rol, float angle_pit, float angle_yaw)
{
/* s32 alt, u8 fly_model, u8 armed*/
u8 _cnt=0;
vs16 _temp;
// vs32 _temp2 = alt;
data_to_send[_cnt++]=0xAA;
data_to_send[_cnt++]=0xAA;
data_to_send[_cnt++]=0x01;
data_to_send[_cnt++]=0;
_temp = (int)(angle_rol*100); //这里乘100
data_to_send[_cnt++]=BYTE1(_temp);
data_to_send[_cnt++]=BYTE0(_temp);
_temp = (int)(angle_pit*100);
data_to_send[_cnt++]=BYTE1(_temp);
data_to_send[_cnt++]=BYTE0(_temp);
_temp = (int)(angle_yaw*100);
data_to_send[_cnt++]=BYTE1(_temp);
data_to_send[_cnt++]=BYTE0(_temp);
data_to_send[3] = _cnt-4;
u8 sum = 0;
for(u8 i=0;i<_cnt;i++)
sum += data_to_send;
data_to_send[_cnt++]=sum;
//将有用数据移入下一个数组data_to_use[]
for(u8 i=0;i<(_cnt-4);i++)
data_to_use01=data_to_send[i+4];
ANO_DT_Send_Data(data_to_send, _cnt);
}
[/mw_shl_code]
|
|