diff options
Diffstat (limited to 'S100App/Inc/USB_bot.h')
-rw-r--r-- | S100App/Inc/USB_bot.h | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/S100App/Inc/USB_bot.h b/S100App/Inc/USB_bot.h new file mode 100644 index 00000000..88b8977f --- /dev/null +++ b/S100App/Inc/USB_bot.h @@ -0,0 +1,73 @@ +/******************** (C) COPYRIGHT 2013 e-Design Co., Ltd. ********************
+ File Name : USB_bot.h
+ Version : STM32 USB Disk Ver 3.4 Author : MCD Application Team & bure
+*******************************************************************************/
+#ifndef __USB_BOT_H
+#define __USB_BOT_H
+
+typedef struct _Bulk_Only_CBW
+{
+ u32 dSignature;
+ u32 dTag;
+ u32 dDataLength;
+ u8 bmFlags;
+ u8 bLUN;
+ u8 bCBLength;
+ u8 CB[16];
+}
+Bulk_Only_CBW;
+
+/* Bulk-only Command Status Wrapper */
+typedef struct _Bulk_Only_CSW
+{
+ u32 dSignature;
+ u32 dTag;
+ u32 dDataResidue;
+ u8 bStatus;
+}
+Bulk_Only_CSW;
+
+#define BOT_IDLE 0 /* Idle state */
+#define BOT_DATA_OUT 1 /* Data Out state */
+#define BOT_DATA_IN 2 /* Data In state */
+#define BOT_DATA_IN_LAST 3 /* Last Data In Last */
+#define BOT_CSW_Send 4 /* Command Status Wrapper */
+#define BOT_ERROR 5 /* error state */
+
+#define BOT_CBW_SIGNATURE 0x43425355
+#define BOT_CSW_SIGNATURE 0x53425355
+#define BOT_CBW_PACKET_LENGTH 31
+
+#define CSW_DATA_LENGTH 0x000D
+
+/* CSW Status Definitions */
+#define CSW_CMD_PASSED 0x00
+#define CSW_CMD_FAILED 0x01
+#define CSW_PHASE_ERROR 0x02
+
+#define SEND_CSW_DISABLE 0
+#define SEND_CSW_ENABLE 1
+
+#define DIR_IN 0
+#define DIR_OUT 1
+#define BOTH_DIR 2
+
+#define BULK_MAX_PACKET_SIZE 0x00000040
+
+extern u8 Bot_State;
+extern u16 Data_Len;
+extern u8 Bot_State;
+extern Bulk_Only_CBW CBW;
+extern Bulk_Only_CSW CSW;
+extern u8 Bulk_Buff[];
+
+void Mass_Storage_In (void);
+void Mass_Storage_Out (void);
+void CBW_Decode(void);
+void Transfer_Data_Request(u8* Data_Pointer, u16 Data_Len);
+void Set_CSW (u8 CSW_Status, u8 Send_Permission);
+void Bot_Abort(u8 Direction);
+
+#endif
+/********************************* END OF FILE ******************************/
+
|