usbcdc.h 634 B

123456789101112131415161718192021222324
  1. #ifndef __STM32_VSERPOG_USB_CDC_H__
  2. #define __STM32_VSERPOG_USB_CDC_H__
  3. #include <stdint.h>
  4. #include <stddef.h>
  5. #define USBCDC_PKT_SIZE_DAT 64
  6. #define USBCDC_PKT_SIZE_INT 16
  7. extern char usbcdc_rxbuf[USBCDC_PKT_SIZE_DAT]; /* DMA needs access */
  8. extern volatile bool usb_ready;
  9. void usbcdc_init(void);
  10. uint16_t usbcdc_write(void *buf, size_t len);
  11. uint16_t usbcdc_putc(char c);
  12. uint16_t usbcdc_putu32(uint32_t word);
  13. uint16_t usbcdc_fetch_packet(void);
  14. char usbcdc_getc(void);
  15. uint32_t usbcdc_getu24(void);
  16. uint32_t usbcdc_getu32(void);
  17. uint8_t usbcdc_get_remainder(char **bufpp);
  18. #endif /* __STM32_VSERPOG_USB_CDC_H__ */