TM STM32F4xx Libraries  v1.0.0
Libraries for STM32F4xx devices from Tilen Majerle
tm_stm32f4_usb_vcp.h
1 
30 #ifndef TM_USB_VCP_H
31 #define TM_USB_VCP_H 120
32 
33 /* C++ detection */
34 #ifdef __cplusplus
35 extern C {
36 #endif
37 
127 #include "stm32f4xx.h"
128 #include "stm32f4xx_rcc.h"
129 #include "stm32f4xx_gpio.h"
130 #include "stm32f4xx_exti.h"
131 #include "misc.h"
132 #include "defines.h"
133 /* Parts of USB device */
134 #include "usbd_cdc_core.h"
135 #include "usb_conf.h"
136 #include "usbd_desc.h"
137 #include "usbd_cdc_vcp.h"
138 
149 #ifndef USB_VCP_RECEIVE_BUFFER_LENGTH
150 #define USB_VCP_RECEIVE_BUFFER_LENGTH 128
151 #endif
152 
166 typedef enum {
177 
181 typedef struct {
182  uint32_t Baudrate;
184  uint8_t Stopbits;
189  uint8_t DataBits;
196  uint8_t Parity;
203  uint8_t Changed;
207 
224 
232 
241 
247 TM_USB_VCP_Result TM_USB_VCP_Putc(volatile char c);
248 
260 uint16_t TM_USB_VCP_Gets(char* buffer, uint16_t bufsize);
261 
268 
275 TM_USB_VCP_Result TM_USB_VCP_Send(uint8_t* DataArray, uint32_t Length);
276 
285 
293 uint8_t TM_USB_VCP_BufferEmpty(void);
294 
302 uint8_t TM_USB_VCP_BufferFull(void);
303 
311 uint8_t TM_USB_VCP_FindCharacter(volatile char c);
312 
313 /* Internal functions */
314 extern TM_USB_VCP_Result TM_INT_USB_VCP_AddReceived(uint8_t c);
315 
328 /* C++ detection */
329 #ifdef __cplusplus
330 }
331 #endif
332 
333 #endif
334 
uint8_t Stopbits
Definition: tm_stm32f4_usb_vcp.h:184
uint8_t Changed
Definition: tm_stm32f4_usb_vcp.h:203
Definition: tm_stm32f4_usb_vcp.h:174
TM_USB_VCP_Result
VCP Result Enumerations.
Definition: tm_stm32f4_usb_vcp.h:166
uint32_t Baudrate
Definition: tm_stm32f4_usb_vcp.h:182
TM_USB_VCP_Result TM_USB_VCP_Putc(volatile char c)
Puts character to USB VCP.
Definition: tm_stm32f4_usb_vcp.h:170
TM_USB_VCP_Result TM_USB_VCP_Init(void)
Initializes USB VCP.
TM_USB_VCP_Result TM_USB_VCP_Getc(uint8_t *c)
Gets received character from internal buffer.
Definition: tm_stm32f4_usb_vcp.h:173
Definition: tm_stm32f4_usb_vcp.h:167
Definition: tm_stm32f4_usb_vcp.h:175
TM_USB_VCP_Result TM_USB_VCP_GetStatus(void)
Gets VCP status.
TM_USB_VCP_Result TM_USB_VCP_Puts(char *str)
Puts string to USB VCP.
uint8_t DataBits
Definition: tm_stm32f4_usb_vcp.h:189
Definition: tm_stm32f4_usb_vcp.h:169
TM_USB_VCP_Result TM_USB_VCP_GetSettings(TM_USB_VCP_Settings_t *Settings)
Reads settings from user.
Definition: tm_stm32f4_usb_vcp.h:168
Definition: tm_stm32f4_usb_vcp.h:171
Structure for USART if you are working USB/UART converter with STM32F4xx.
Definition: tm_stm32f4_usb_vcp.h:181
uint8_t TM_USB_VCP_BufferEmpty(void)
Checks if receive buffer is empty.
TM_USB_VCP_Result TM_USB_VCP_Send(uint8_t *DataArray, uint32_t Length)
Sends array of data to USB VCP.
uint8_t TM_USB_VCP_BufferFull(void)
Checks if receive buffer is fukk.
Definition: tm_stm32f4_usb_vcp.h:172
uint8_t TM_USB_VCP_FindCharacter(volatile char c)
Checks if character is in buffer.
uint16_t TM_USB_VCP_Gets(char *buffer, uint16_t bufsize)
Gets string from VCP port.
uint8_t Parity
Definition: tm_stm32f4_usb_vcp.h:196