在线时间1343 小时
UID3124330
注册时间2015-11-26
NXP金币4073 
 
 
 
TA的每日心情  | 开心 2019-3-5 08:47 | 
|---|
 
  签到天数: 1 天 连续签到: 1 天 [LV.1]初来乍到 
金牌会员 
   
	- 积分
 - 9255
 
 
- 最后登录
 - 2025-11-4
  
 
 | 
 
     抽时间测试一下N947 的USBHID双向通讯,原理图如图1所示:
 
 
图1 
实际连接图如2所示: 
 
 
图2 
 
在SDK中找到hid_generic_lite_bm项目例程,如图3所示: 
 
 
图3 
 
在usb_device_descriptor.c中修改In 和Out数据为64个字节,如下所示: 
- #define USB_HID_GENERIC_IN_BUFFER_LENGTH  (64U) //(8U)
 
 - #define USB_HID_GENERIC_OUT_BUFFER_LENGTH (64U) //(8U)
 
  复制代码- uint8_t g_UsbDeviceHidGenericReportDescriptor[] = {
 
 -     0x05U, 0x81U, /* Usage Page (Vendor defined)*/
 
 -     0x09U, 0x82U, /* Usage (Vendor defined) */
 
 -     0xA1U, 0x01U, /* Collection (Application) */
 
 -     0x09U, 0x83U, /* Usage (Vendor defined) */
 
  
-     0x09U, 0x84U, /* Usage (Vendor defined) */
 
 -     0x15U, 0x80U, /* Logical Minimum (-128) */
 
 -     0x25U, 0x7FU, /* Logical Maximum (127) */
 
 -     0x75U, 0x08U, /* Report Size (8U) */
 
 -     0x95U, 0x40U, /* 修改为64;原值为08;Report Count (8U) */
 
 -     0x81U, 0x02U, /* Input(Data, Variable, Absolute) */
 
  
-     0x09U, 0x84U, /* Usage (Vendor defined) */
 
 -     0x15U, 0x80U, /* Logical Minimum (-128) */
 
 -     0x25U, 0x7FU, /* Logical Maximum (127) */
 
 -     0x75U, 0x08U, /* Report Size (8U) */
 
 -     0x95U, 0x40U, /* 修改为64个字节,原值为08;Report Count (8U) */
 
 -     0x91U, 0x02U, /* Output(Data, Variable, Absolute) */
 
 -     0xC0U,        /* End collection */
 
 - };
 
 
  复制代码 
 
在usb_device_descriptor.h中的VID 和 PID,如下所示: 
- #define USB_DEVICE_VID (0x1FC9U)
 
 - #define USB_DEVICE_PID (0x00A2U)
 
  复制代码 
 
主程序不需要修改,主要是完成将接收到的数据,转发出去,测试结果如图4所示: 
 
 
图4 
 
 
        
        
        
         |   
 
 
 
 |