Create readme Started commenting the files in english NO Optimisations yet, just trying to get it all working over as is first Using newer STM StdPeriph libs (i think they are newer?)
74 lines
2.1 KiB
C
74 lines
2.1 KiB
C
/******************** (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 ******************************/
|
|
|