Merge PCB updates
[SCSI2SD.git] / software / SCSI2SD / v4 / SCSI2SD.cydsn / Generated_Source / PSoC5 / USBFS_cdc.h
1 /*******************************************************************************
2 * File Name: USBFS_cdc.h
3 * Version 2.60
4 *
5 * Description:
6 *  Header File for the USFS component.
7 *  Contains CDC class prototypes and constant values.
8 *
9 ********************************************************************************
10 * Copyright 2012-2013, Cypress Semiconductor Corporation.  All rights reserved.
11 * You may use this file only in accordance with the license, terms, conditions,
12 * disclaimers, and limitations in the end user license agreement accompanying
13 * the software package with which this file was provided.
14 *******************************************************************************/
15
16 #if !defined(CY_USBFS_USBFS_cdc_H)
17 #define CY_USBFS_USBFS_cdc_H
18
19 #include "cytypes.h"
20
21
22 /***************************************
23 * Prototypes of the USBFS_cdc API.
24 ***************************************/
25
26 #if (USBFS_ENABLE_CDC_CLASS_API != 0u)
27     void USBFS_CDC_Init(void) ;
28     void USBFS_PutData(const uint8* pData, uint16 length) ;
29     void USBFS_PutString(const char8 string[]) ;
30     void USBFS_PutChar(char8 txDataByte) ;
31     void USBFS_PutCRLF(void) ;
32     uint16 USBFS_GetCount(void) ;
33     uint8 USBFS_CDCIsReady(void) ;
34     uint8 USBFS_DataIsReady(void) ;
35     uint16 USBFS_GetData(uint8* pData, uint16 length) ;
36     uint16 USBFS_GetAll(uint8* pData) ;
37     uint8 USBFS_GetChar(void) ;
38     uint8 USBFS_IsLineChanged(void) ;
39     uint32 USBFS_GetDTERate(void) ;
40     uint8 USBFS_GetCharFormat(void) ;
41     uint8 USBFS_GetParityType(void) ;
42     uint8 USBFS_GetDataBits(void) ;
43     uint16 USBFS_GetLineControl(void) ;
44 #endif  /* End USBFS_ENABLE_CDC_CLASS_API*/
45
46
47 /***************************************
48 *  Constants for USBFS_cdc API.
49 ***************************************/
50
51 /* CDC Class-Specific Request Codes (CDC ver 1.2 Table 19) */
52 #define USBFS_CDC_SET_LINE_CODING        (0x20u)
53 #define USBFS_CDC_GET_LINE_CODING        (0x21u)
54 #define USBFS_CDC_SET_CONTROL_LINE_STATE (0x22u)
55
56 #define USBFS_LINE_CODING_CHANGED        (0x01u)
57 #define USBFS_LINE_CONTROL_CHANGED       (0x02u)
58
59 #define USBFS_1_STOPBIT                  (0x00u)
60 #define USBFS_1_5_STOPBITS               (0x01u)
61 #define USBFS_2_STOPBITS                 (0x02u)
62
63 #define USBFS_PARITY_NONE                (0x00u)
64 #define USBFS_PARITY_ODD                 (0x01u)
65 #define USBFS_PARITY_EVEN                (0x02u)
66 #define USBFS_PARITY_MARK                (0x03u)
67 #define USBFS_PARITY_SPACE               (0x04u)
68
69 #define USBFS_LINE_CODING_SIZE           (0x07u)
70 #define USBFS_LINE_CODING_RATE           (0x00u)
71 #define USBFS_LINE_CODING_STOP_BITS      (0x04u)
72 #define USBFS_LINE_CODING_PARITY         (0x05u)
73 #define USBFS_LINE_CODING_DATA_BITS      (0x06u)
74
75 #define USBFS_LINE_CONTROL_DTR           (0x01u)
76 #define USBFS_LINE_CONTROL_RTS           (0x02u)
77
78
79 /***************************************
80 * External data references
81 ***************************************/
82
83 extern volatile uint8 USBFS_lineCoding[USBFS_LINE_CODING_SIZE];
84 extern volatile uint8 USBFS_lineChanged;
85 extern volatile uint16 USBFS_lineControlBitmap;
86 extern volatile uint8 USBFS_cdc_data_in_ep;
87 extern volatile uint8 USBFS_cdc_data_out_ep;
88
89 #endif /* End CY_USBFS_USBFS_cdc_H */
90
91
92 /* [] END OF FILE */