首页 > 其他分享 >鼠标报文

鼠标报文

时间:2022-11-09 00:23:08浏览次数:47  
标签:表示 鼠标 -- 报文 mouseHID 按下

鼠标发送给PC的数据每次4个字节
BYTE1 BYTE2 BYTE3 BYTE4
定义分别是:
BYTE1 --
       |--bit7:   1   表示   Y   坐标的变化量超出-256   ~   255的范围,0表示没有溢出
       |--bit6:   1   表示   X   坐标的变化量超出-256   ~   255的范围,0表示没有溢出
       |--bit5:   Y   坐标变化的符号位,1表示负数,即鼠标向下移动
       |--bit4:   X   坐标变化的符号位,1表示负数,即鼠标向左移动
       |--bit3:     恒为1
       |--bit2:     1表示中键按下
       |--bit1:     1表示右键按下
       |--bit0:     1表示左键按下
BYTE2 -- X坐标变化量,与byte的bit4组成9位符号数,负数表示向左移,正数表右移。用补码表示变化量
BYTE3 -- Y坐标变化量,与byte的bit5组成9位符号数,负数表示向下移,正数表上移。用补码表示变化量
BYTE4 -- 滚轮变化。
2、键盘报文

键盘发送给PC的数据每次8个字节
BYTE1 BYTE2 BYTE3 BYTE4 BYTE5 BYTE6 BYTE7 BYTE8
定义分别是:

BYTE0 --(0 = OFF,1 = ON,CONSTANT为保留位)
       |--bit0:   NUM LOCK
       |--bit1:   CAPS LOCK
       |--bit2:   SCROLL LOCK
       |--bit3:   COMPOSE
       |--bit4:   KANA
       |--bit5:   CONSTANT
       |--bit6:   CONSTANT  
       |--bit7:   CONSTANT
BYTE1 --
       |--bit0:   Left Control是否按下,按下为1
       |--bit1:   Left Shift  是否按下,按下为1
       |--bit2:   Left Alt    是否按下,按下为1
       |--bit3:   Left GUI    是否按下,按下为1
       |--bit4:   Right Control是否按下,按下为1  
       |--bit5:   Right Shift 是否按下,按下为1
       |--bit6:   Right Alt   是否按下,按下为1
       |--bit7:   Right GUI   是否按下,按下为1
BYTE2 -- 保留位
BYTE3--BYTE8 -- 这六个为普通按键

/* 鼠标报文结构体 */ 
 struct mouseHID_t {
      uint8_t buttons;
      int8_t x;
      int8_t y;
      int8_t wheel;
  };
 
/* 发送鼠标报文(一直发送该报文,鼠标会水平向右移动) */
  struct mouseHID_t mouseHID;
  mouseHID.buttons = 0;
  mouseHID.x = 10;
  mouseHID.y = 0;
  mouseHID.wheel = 0;
  USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t *)&mouseHID, sizeof(struct mouseHID_t));

 


————————————————
版权声明:本文为CSDN博主「不吃鱼的猫丿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/laifengyuan1/article/details/108243474

标签:表示,鼠标,--,报文,mouseHID,按下
From: https://www.cnblogs.com/hshy/p/16871783.html

相关文章

  • usb键盘报文(n2)
    https://blog.csdn.net/laifengyuan1/article/details/108627282?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-1086......
  • C#实现鼠标悬停在listview某项时弹出toolTip提示
    C#实现鼠标悬停在​​listview​​​某项时弹出​​toolTip​​提示找到​​listview​​​的​​MouseHover​​事件,然后这样做:///<summary>///listViewitem鼠标悬停事......
  • CSS鼠标样式【cursor】
    cursor:hand;手型cursor:pointer;手型cursor:auto;由系统自动给出cursor:crosshair;十字型cursor:text;I字形cursor:wait;等待cursor:default;默认cursor:e-resize;......
  • 阻止鼠标唤醒
    两个要点1.离开模式咱们需要把它关掉,有两种方法1)注册表改值,使得电源设置里蹦出离开模式,然后改为关掉即可win+R输入regedit,然后Ctrl+f输入 25DFA149-5DD1-47......
  • 看什么看啊,你不会还不会抓HTTPS请求报文吧?
    前言作为一名合格的开发,抓请求报文是比较基础的操作;当然,如果你是一个测试人员,你不会抓,那你...也没事,看完这篇文章你就会了。本篇内容:抓请求报文重放修改重放持续重放前排......
  • 日常常用css样式大全,超出隐藏,不换行,省略号,两行超出隐藏,不换行,省略号,CSS中划线(删除
    文字去掉默认抛边line-height:1;超出隐藏,不换行,省略号overflow:hidden;  //超出的文本隐藏text-overflow:ellipsis;  //溢出用省略号显示white-space:nowrap;......
  • python监听鼠标键盘
    https://blog.csdn.net/Jason_WangYing/article/details/114155511 #-*-encoding:utf-8-*-importtimeimportpyautoguiaspagimportkeyboard#https:/......
  • Excel 将数据导出为文档文件,操作太繁琐,仅需鼠标双击即可
    大家好,在我们日常工作的时候,有时候需要将数据保存下来,其实你殊不知更多的时候我们是将Excel源数据的文件另存为Txt文档。但是呢,如果需要将很多的工作表中的数据分别保存为文......
  • 如何理解面向字节流和面向报文
    如何理解面向字节流和面向报文今天看TCP和UDP的区别,发现很多文章讲到TCP是面向字节流,UDP是面向报文的,好奇查了查,这里做个总结为什么UDP是面向报文的协议用户通过UDP......
  • USBD_CUSTOM_HID_SendReport 发送报文
    data_buff[0]=0x01;data_buff[1]=0x00;data_buff[2]=0x00;//USBD_CUSTOM_HID_SendReport(&hUsbDeviceFS,data_buff,CUSTOM_HID_EP......