ZHCACO6A january   2011  – may 2023

 

  1.   1
  2. 1MSP430™ USB HID Windows API 编程人员指南
  3. 2引言
  4. 3实现
    1. 3.1 概述
    2. 3.2 文件组织
    3. 3.3 系统要求
    4. 3.4 MSP430 USB API 堆栈
    5. 3.5 Windows 如何将物理 USB HID 器件映射到主机应用程序
    6. 3.6 在系统上查找特定 HID 器件/接口并将其打开
    7. 3.7 发送/接收数据
    8. 3.8 检测 HID 器件的动态连接/断开
  5. 4函数调用参考
    1. 4.1 器件连接管理和初始化调用
      1. 4.1.1 VOID HID_Init(struct strHidDevice* pstrHidDevice)
      2. 4.1.2 DWORD HID_GetSerNums(WORD vid, WORD pid, struct strTrackSerialNumbers *serialNumList)
      3. 4.1.3 DWORD HID_GetNumOfInterfaces(WORD vid, WORD pid, DWORD numSerNums)
      4. 4.1.4 BYTE HID_Open(struct strHidDevice* pstrHidDevice, WORD vid, WORD pid, DWORD deviceIndex, char serialNumber[SERNUM_LEN], DWORD totalDevNum, DWORD totalSerNum)
      5. 4.1.5 BYTE HID_Close(struct strHidDevice* pstrHidDevice)
      6. 4.1.6 BYTE HID_GetVersionNumber(struct strHidDevice* pstrHidDevice, USHORT * VersionNumber)
    2. 4.2 发送/接收数据
      1. 4.2.1 BYTE HID_WriteFile(struct strHidDevice* pstrHidDevice, BYTE* buffer, DWORD bufferSize, DWORD* bytesSent)
      2. 4.2.2 BYTE HID_ReadFile(struct strHidDevice* pStrHidDevice, BYTE* buffer, DWORD bufferSize, DWORD* bytesReturned)
    3. 4.3 即插即用管理
      1. 4.3.1 BYTE HID_RegisterForDeviceNotification(HWND hWnd, HDEVNOTIFY* diNotifyHandle)
      2. 4.3.2 BYTE HID_UnregisterForDeviceNotification(HDEVNOTIFY* diNotifyHandle)
      3. 4.3.3 BOOL IsDeviceAffected(struct strHidDevice* pstrHidDevice)
  6. 5演示应用程序
  7. 6MSP430 USB 工具套件
  8.   HID 接口数据结构:strHidDevice
  9.   HID 数据管道器件上的报告格式
  10.   C 参考文献
  11.   C 修订历史记录

DWORD HID_GetSerNums(WORD vid, WORD pid, struct strTrackSerialNumbers *serialNumList)

说明

返回系统上与 vid 和 pid 组合关联的物理 USB 器件的数量。(这些器件可能是 HID 类型或其他类型。)如果未连接任何器件,则返回 0。如果连接了相关器件,则传递的 strTrackSerialNumbers 结构将填充与找到的物理器件相对应的序列号,该函数将返回列表中的序列号总数。

如果返回的结果不止一个,则表明有多个具有相应 vid/pid 组合的物理器件。

参数

表 4-3 HID_GetSerNums() 的参数
WORD vid要查找的器件的 16 位供应商 ID。
WORD pid要查找的器件的 16 位米6体育平台手机版_好二三四 ID。
struct strTrackSerialNumbers *serialNumList包含与 vid/pid 关联的序列号列表的结构。
该函数会使用找到的序列号填充该结构。
返回值0:未连接具有此 VID/PID 的物理 USB 器件时。
非 0:系统上具有此 VID/PID 的物理 USB 器件的数量。
表 4-4 strTrackSerialNumbers 结构定义
字段说明
DWORD deviceNum表示物理 USB 器件的索引号。
char serialNum[SERNUM_LEN];包含已检测到物理器件的序列号的字符串。