总觉得是算法有点问题,没办法自由移动,需要倾斜角度才能移动,平放水平移动,鼠标根本不动,HID因为一些原因不适用,所以问问大家该怎么做这一块
ax = (int16_t)(value[4] + (value[5] << 8));
ay = (int16_t)(value[6] + (value[7] << 8));
az = (int16_t)(value[8] + (value[9] << 8));
gx = (int16_t)(value[10] + (value[11] << 8));
gy = (int16_t)(value[12] + (value[13] << 8));
gz = (int16_t)(value[14] + (value[15] << 8));
dpsX = (((float)ax) / 4095) * 9.78030; // LSB sensitivity: 65.5 LSB/dps @ ±500dps
dpsY = (((float)ay) / 4095) * 9.78030;
dpsZ = (((float)az) / 4095) * 9.78030;
gx = (gx / 32) * 10;
gy = (gy / 32) * 10;
int val_x = (int)(((gx)*x_kand + dpsX * (1 - x_kand)) * 3.0f * 0.01);
int val_y = (int)(((gy - offsety) * y_kand + dpsY * (1 - y_kand)) * 3.0f * 0.01);