usb_inst.cpp
1 /* Teensyduino Core Library 2 * http://www.pjrc.com/teensy/ 3 * Copyright (c) 2013 PJRC.COM, LLC. 4 * 5 * Permission is hereby granted, free of charge, to any person obtaining 6 * a copy of this software and associated documentation files (the 7 * "Software"), to deal in the Software without restriction, including 8 * without limitation the rights to use, copy, modify, merge, publish, 9 * distribute, sublicense, and/or sell copies of the Software, and to 10 * permit persons to whom the Software is furnished to do so, subject to 11 * the following conditions: 12 * 13 * 1. The above copyright notice and this permission notice shall be 14 * included in all copies or substantial portions of the Software. 15 * 16 * 2. If the Software is incorporated into a build system that allows 17 * selection among a list of target devices, then similar target 18 * devices manufactured by PJRC.COM must be included in the list of 19 * target devices and selectable in the same manner. 20 * 21 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 22 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 23 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 24 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 25 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 26 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 27 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 28 * SOFTWARE. 29 */ 30 31 #include "WProgram.h" 32 33 #if F_CPU >= 20000000 34 35 #ifdef USB_SERIAL 36 usb_serial_class Serial; 37 #endif 38 39 #ifdef USB_HID 40 usb_keyboard_class Keyboard; 41 usb_mouse_class Mouse; 42 usb_joystick_class Joystick; 43 uint8_t usb_joystick_class::manual_mode = 0; 44 usb_seremu_class Serial; 45 #endif 46 47 #ifdef USB_SERIAL_HID 48 usb_serial_class Serial; 49 usb_keyboard_class Keyboard; 50 usb_mouse_class Mouse; 51 usb_joystick_class Joystick; 52 uint8_t usb_joystick_class::manual_mode = 0; 53 #endif 54 55 #ifdef USB_MIDI 56 usb_midi_class usbMIDI; 57 usb_seremu_class Serial; 58 #endif 59 60 #ifdef USB_RAWHID 61 usb_rawhid_class RawHID; 62 usb_seremu_class Serial; 63 #endif 64 65 #ifdef USB_FLIGHTSIM 66 FlightSimClass FlightSim; 67 usb_seremu_class Serial; 68 #endif 69 70 71 #else // F_CPU < 20 MHz 72 73 #if defined(USB_SERIAL) || defined(USB_SERIAL_HID) 74 usb_serial_class Serial; 75 #else 76 usb_seremu_class Serial; 77 #endif 78 79 #endif // F_CPU 80 81 void serialEvent() __attribute__((weak)); 82 void serialEvent() {}