小弟最近在玩遥控 ,用的大疆遥控器里自带的程序,但它是F4版本的而我的是F1的,
遥控器上推时F4对应的数据【1684】 实际上我的F1对应的是【1024】
遥控器中间时F4对应的数据【1024】 实际上我的F1对应的是【0】
遥控器下推时F4对应的数据【364】 实际上我的F1对应的是【72】
求大佬指点,应该怎么改,才能使我的F1处理的数据与F4一致
教一教,如果能写出来,感激不尽。
/////////这个是F4版本的程序
void RemoteDataPrcess(uint8_t *pData)
{
if(pData == NULL)
{
return;
}
RC_CtrlData.ch0 = ((int16_t)pData[0] | ((int16_t)pData[1] << 8)) & 0x07FF;
RC_CtrlData.ch1 = (((int16_t)pData[1] >> 3) | ((int16_t)pData[2] << 5)) & 0x07FF;
RC_CtrlData.ch2 = (((int16_t)pData[2] >> 6) | ((int16_t)pData[3] << 2) |
((int16_t)pData[4] << 10)) & 0x07FF;
RC_CtrlData.ch3 = (((int16_t)pData[4] >> 1) | ((int16_t)pData[5]<<7)) & 0x07FF;
RC_CtrlData.s1 = ((pData[5] >> 4) & 0x000C) >> 2;
RC_CtrlData.s2 = ((pData[5] >> 4) & 0x0003);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>