51
51
// Application API (Multiple Interfaces)
52
52
// CFG_TUD_CDC > 1
53
53
//--------------------------------------------------------------------+
54
- bool tud_cdc_n_connected (uint8_t itf );
55
- uint8_t tud_cdc_n_get_line_state (uint8_t itf );
56
- void tud_cdc_n_get_line_coding (uint8_t itf , cdc_line_coding_t * coding );
57
- void tud_cdc_n_set_wanted_char (uint8_t itf , char wanted );
58
-
59
- uint32_t tud_cdc_n_available (uint8_t itf );
60
- int32_t tud_cdc_n_read_char (uint8_t itf );
61
- uint32_t tud_cdc_n_read (uint8_t itf , void * buffer , uint32_t bufsize );
62
- void tud_cdc_n_read_flush (uint8_t itf );
63
- int32_t tud_cdc_n_peek (uint8_t itf , int pos );
64
-
65
- uint32_t tud_cdc_n_write_char (uint8_t itf , char ch );
66
- uint32_t tud_cdc_n_write (uint8_t itf , void const * buffer , uint32_t bufsize );
67
- uint32_t tud_cdc_n_write_str (uint8_t itf , char const * str );
68
- bool tud_cdc_n_write_flush (uint8_t itf );
69
- uint32_t tud_cdc_n_write_available (uint8_t itf );
54
+ bool tud_cdc_n_connected (uint8_t itf );
55
+ uint8_t tud_cdc_n_get_line_state (uint8_t itf );
56
+ void tud_cdc_n_get_line_coding (uint8_t itf , cdc_line_coding_t * coding );
57
+ void tud_cdc_n_set_wanted_char (uint8_t itf , char wanted );
58
+
59
+ uint32_t tud_cdc_n_available (uint8_t itf );
60
+ uint32_t tud_cdc_n_read (uint8_t itf , void * buffer , uint32_t bufsize );
61
+ void tud_cdc_n_read_flush (uint8_t itf );
62
+ bool tud_cdc_n_peek (uint8_t itf , int pos , uint8_t * u8 );
63
+ static inline int32_t tud_cdc_n_read_char (uint8_t itf );
64
+
65
+ uint32_t tud_cdc_n_write (uint8_t itf , void const * buffer , uint32_t bufsize );
66
+ bool tud_cdc_n_write_flush (uint8_t itf );
67
+ uint32_t tud_cdc_n_write_available (uint8_t itf );
68
+ static inline uint32_t tud_cdc_n_write_char (uint8_t itf , char ch );
69
+ static inline uint32_t tud_cdc_n_write_str (uint8_t itf , char const * str );
70
70
71
71
//--------------------------------------------------------------------+
72
72
// Application API (Interface0)
73
73
//--------------------------------------------------------------------+
74
- static inline bool tud_cdc_connected (void );
75
- static inline uint8_t tud_cdc_get_line_state (void );
76
- static inline void tud_cdc_get_line_coding (cdc_line_coding_t * coding );
77
- static inline void tud_cdc_set_wanted_char (char wanted );
78
-
79
- static inline uint32_t tud_cdc_available (void );
80
- static inline int32_t tud_cdc_read_char (void );
81
- static inline uint32_t tud_cdc_read (void * buffer , uint32_t bufsize );
82
- static inline void tud_cdc_read_flush (void );
83
- static inline int32_t tud_cdc_peek (int pos );
84
-
85
- static inline uint32_t tud_cdc_write_char (char ch );
86
- static inline uint32_t tud_cdc_write (void const * buffer , uint32_t bufsize );
87
- static inline uint32_t tud_cdc_write_str (char const * str );
88
- static inline bool tud_cdc_write_flush (void );
89
- static inline uint32_t tud_cdc_write_available (void );
74
+ static inline bool tud_cdc_connected (void );
75
+ static inline uint8_t tud_cdc_get_line_state (void );
76
+ static inline void tud_cdc_get_line_coding (cdc_line_coding_t * coding );
77
+ static inline void tud_cdc_set_wanted_char (char wanted );
78
+
79
+ static inline uint32_t tud_cdc_available (void );
80
+ static inline int32_t tud_cdc_read_char (void );
81
+ static inline uint32_t tud_cdc_read (void * buffer , uint32_t bufsize );
82
+ static inline void tud_cdc_read_flush (void );
83
+ static inline bool tud_cdc_peek (int pos , uint8_t * u8 );
84
+
85
+ static inline uint32_t tud_cdc_write_char (char ch );
86
+ static inline uint32_t tud_cdc_write (void const * buffer , uint32_t bufsize );
87
+ static inline uint32_t tud_cdc_write_str (char const * str );
88
+ static inline bool tud_cdc_write_flush (void );
89
+ static inline uint32_t tud_cdc_write_available (void );
90
90
91
91
//--------------------------------------------------------------------+
92
92
// Application Callback API (weak is optional)
@@ -107,6 +107,22 @@ TU_ATTR_WEAK void tud_cdc_line_coding_cb(uint8_t itf, cdc_line_coding_t const* p
107
107
//--------------------------------------------------------------------+
108
108
// Inline Functions
109
109
//--------------------------------------------------------------------+
110
+ static inline int32_t tud_cdc_n_read_char (uint8_t itf )
111
+ {
112
+ uint8_t ch ;
113
+ return tud_cdc_n_read (itf , & ch , 1 ) ? (int32_t ) ch : -1 ;
114
+ }
115
+
116
+ static inline uint32_t tud_cdc_n_write_char (uint8_t itf , char ch )
117
+ {
118
+ return tud_cdc_n_write (itf , & ch , 1 );
119
+ }
120
+
121
+ static inline uint32_t tud_cdc_n_write_str (uint8_t itf , char const * str )
122
+ {
123
+ return tud_cdc_n_write (itf , str , strlen (str ));
124
+ }
125
+
110
126
static inline bool tud_cdc_connected (void )
111
127
{
112
128
return tud_cdc_n_connected (0 );
@@ -147,9 +163,9 @@ static inline void tud_cdc_read_flush (void)
147
163
tud_cdc_n_read_flush (0 );
148
164
}
149
165
150
- static inline int32_t tud_cdc_peek (int pos )
166
+ static inline bool tud_cdc_peek (int pos , uint8_t * u8 )
151
167
{
152
- return tud_cdc_n_peek (0 , pos );
168
+ return tud_cdc_n_peek (0 , pos , u8 );
153
169
}
154
170
155
171
static inline uint32_t tud_cdc_write_char (char ch )
0 commit comments