This embedded USB Raw class driver, also known as a vendor-specific class driver, supports Bulk and Interrupt, IN and OUT transfers.

Bulk transfers are used for infrequent transfers of larger amounts of data. The transfer takes place only when bandwidth is available, so may be delayed when other applications are using the bandwidth. Bulk may be used to support devices like printers and scanners. Data delivery is guaranteed by means of CRC error detection and limited retries. Bulk transfers are only supported by full and high speed devices.

Interrupt transfers are used to transfer data that needs to be delivered promptly. These can transfer fixed amounts of data in each USB frame.

Features
  • Conforms to the HCC Advanced Embedded Framework.
  • Designed for integration with both RTOS and non-RTOS based systems.
  • Supports development of vendor-specific class drivers.
  • Supports configurable use of Bulk In and OUT endpoints.
  • Supports configurable use of Interrupt IN and OUT endpoints.
  • Zero Length Packet (ZLP) handling in TX/RX can be enabled/disabled.
  • Compatible with sample device files produced by using the HCC USB Device Descriptor Generator.
Architecture

Other types of HCC class driver can be added to the system, for example CDC-ACM, Mass Storage, and Audio.