• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

ch551怎么实现鼠标定时单击功能

yhj416606438 2020-08-21 浏览量:975
官网只有移动鼠标例程,没有按键按下,需要怎么修改
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 你该把你参考的例程位置发出来,别人好在此基础上分析。

    ch551仅仅是一个支持USB的单片机信号,但信号编译码规则(通信协议)其实不是ch551考虑的,你需要找到对应规则,并利用它来构建自己想发出的数据,从而达到目的。


    大致这个数据规则是:

    鼠标发送给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 -- 滚轮变化。

    你根据你的例程,把移动的数据修改为按键数据就可以啦。

    • 发布于 2020-08-21
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • 按键用普通的GPIO实现就行,移动的算法不好做,所以官网给了参考代码
    • 发布于2020-08-29
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

ch551怎么实现鼠标定时单击功能