diff options
| author | Zach Eveland <zeveland@blacklabel-development.com> | 2011-08-14 16:59:34 -0400 | 
|---|---|---|
| committer | Zach Eveland <zeveland@blacklabel-development.com> | 2011-08-14 16:59:34 -0400 | 
| commit | ddd3418a4faabdfb82bef69ec62e2560125c919b (patch) | |
| tree | 2b01673d20c50ab4ef1e980bbaafb4b79e7559de /cores/arduino/usb_api.h | |
| parent | b8a2daf8bcda528be820eb0b76e6b15961cd71c0 (diff) | |
Serial via USB works
Integrated rest of Peter's USB implementation
Diffstat (limited to 'cores/arduino/usb_api.h')
| -rw-r--r-- | cores/arduino/usb_api.h | 156 | 
1 files changed, 0 insertions, 156 deletions
| diff --git a/cores/arduino/usb_api.h b/cores/arduino/usb_api.h deleted file mode 100644 index 4d26d23..0000000 --- a/cores/arduino/usb_api.h +++ /dev/null @@ -1,156 +0,0 @@ - - -#ifndef __USBAPI__ -#define __USBAPI__ - -//================================================================================ -//================================================================================ -//	USB - -class USB_ -{ -public: -	USB_(); -	bool configured(); - -	void attach(); -	void detach();	// Serial port goes down too... -	void poll(); -}; -extern USB_ USB; - -//================================================================================ -//================================================================================ -//	Serial over CDC (Serial1 is the physical port) - -class Serial_ : public Stream -{ -public: -	void begin(uint16_t baud_count); -	void end(void); - -	virtual int available(void); -	virtual int peek(void); -	virtual int read(void); -	virtual void flush(void); -	virtual void write(uint8_t); -}; -extern Serial_ Serial; - -//================================================================================ -//================================================================================ -//	Mouse - -#define MOUSE_LEFT 1 -#define MOUSE_MIDDLE 2 -#define MOUSE_RIGHT 4 - -class Mouse_ -{ -	uint8_t _buttons; -public: -	Mouse_(); -	void click(uint8_t b = MOUSE_LEFT); -	void move(signed char x, signed char y, signed char wheel = 0); -	void buttons(uint8_t b); -}; -extern Mouse_ Mouse; - -//================================================================================ -//================================================================================ -//	Keyboard - -#define KEY_MODIFIER_LEFT_CTRL		0x01 -#define KEY_MODIFIER_LEFT_SHIFT		0x02 -#define KEY_MODIFIER_LEFT_ALT		0x04 -#define KEY_MODIFIER_LEFT_GUI		0x08 -#define KEY_MODIFIER_RIGHT_CTRL		0x010 -#define KEY_MODIFIER_RIGHT_SHIFT	0x020 -#define KEY_MODIFIER_RIGHT_ALT		0x040 -#define KEY_MODIFIER_RIGHT_GUI		0x080 - -//	Low level key report: up to 6 keys and shift, ctrl etc at once -typedef struct -{ -	uint8_t modifiers; -	uint8_t reserved; -	uint8_t keys[6]; -} KeyReport; - -//	Map a character into a key report -//	Called from Print to map text to keycodes -class KeyMap -{ -public: -	virtual void charToKey(int c, KeyReport* keyReport) = 0; -}; - -//	 -class Keyboard_ : public Print -{ -	KeyMap* _keyMap; -public: -	Keyboard_(); -	void sendReport(KeyReport* keys); -	void setKeyMap(KeyMap* keyMap); -	virtual void write(uint8_t); -}; -extern Keyboard_ Keyboard; - -//================================================================================ -//================================================================================ -//	Low level API - -typedef struct -{ -	uint8_t bmRequestType; -	uint8_t bRequest; -	uint8_t wValueL; -	uint8_t wValueH; -	uint16_t wIndex; -	uint16_t wLength; -} Setup; - -//================================================================================ -//================================================================================ -//	HID 'Driver' - -int		HID_GetInterface(uint8_t* interfaceNum); -int		HID_GetDescriptor(int i); -bool	HID_Setup(Setup& setup); -void	HID_SendReport(uint8_t id, const void* data, int len); - -//================================================================================ -//================================================================================ -//	MSC 'Driver' - -int		MSC_GetInterface(uint8_t* interfaceNum); -int		MSC_GetDescriptor(int i); -bool	MSC_Setup(Setup& setup); -bool	MSC_Data(uint8_t rx,uint8_t tx); - -//================================================================================ -//================================================================================ -//	CSC 'Driver' - -int		CDC_GetInterface(uint8_t* interfaceNum); -int		CDC_GetDescriptor(int i); -bool	CDC_Setup(Setup& setup); - -//================================================================================ -//================================================================================ - -#define TRANSFER_PGM		0x80 -#define TRANSFER_RELEASE	0x40 -#define TRANSFER_ZERO		0x20 - -int USB_SendControl(uint8_t flags, const void* d, int len); -int USB_RecvControl(void* d, int len); - -uint8_t	USB_Available(uint8_t ep); -int USB_Send(uint8_t ep, const void* data, int len);	// blocking -int USB_Recv(uint8_t ep, void* data, int len);		// non-blocking -int USB_Recv(uint8_t ep);							// non-blocking -void USB_Flush(uint8_t ep); - -#endif
\ No newline at end of file | 
