32位单片机学习记录

2023年3月12学习笔记

1.鼠标设备报表描述符介绍

   该函数在usbd_hid.c文件中第 318行
__ALIGN_BEGIN static uint8_t HID_MOUSE_ReportDesc[HID_MOUSE_REPORT_DESC_SIZE]  __ALIGN_END =
{
  0x05,   0x01,  //USAGE_PAGE(Generic.Destop)  用途_页(通用 桌面)
  0x09,   0x02,  //USAGE(Mouse)                用途(鼠标) 
  0xA1,   0x01,	 //COLLECTION(Application)     开集合(应用软件)
  0x09,   0x01,  //USAGE(Pointer)              用途(指针)

  0xA1,   0x00,	 //COLLECTION(Physical)        开集合(物理)
  0x05,   0x09,  //USAGE_PAGE(Button)        用途_页(按钮)
  0x19,   0x01,	 //USAGE_MINIMUM(Button1)    用途_最小值(按钮1)
  0x29,   0x03,  //USAGE_MAXIMUM(Button3)      用途_最大值(按钮3)            最小值和最大值代表鼠标有几个按键

  0x15,   0x00,  //LOGICAL_MINIMUM(0)          逻辑_最小值(0)               
  0x25,   0x01,  //LOGUCAL_MAXIMUM(1)          逻辑_最大值(1)               最小值和最大值代表鼠标按下和抬起
  0x95,   0x03,  //REPORT_COUNT(3)bit          报告_数量(3)
  0x75,   0x01,	 //REPORT_SIZE(1)              报告_大小(1)

  0x81,   0x02,	 //INPUT (Dala,Var,Abs)		   输入(过程、Var、绝对值)
  0x95,   0x01,  //REPORT_COUNT (1) 5 bit      报告_计数(1)5位
  0x75,   0x05,  //REPORT_SIZE (5)             报告_大小(5)
  0x81,   0x01,  //INPUT (Cnst,Var,Abs)		   输入(Cnst、Var、绝对值)

  0x05,   0x01,  //USAGE_PAGE (Generic Desktop)  用途_页(通用 桌面)
  0x09,   0x30,  //USAGE (X)				   用途(x)
  0x09,   0x31,  //USAGE (Y)                   用途(y)
  0x09,   0x38,  //LOGICAL MINIMUM (-127)      逻辑最小值(-127)  

  0x15,   0x81, //LOGICAL_MAXIMUM (127)        逻辑最大值(127) 
  0x25,   0x7F, //REPORT_SIZE (8)              报告_大小(8)
  0x75,   0x08, //REPORT_SIZE (8)              报告_大小(8)
  0x95,   0x03, //REPORT_COUNT (3)             报告数组(3)

  0x81,   0x06, //INPUT (Data,Var,Rel)
  0xC0,   0x09,
  0x3c,   0x05,
  0xff,   0x09,

  0x01,   0x15,
  0x00,   0x25,
  0x01,   0x75,
  0x01,   0x95,

  0x02,   0xb1,
  0x22,   0x75,
  0x06,   0x95,
  0x01,   0xb1,

  0x01,   0xc0  // END_COLLECTION           关集合
};

2.USBD_HID_SendReport(&hUsbDeviceFS,(uint8_t *)report,4);

这行代码使用USB HID类通过连接到微控制器的USB设备发送一个4个字节的HID报告。

3.extern USBD_HandleTypeDef hUsbDeviceFS;

定义USB结构体句柄

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值