initial usb
[rapper.git] / new_cmsis / usb / cdcuser.h
1 /*----------------------------------------------------------------------------\r
2  *      U S B  -  K e r n e l\r
3  *----------------------------------------------------------------------------\r
4  *      Name:    cdcuser.h\r
5  *      Purpose: USB Communication Device Class User module Definitions\r
6  *      Version: V1.10\r
7  *----------------------------------------------------------------------------\r
8  *      This software is supplied "AS IS" without any warranties, express,\r
9  *      implied or statutory, including but not limited to the implied\r
10  *      warranties of fitness for purpose, satisfactory quality and\r
11  *      noninfringement. Keil extends you a royalty-free right to reproduce\r
12  *      and distribute executable files created using this software for use\r
13  *      on NXP Semiconductors LPC microcontroller devices only. Nothing else \r
14  *      gives you the right to use this software.\r
15  *\r
16  * Copyright (c) 2009 Keil - An ARM Company. All rights reserved.\r
17  *---------------------------------------------------------------------------*/\r
18 \r
19 #ifndef __CDCUSER_H__\r
20 #define __CDCUSER_H__\r
21 \r
22 /* CDC buffer handling */\r
23 extern int CDC_RdOutBuf        (char *buffer, const int *length);\r
24 extern     CDC_WrOutBuf        (const char *buffer, int *length);\r
25 extern     CDC_OutBufAvailChar (int *availChar);\r
26 \r
27 \r
28 /* CDC Data In/Out Endpoint Address */\r
29 #define CDC_DEP_IN       0x82\r
30 #define CDC_DEP_OUT      0x02\r
31 \r
32 /* CDC Communication In Endpoint Address */\r
33 #define CDC_CEP_IN       0x81\r
34 \r
35 /* CDC Requests Callback Functions */\r
36 extern uint32_t CDC_SendEncapsulatedCommand  (void);\r
37 extern uint32_t CDC_GetEncapsulatedResponse  (void);\r
38 extern uint32_t CDC_SetCommFeature           (unsigned short wFeatureSelector);\r
39 extern uint32_t CDC_GetCommFeature           (unsigned short wFeatureSelector);\r
40 extern uint32_t CDC_ClearCommFeature         (unsigned short wFeatureSelector);\r
41 extern uint32_t CDC_GetLineCoding            (void);\r
42 extern uint32_t CDC_SetLineCoding            (void);\r
43 extern uint32_t CDC_SetControlLineState      (unsigned short wControlSignalBitmap);\r
44 extern uint32_t CDC_SendBreak                (unsigned short wDurationOfBreak);\r
45 \r
46 /* CDC Bulk Callback Functions */\r
47 extern void CDC_BulkIn                   (void);\r
48 extern void CDC_BulkOut                  (void);\r
49 \r
50 /* CDC Notification Callback Function */\r
51 extern void CDC_NotificationIn           (void);\r
52 \r
53 /* CDC Initializtion Function */\r
54 extern void CDC_Init (char portNum);\r
55 \r
56 /* CDC prepare the SERAIAL_STATE */\r
57 extern unsigned short CDC_GetSerialState (void);\r
58 \r
59 /* flow control */\r
60 extern unsigned short CDC_DepInEmpty;         // DataEndPoint IN empty\r
61 \r
62 #endif  /* __CDCUSER_H__ */\r
63 \r