访问 USB 设备
打开 USB 设备
可以使用功能 KS_openUsb 打开 USB 设备。需要设备名称作为参数。设备名称可通过功能 KS_enumDevices 获取,设备类型为 “USB”。
可以使用功能 KS_openUsbEndPoint 打开 USB 端点。作为 USB 设备句柄的参数,需要端点地址、USB 数据包的大小和数量。需要 size 和 count 参数来创建内部数据缓冲区。
发送和接收数据块
要传输 USB 包,可以使用功能 KS_xmitUsb。作为 USB 设备或端点的句柄、指向数据缓冲区的指针以及要传输的数据长度作为参数。作为可选参数,可以检索实际复制数据的长度。可以传递多个标志,例如 socket mode 或使用 timeouts。
使用功能 KS_recvUsb 可以接收数据块。与"KS_xmitUsb"USB 设备或端点的句柄类似,需要指向数据缓冲区的指针和要传输的数据的长度。实际复制数据长度的参数是可选的。
安装 USB 处理程序
要安装 USB 处理程序,可以使用函数 KS_installUsbHandler。作为参数,需要 USB 设备/端点的句柄和事件代码。可以发出信号的对象句柄是可选的。作为信号对象的默认值,将传递上下文结构 UsbUserContext。
执行 USB 命令
此外,可以使用函数 KS_execUsbCommand 修改 USB 设备的行为或获取特定信息。作为参数,需要 USB 设备/端点的句柄、命令、可选对象索引、指向数据的指针和缓冲区大小。
获取 USB 端口状态
要获取 USB 端口状态,可以使用函数 KS_getUsbState。状态使用结构 KSUsbState 进行传递。传递多个参数,例如传输的字节数或错误的接收字节数以及 USB 数据包大小。
关闭 USB 设备或端点
要关闭 USB 设备/端点并释放其所有资源,必须使用函数 KS_closeUsb。