HCC-Embedded USB Device
Local Menu
IXXAT Platinum Partner
You are here: ".$breadcrumb->show_breadcrumb().""; ?>

USB Device Stack

The EUSB (Embedded USB) has been designed by embedded development engineers for engineers to provide the most efficient USB device solutions. The EUSB-BS (EUSB Base System) provides a USB device stack from the end-point control. The stack supports all four USB Transfer Types:

  • Control
  • Interrupt
  • Bulk
  • Isochronous

With the EUSB-BS is supplied a Human Interface Device (HID) implementation. Other classes can be ordered as required.

Ported to many devices, EUSB is providing highly integrated and complete solutions for USB device connectivity.

As with all HCC software the systems are designed to be portable with minimum effort and are sold royalty free with full ANSI C cource code.

HCC's implementations can be evaluated on their uCDrive development boards, complete woking projects can be supplied for these.

Embedded USB Product Options

USB Bootloader

HCC have implemented a Flash Bootloader for USB for simple and reliable product upgrades

Embedded Side

The embedded side consists of a USB Boot Stub of less than 8K in code which is permanently resident in the target device. This USB bootstub has enough logic to be able to download a binary from the host system and program it to the device's internal flash.

Windows Side

An installable Windows XP application is provided which allows you to select the binary file you want to program in to the device and then to program it.

USB HID Class

HCC provide a HID class implementation for supporting Human Interface Devices. This class is provided as standard with the EUSB-BS package.

The HID class uses the Isochronous Transfer Type.

USB Mass Storage Class

A full USB Mass storage Class is provided together with optimised drivers for accessing MMC/SD cards or other devices.

The USB mass storage implementation is fully compatible with HCC's THIN and FAT file systems and complete projects with FAT file system and mass storage can be provided for particular platforms.

Together with HCC's other systems (e.g. FTL or DFML) you can also have an integrated solution for connecting Mass storage to NAND flash or Atmel DataFlash.

USB Communication Device Class

HCC provide a CDC class implementation for supporting standard comm ports.

An API is provided which allows the comm port to be either virtual in your embedded application or connect it to a serial port on your embedded design.

Provided is a sample application, which has an embedded command line terminal which can be accessed by the standard Windows terminal program (e.g. HyperTerm) through a Comm port over USB interface.

Both implementations can be provided as complete working projects on the USB enabled uCDrive develoment boards.

 

USB Embedded Pipe

HCC have implemented an Embedded Pipe for USB which takes the pain out of interfacing a USB device with a host application.

Windows Side

An installable Windows XP driver is provided which creates a standard Comm Object in the PC which can be accessed using simple read/write object methods. Additionally HCC provide a simple configuration application which allows the user to configure the USB connection. Access to the Embedded Pipe Comm Object can be from any program - VC, Perl, VB, VBscript etc.

One sample VC++ application included is an Embedded Pipe Terminal, roughly analogous to HyperTerm, but connected through a raw USB connection.

Embedded Side

The embedded side could not be simpler - the user simply read and writes from the pipe to communicate with the host application. The internals of US are entirely hidden from the developer.

Supported Targets

HCC-Embedded's USB Device stack currently supports the following targets:

  • ISP1161
  • ISP1183
  • MAX3421E
  • AT91SAM7
  • AT91SAM9
  • LPC2148
  • MCF52223
  • MCF5329
  • STR7xx
  • STR9xx
  • TI DSP 5509A

We are constantly adding support for new devices - to find if your USB Device is currently supported please contact .

HCC-Embedded also offer free porting to most targets if not currently supported.