|
1 /* |
|
2 LUFA Library |
|
3 Copyright (C) Dean Camera, 2010. |
|
4 |
|
5 dean [at] fourwalledcubicle [dot] com |
|
6 www.fourwalledcubicle.com |
|
7 */ |
|
8 |
|
9 /* |
|
10 Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) |
|
11 |
|
12 Permission to use, copy, modify, distribute, and sell this |
|
13 software and its documentation for any purpose is hereby granted |
|
14 without fee, provided that the above copyright notice appear in |
|
15 all copies and that both that the copyright notice and this |
|
16 permission notice and warranty disclaimer appear in supporting |
|
17 documentation, and that the name of the author not be used in |
|
18 advertising or publicity pertaining to distribution of the |
|
19 software without specific, written prior permission. |
|
20 |
|
21 The author disclaim all warranties with regard to this |
|
22 software, including all implied warranties of merchantability |
|
23 and fitness. In no event shall the author be liable for any |
|
24 special, indirect or consequential damages or any damages |
|
25 whatsoever resulting from loss of use, data or profits, whether |
|
26 in an action of contract, negligence or other tortious action, |
|
27 arising out of or in connection with the use or performance of |
|
28 this software. |
|
29 */ |
|
30 |
|
31 /** \file |
|
32 * |
|
33 * Header file for Arduino-usbserial.c. |
|
34 */ |
|
35 |
|
36 #ifndef _ARDUINO_USBSERIAL_H_ |
|
37 #define _ARDUINO_USBSERIAL_H_ |
|
38 |
|
39 /* Includes: */ |
|
40 #include <avr/io.h> |
|
41 #include <avr/wdt.h> |
|
42 #include <avr/interrupt.h> |
|
43 #include <avr/power.h> |
|
44 |
|
45 #include "Descriptors.h" |
|
46 |
|
47 #include "Lib/LightweightRingBuff.h" |
|
48 |
|
49 #include <LUFA/Version.h> |
|
50 #include <LUFA/Drivers/Board/LEDs.h> |
|
51 #include <LUFA/Drivers/Peripheral/Serial.h> |
|
52 #include <LUFA/Drivers/USB/USB.h> |
|
53 #include <LUFA/Drivers/USB/Class/CDC.h> |
|
54 |
|
55 /* Macros: */ |
|
56 /** LED mask for the library LED driver, to indicate TX activity. */ |
|
57 #define LEDMASK_TX LEDS_LED1 |
|
58 |
|
59 /** LED mask for the library LED driver, to indicate RX activity. */ |
|
60 #define LEDMASK_RX LEDS_LED2 |
|
61 |
|
62 /** LED mask for the library LED driver, to indicate that an error has occurred in the USB interface. */ |
|
63 #define LEDMASK_ERROR (LEDS_LED1 | LEDS_LED2) |
|
64 |
|
65 /** LED mask for the library LED driver, to indicate that the USB interface is busy. */ |
|
66 #define LEDMASK_BUSY (LEDS_LED1 | LEDS_LED2) |
|
67 |
|
68 /* Function Prototypes: */ |
|
69 void SetupHardware(void); |
|
70 |
|
71 void EVENT_USB_Device_Connect(void); |
|
72 void EVENT_USB_Device_Disconnect(void); |
|
73 void EVENT_USB_Device_ConfigurationChanged(void); |
|
74 void EVENT_USB_Device_UnhandledControlRequest(void); |
|
75 |
|
76 void EVENT_CDC_Device_LineEncodingChanged(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo); |
|
77 void EVENT_CDC_Device_ControLineStateChanged(USB_ClassInfo_CDC_Device_t* const CDCInterfaceInfo); |
|
78 |
|
79 #endif /* _ARDUINO_USBSERIAL_H_ */ |