Dependencies: ChaNFSSD mbed ChaNFS
Diff: USBMSC.h
- Revision:
- 0:02c293160df3
- Child:
- 1:efbcfbae4747
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/USBMSC.h Wed Nov 09 17:30:56 2011 +0000 @@ -0,0 +1,65 @@ + +#ifndef USBMSC_H +#define USBMSC_H + +/* These headers are included for child class. */ +#include "USBEndpoints.h" +#include "USBDescriptor.h" +#include "USBDevice_Types.h" + +#include "USBDevice.h" + +#define DEFAULT_CONFIGURATION (1) + +class USBMSC: public USBDevice { +public: + + /** + * Constructor + * + * @param vendor_id Your vendor_id + * @param product_id Your product_id + * @param product_release Your preoduct_release + */ + USBMSC(uint16_t vendor_id = 0x1FC9, uint16_t product_id = 0x1002, uint16_t product_release = 0x0100); + + /* + * Get string product descriptor + * + * @returns pointer to the string product descriptor + */ + virtual uint8_t * stringIproductDesc(); + + /* + * Get string interface descriptor + * + * @returns pointer to the string interface descriptor + */ + virtual uint8_t * stringIinterfaceDesc(); + + /* + * Get configuration descriptor + * + * @returns pointer to the configuration descriptor + */ + virtual uint8_t * configurationDesc(); + virtual uint8_t * deviceDesc(); + + virtual bool USBCallback_setConfiguration(uint8_t configuration); + + virtual bool USBCallback_request (); + + void attach(void (*fptr)(uint8_t)); + + void setTransferData (uint8_t *buf, int len); + +protected: + virtual bool EPBULK_OUT_callback(); + virtual bool EPBULK_IN_callback(); + +private: + void (*msc_evt)(uint8_t); + +}; + +#endif