首先我们看下代码: 当小四轴收到命令A0后,小四轴知道这是一个遥控器操作指令数据。 我们看到,油门数据从数组的第0个数据传输,数据范围是0-255。 俯昂角,滚动角,偏航角分别从数组的第1,2,3个数据得到。代码首先做了和0x7F的与处理,来去掉数据的最高位,所以数据范围是0-127. 然后,我们看到,代码取出数据的最高位,用来判别数据的正负,即方向。由此可知,俯昂角,滚动角,偏航角的控制数据范围是 -127到+127. if(anbt_com_command_ops==0xA0)
{
BS004_Ctrl_Gas=remote_ctrl_data_buffer[0];
BS004_Ctrl_Pitch=remote_ctrl_data_buffer[1]&0x7f;
BS004_Ctrl_Roll=remote_ctrl_data_buffer[2]&0x7f;
BS004_Ctrl_Yaw=remote_ctrl_data_buffer[3]&0x7f;
//
if(remote_ctrl_data_buffer[1]&0x80) BS004_Ctrl_Nick=-BS004_Ctrl_Nick;
if(remote_ctrl_data_buffer[2]&0x80) BS004_Ctrl_Roll=-BS004_Ctrl_Roll;
if((remote_ctrl_data_buffer[3]&0x80)==0x80) BS004_Ctrl_Yaw=-BS004_Ctrl_Yaw;
//
BS004_Ctrl_Valid=1;
}
|