📄 usb_extern.h
字号:
/*****************************************************************************/
#include "frDefs.h" // 宏定义头文件
//*********************************************************************
//USB状态外部声明头文件
//全局变量的声明
#ifndef _USBMS_G_DECL_
#define _USBMS_G_DECL_ extern
#endif
_USBMS_G_DECL_ UINT8 gUSBFullSpeed; // 0=HS, 1=FS
_USBMS_G_DECL_ UINT16 gUSBPacketSize; // USB包的大小
_USBMS_G_DECL_ UINT8 gUSBMSCBWTag[4]; // dgUSBMSCBWTag
_USBMS_G_DECL_ UINT8 gUSBMSLogicDrive; // CBWLUN
_USBMS_G_DECL_ UINT8 gUSBMSCSWResult; // CSW返回接收CBW包的结果
_USBMS_G_DECL_ UINT8 *gpbCBWPacket; // CBW包的存放区的首地址
_USBMS_G_DECL_ UINT16 *gpwCBWPacket;
_USBMS_G_DECL_ UINT8 gAppEvent; // PC方发数据到设备方的标志
_USBMS_G_DECL_ UINT8 gUSBMSStatus; // CBW和CSW的相关标志位
#define bitProcessCBW 7
#define bitSendCSW 4
//USB CBW命令
#define kCBWTotalLength 0x1f // CBW total length
#define kCBWTag0 4 // dgUSBMSCBWTage byte 0 position
#define kCBWTag1 5 // dgUSBMSCBWTage byte 0 position
#define kCBWTag2 6 // dgUSBMSCBWTage byte 0 position
#define kCBWTag3 7 // dgUSBMSCBWTage byte 0 position
#define kCBWXferLength0 8 // dCBWDataTransferLength byte 0 position
#define kCBWXferLength1 9 // dCBWDataTransferLength byte 1 position
#define kCBWXferLength2 10 // dCBWDataTransferLength byte 2 position
#define kCBWXferLength3 11 // dCBWDataTransferLength byte 3 position
#define kCBWFlags 12 // bmCBWFlags byte position
#define kCBWDirection 0x80 // direction
#define kHost2Device 0 // 0-host to device, 1-device to host
#define kCBWLUN 13 // bCBWLUN byte position
#define kCBWCBLength 14 // bCBWCBLength byte position
#define kCBWSCSICommand 15 // CBWCB byte position
//USB命令状态
#define kCSWLength 0x0d
#define kCSWPass 0 // command completed successfully
#define kCSWFailed 1 // command failed
//usbms_extern.h 头文件结束
// *********************************************************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -