extern u8 PS2_DATA_BUF[16]; //ps2数据缓存区
void Mouse_Data_Pro(void) {
MouseX.x_pos+=(signed char)PS2_DATA_BUF[1];
MouseX.y_pos+=(signed char)PS2_DATA_BUF[2];
MouseX.z_pos+=(signed char)PS2_DATA_BUF[3];
MouseX.bt_mask=PS2_DATA_BUF[0]&0X07;//取出掩码
}
file:///C:UsersHPAppDataRoamingTencentUsers2273849819QQWinTempRichOle BGY5`KPZMB3SZ{]{}HO0R5.png
想问一下有没有人知道PS2_DATA_BUF[1]中的补码强制数据转换后的数是不是正数?如果是正数,MouseX.x_pos+=(signed char)PS2_DATA_BUF[1]就一直会是正数,为毛给个short类型,还有图片上调试界面的x_pos为啥大的离谱(short不是+-32767吗,图上5W多)
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>