📄 usbd.h
字号:
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_BOOL usbSetFeature (USB_INT8U ucType, USB_INT16U wValue, USB_INT16U wIndex);
/*********************************************************************************************************
OTG 增加的特性
*********************************************************************************************************/
#define usbSetFeature_b_hnp_enable() usbSetFeature(0, __OTG_B_HNP_ENABLE, 0)
#define usbSetFeature_a_hnp_support() usbSetFeature(0, __OTG_A_HNP_SUPPORT, 0)
#define usbSetFeature_a_alt_hnp_support() usbSetFeature(0, __OTG_A_ALT_HNP_SUPPORT, 0)
/*********************************************************************************************************
** Function name: usbSetAddress
** Descriptions: 设置地址
** input parameters: wValue 地址值
** output parameters: None
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbSetAddress (USB_INT16U wValue);
/*********************************************************************************************************
** Function name: usbGetDescription
** Descriptions: 获取描述符
** input parameters: wValue 类型和索引
** wIndex 0 或语言 ID
** wLength 描述符长度
** output parameters: pucData 接收描述符的缓冲区
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbGetDescription (USB_INT16U wValue, USB_INT16U wIndex, USB_INT16U wLength, USB_INT8U *pucData);
#define usbGetDeviceDescription(wLength, pucData) \
usbGetDescription((USB_INT16U)(0x01 << 8), 0, wLength, pucData)
#define usbGetConfigDescription(wValue, wIndex, wLength, pucData) \
usbGetDescription((USB_INT16U)(0x02 << 8) | wValue, wIndex, wLength, pucData)
#define usbGetStringDescription(wValue, wIndex, wLength, pucData) \
usbGetDescription((USB_INT16U)((USB_INT16U)(0x03 << 8) | wValue), wIndex, wLength, pucData)
/*********************************************************************************************************
** Function name: usbSetDescription
** Descriptions: 设置描述符
** input parameters: wValue 类型和索引
** wIndex 0 或语言ID
** wLength 描述符长度
** output parameters: pucData 接收描述符的缓冲区
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbSetDescription (USB_INT16U wValue, USB_INT16U wIndex, USB_INT16U wLength, USB_INT8U *pucData);
/*********************************************************************************************************
** Function name: usbGetConfiguratiton
** Descriptions: 读取配置值请求
** input parameters: None
** output parameters: pucData 配置值
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbGetConfiguratiton (USB_INT8U *pucData);
/*********************************************************************************************************
** Function name: usbSetConfiguratiton
** Descriptions: 设置配置值请求
** input parameters: None
** output parameters: None
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbSetConfiguratiton (void);
/*********************************************************************************************************
** Function name: usbGetInterface
** Descriptions: 读取指定接口的设置值,即接口描述符中的bAlternateSetting字段值
** input parameters: wIndex 接口号
** output parameters: pucData 返回的bAlternateSetting字段值
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbGetInterface (USB_INT16U wIndex, USB_INT8U *pucData);
/*********************************************************************************************************
** Function name: usbSetInterface
** Descriptions: 设置接口请求,与usbGetInterface相对应
** input parameters: wValue 可替换的设置值
** wIndex 接口号
** output parameters: None
** Returned value: 传输错误码 成功 : USB_ERR_SUCESS, 其余为错误
*********************************************************************************************************/
USB_INT8U usbSetInterface (USB_INT16U wValue, USB_INT16U wIndex);
/*********************************************************************************************************
** Function name: usbSunchFrame
** Descriptions: 同步帧请求,用于设置并报告端点的同步帧号
** input parameters: wIndex 端点号
** output parameters: pucData 返回的帧号
** Returned value: TRUE : 成功 FALSE : 失败
*********************************************************************************************************/
USB_INT8U usbSunchFrame (USB_INT16U wIndex, USB_INT8U *pucData);
/*********************************************************************************************************
** Function name: usbInterfaceEpConfig
** Descriptions: 根据获取到的配置描述符数据找出接口描述符及其端点描述符,
** 并将其填充到相应的描述符结构体中
** input parameters: pucBuf 获取到的配置描述符数据缓冲区
** usConfigDescLen 配置描述符总长度
** output parameters: None
** Returned value: TRUE : 成功 FALSE : 失败
*********************************************************************************************************/
USB_BOOL usbInterfaceEpConfig (USB_INT8U *pucBuf, USB_INT16U usConfigDescLen);
/*********************************************************************************************************
** Function name: usbGetEpMaxPktSize
** Descriptions: 获取端点的最大包大小
** input parameters: ucInterfaceIndex 接口索引
** ucEpNum 端点号
** output parameters: None
** Returned value: > 0 : 所要端点的最大包大小, 0 : 失败,表示端点ucEpNum不存在
*********************************************************************************************************/
USB_INT16U usbGetEpMaxPktSize (USB_INT8U ucInterfaceIndex, USB_INT8U ucEpNum);
/*********************************************************************************************************
** Function name: usbIsDeviceReady
** Descriptions: 判断设备是否准备好
** input parameters: None
** output parameters: None
** Returned value: TRUE : 设备准备好 FALSE : 设备未准备好
*********************************************************************************************************/
USB_BOOL usbIsDeviceReady (void);
/*********************************************************************************************************
** Function name: usbIsDeviceAttach
** Descriptions: 判断设备是否插入
** input parameters: None
** output parameters: None
** Returned value: TRUE : 设备已插入 FALSE : 设备未准备插入
*********************************************************************************************************/
USB_BOOL usbIsDeviceAttach (void);
/*********************************************************************************************************
** Function name: usbGetDeviceType
** Descriptions: 获取设备类型信息,包括设备类型,所支持协议等
** input parameters: ucInterfaceIndex 接口号
** output parameters: pusbDeviceType 设备类型
** Returned value: TRUE : 成功 FALSE : 失败
*********************************************************************************************************/
USB_BOOL usbGetDeviceType (USB_INT8U ucInterfaceIndex, PUSB_DEVICE_TYPE pusbDeviceType);
/*********************************************************************************************************
** Function name: usbGetEp
** Descriptions: 获取非控制端点的端点号
** input parameters: ucInterface 接口号
** ucTranType 传输类型
** output parameters: None
** Returned value: > 0 : 端点号, = 0 : 获取失败,可能是设备不存在该类型端点
*********************************************************************************************************/
USB_INT8U usbGetEp (USB_INT8U ucInterface, USB_INT8U ucTranType);
/*********************************************************************************************************
** Function name: usbGetVer
** Descriptions: 取得USB主机协议栈的版本号
** input parameters: None
** output parameters: None
** Returned value: 32位版本号
*********************************************************************************************************/
INT32U usbGetVer (void);
extern volatile __USB_HOST_FLAGS GusbHostFlags;
extern __USB_HOST_EVENT_CNT __GusbHostEvtCnt;
extern USB_INT16U __GusEpMaxPktSize[__USB_MAX_INTERFACE][32];
extern USB_DEVICE_DESCRIPTOR GusbDeviceDescr; /* 设备描述符 */
extern USB_CONFIGURATION_DESCRIPTOR GusbConfigDescr; /* 配置描述符 */
extern USB_OTG_DESCRIPTOR GusbOtgDescr;
extern __USB_INTERFACE_EP_DESCR GusbInterEpDescr[__USB_MAX_INTERFACE];
extern void (*__GpEnumSucessCallBack)(void); /* 枚举成功时回调函数 */
extern void (*__GpDevDisconCallBack)(void); /* 设备拨出时回调函数 */
#endif
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -