furi-hal-usb.h 613 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #pragma once
  2. #include "usb.h"
  3. /** USB device modes */
  4. typedef enum {
  5. UsbModeNone,
  6. UsbModeVcpSingle,
  7. UsbModeVcpDual,
  8. UsbModeHid,
  9. UsbModeU2F,
  10. UsbModesNum,
  11. } UsbMode;
  12. /** USB device low-level initialization
  13. */
  14. void furi_hal_usb_init();
  15. /** Set USB device configuration
  16. *
  17. * @param mode new USB device mode
  18. */
  19. void furi_hal_usb_set_config(UsbMode mode);
  20. /** Get USB device configuration
  21. *
  22. * @return current USB device mode
  23. */
  24. UsbMode furi_hal_usb_get_config();
  25. /** Disable USB device
  26. */
  27. void furi_hal_usb_disable();
  28. /** Enable USB device
  29. */
  30. void furi_hal_usb_enable();