看公司的大神们写的代码很是想不通,为什么不直接Data7D_03[1] = pData[3],Data7D_03[2] = pData[2]。
看他的代码,经过一轮换算后还是这个意思啊???本来把两个8字节的数据合成16位的,合成后又再分开????为什么这样做????想不通
大神的代码如下:
void xxxxxxxx(u8* pData)
{
u16 RpmData = 0; //速度
Speed = pData[2];
Speed <<= 8;
Speed |= pData[3] ; //Speed 是u8类型的全局
Speed /= 100;
Data7D_03[1] = Speed*100; //低8位
Data7D_03[2] = (Speed*100)>>8; //高8位
}
|