Jose Rios / Mbed 2 deprecated Nucleo_GamepadUSB

Dependencies:   mbed

Fork of Nucleo_Ex04_USBPAD by woodstock .

Committer:
jose_23991
Date:
Thu Apr 28 21:09:39 2016 +0000
Revision:
1:94e011434208
Parent:
0:b5f79b4f741d
Nucleo_GamepadUSB tested, working with low speeds devices, but not with full speed!! why??

Who changed what in which revision?

UserRevisionLine numberNew contents of line
beaglescout007 0:b5f79b4f741d 1 /* mbed USBHost Library
beaglescout007 0:b5f79b4f741d 2 * Copyright (c) 2006-2013 ARM Limited
beaglescout007 0:b5f79b4f741d 3 *
beaglescout007 0:b5f79b4f741d 4 * Licensed under the Apache License, Version 2.0 (the "License");
beaglescout007 0:b5f79b4f741d 5 * you may not use this file except in compliance with the License.
beaglescout007 0:b5f79b4f741d 6 * You may obtain a copy of the License at
beaglescout007 0:b5f79b4f741d 7 *
beaglescout007 0:b5f79b4f741d 8 * http://www.apache.org/licenses/LICENSE-2.0
beaglescout007 0:b5f79b4f741d 9 *
beaglescout007 0:b5f79b4f741d 10 * Unless required by applicable law or agreed to in writing, software
beaglescout007 0:b5f79b4f741d 11 * distributed under the License is distributed on an "AS IS" BASIS,
beaglescout007 0:b5f79b4f741d 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
beaglescout007 0:b5f79b4f741d 13 * See the License for the specific language governing permissions and
beaglescout007 0:b5f79b4f741d 14 * limitations under the License.
beaglescout007 0:b5f79b4f741d 15 */
beaglescout007 0:b5f79b4f741d 16
beaglescout007 0:b5f79b4f741d 17 #ifndef USB_DEBUG_H
beaglescout007 0:b5f79b4f741d 18 #define USB_DEBUG_H
beaglescout007 0:b5f79b4f741d 19
beaglescout007 0:b5f79b4f741d 20 //Debug is disabled by default
beaglescout007 0:b5f79b4f741d 21 #ifndef DEBUG
beaglescout007 0:b5f79b4f741d 22 //#define DEBUG 3 /*INFO,ERR,WARN*/
beaglescout007 0:b5f79b4f741d 23 #define DEBUG 0
beaglescout007 0:b5f79b4f741d 24 #endif
beaglescout007 0:b5f79b4f741d 25 #ifndef DEBUG2
beaglescout007 0:b5f79b4f741d 26 #define DEBUG2 0
beaglescout007 0:b5f79b4f741d 27 #endif
beaglescout007 0:b5f79b4f741d 28 #define DEBUG_TRANSFER 0
beaglescout007 0:b5f79b4f741d 29 #define DEBUG_EP_STATE 0
beaglescout007 0:b5f79b4f741d 30 #define DEBUG_EVENT 0
beaglescout007 0:b5f79b4f741d 31
beaglescout007 0:b5f79b4f741d 32 #if (DEBUG > 3)
beaglescout007 0:b5f79b4f741d 33 #define USB_DBG(...) do{fprintf(stderr,"[%s@%d] ",__PRETTY_FUNCTION__,__LINE__);fprintf(stderr,__VA_ARGS__);fprintf(stderr,"\r\n");} while(0);
beaglescout007 0:b5f79b4f741d 34 //#define USB_DBG(x, ...) std::printf("[USB_DBG: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
jose_23991 1:94e011434208 35 #define USB_DBG_HEX(A,B) /*debug_hex(A,B)*/ extern void debug_hex(uint8_t* buf, int size);
beaglescout007 0:b5f79b4f741d 36 #define USB_DBG_ERRSTAT() report.print_errstat();
beaglescout007 0:b5f79b4f741d 37 #else
beaglescout007 0:b5f79b4f741d 38 #define USB_DBG(x, ...)
beaglescout007 0:b5f79b4f741d 39 #define USB_DBG_HEX(A,B) while(0)
beaglescout007 0:b5f79b4f741d 40 #define USB_DBG_ERRSTAT() while(0)
beaglescout007 0:b5f79b4f741d 41 #endif
beaglescout007 0:b5f79b4f741d 42
beaglescout007 0:b5f79b4f741d 43 #if (DEBUG2 > 3)
beaglescout007 0:b5f79b4f741d 44 #define USB_DBG2(...) do{fprintf(stderr,"[%s@%d] ",__PRETTY_FUNCTION__,__LINE__);fprintf(stderr,__VA_ARGS__);fprintf(stderr,"\r\n");} while(0);
beaglescout007 0:b5f79b4f741d 45 #else
beaglescout007 0:b5f79b4f741d 46 #define USB_DBG2(...) while(0);
beaglescout007 0:b5f79b4f741d 47 #endif
beaglescout007 0:b5f79b4f741d 48
beaglescout007 0:b5f79b4f741d 49 #if (DEBUG > 2)
beaglescout007 0:b5f79b4f741d 50 #define USB_INFO(...) do{fprintf(stderr,__VA_ARGS__);fprintf(stderr,"\r\n");}while(0);
beaglescout007 0:b5f79b4f741d 51 //#define USB_INFO(x, ...) std::printf("[USB_INFO: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
beaglescout007 0:b5f79b4f741d 52 #else
beaglescout007 0:b5f79b4f741d 53 #define USB_INFO(x, ...)
beaglescout007 0:b5f79b4f741d 54 #endif
beaglescout007 0:b5f79b4f741d 55
beaglescout007 0:b5f79b4f741d 56 #if (DEBUG > 1)
beaglescout007 0:b5f79b4f741d 57 #define USB_WARN(x, ...) std::printf("[USB_WARNING: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
beaglescout007 0:b5f79b4f741d 58 #else
beaglescout007 0:b5f79b4f741d 59 #define USB_WARN(x, ...)
beaglescout007 0:b5f79b4f741d 60 #endif
beaglescout007 0:b5f79b4f741d 61
beaglescout007 0:b5f79b4f741d 62 #if (DEBUG > 0)
beaglescout007 0:b5f79b4f741d 63 #define USB_ERR(x, ...) std::printf("[USB_ERR: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
beaglescout007 0:b5f79b4f741d 64 #else
beaglescout007 0:b5f79b4f741d 65 #define USB_ERR(x, ...)
beaglescout007 0:b5f79b4f741d 66 #endif
beaglescout007 0:b5f79b4f741d 67
beaglescout007 0:b5f79b4f741d 68 #if (DEBUG_TRANSFER)
beaglescout007 0:b5f79b4f741d 69 #define USB_DBG_TRANSFER(x, ...) std::printf("[USB_TRANSFER: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
beaglescout007 0:b5f79b4f741d 70 #else
beaglescout007 0:b5f79b4f741d 71 #define USB_DBG_TRANSFER(x, ...)
beaglescout007 0:b5f79b4f741d 72 #endif
beaglescout007 0:b5f79b4f741d 73
beaglescout007 0:b5f79b4f741d 74 #if (DEBUG_EVENT)
beaglescout007 0:b5f79b4f741d 75 #define USB_DBG_EVENT(x, ...) std::printf("[USB_EVENT: %s:%d]" x "\r\n", __FILE__, __LINE__, ##__VA_ARGS__);
beaglescout007 0:b5f79b4f741d 76 #else
beaglescout007 0:b5f79b4f741d 77 #define USB_DBG_EVENT(x, ...)
beaglescout007 0:b5f79b4f741d 78 #endif
beaglescout007 0:b5f79b4f741d 79
beaglescout007 0:b5f79b4f741d 80 #ifdef _USB_TEST
beaglescout007 0:b5f79b4f741d 81 #define USB_TEST_ASSERT(A) while(!(A)){fprintf(stderr,"\n\n%s@%d %s ASSERT!\n\n",__PRETTY_FUNCTION__,__LINE__,#A);exit(1);};
beaglescout007 0:b5f79b4f741d 82 #define USB_TEST_ASSERT_FALSE(A) USB_TEST_ASSERT(!(A))
beaglescout007 0:b5f79b4f741d 83 #else
beaglescout007 0:b5f79b4f741d 84 #define USB_TEST_ASSERT(A) while(0)
beaglescout007 0:b5f79b4f741d 85 #define USB_TEST_ASSERT_FALSE(A) while(0)
beaglescout007 0:b5f79b4f741d 86 #endif
beaglescout007 0:b5f79b4f741d 87
beaglescout007 0:b5f79b4f741d 88 #endif
beaglescout007 0:b5f79b4f741d 89
beaglescout007 0:b5f79b4f741d 90