Classification of USB chips and microcontrollers

Despite the fact that USB is live for more than 10 years - electronic amateurs move towards it relatively slowly. Probably main reasons are that many electronics work with relatively old computers where RS232 port is actively used. Even me when buying new PC I was looking that motherboard was equipped with at least one COM port. But situation is more complicated with Laptops where COM or LPT ports are not used anymore due to limited space and other reasons. The only way is to adapt to USB in one way or another.

One of temporary solutions may be using USB to RS232 adapters. But again this is only emulation of COM port and not all programs may understand it correctly like PonyProg doesn’t work with virtual COM ports.

Today companies producing electronics components have been pushing lots of types of USB chips to market. In order not to get lost there is some classification made. So USB chips may be classified as follows:

  • Microcontrollers with build in USB interface;
  • Microcontrollers with USB emulated program;
  • USB converters or USB bridges;
  • Hub controllers;
  • Host controllers;
  • Dual role controllers, OTG (On-The-Go);
  • USB transceivers, USB switches

Microcontrollers with build in USB interface

Microcontrollers with build in USB interface are special MCU that have USB module built in chip itself. In these microcontrollers USB is implemented in hardware level where USB implementation requires setting of several bits in control register. It feels like working with other interfaces including ADC module, I2C, USART, SPI and so on. So working with USB is pretty simple - just set and go. The advantage of built in USB interface is data transfer speed because usually these interfaces support Full Sped (FS) communications.

microcontroller_with_built_in_USB_interface.jpg

Few Microcontrollers with built in USB interface:

Manufacturer Microcontrollers with built in USB interface Features
Atmel AT89C513x MSC-51 family. SOP-28, PLCC-52
Atmel

AT43USB35x, AT7CC7xx, AT90USB1286, AT90USB464

AVR family, QFP-48 - 100
Cypress Semiconductor CY7C63001, CY7C64×13, CY7C646xx, AN21xx LS, FS, DIP-20, QFP-44 - 128
Microchip Technology PIC16C745, PIC16C765, PIC18F2×5x, PIC18F4×5x LS, FS, DIP-40, SOP-28, SOP-40
NetChip Technology NET288, NET2890 TurboUSB family, QFP-48
Freescale (Motorola) 68HC705JBx HC05 family, LS, DIP-20, DIP-28
National Semiconductor USBN960x FS, SO-28
SigmaTel, Inc. STMP35xx QFP-100

General purpose microcontrollers with emulated USB interface

General purpose microcontrollers with emulated USB interface may be programmed to work as LS device.

microcontroller_with_emulated_USB_interface.jpg

To achieve this only 12MIPS MCU calculation speed is needed what is not a problem with most of microcontrollers. USB emulating program may as small as 2KB. Hardest part is the program itself - as writing USB driver is not one of easiest tasks. For instance there are several software USB drivers for AVR microcontrollers that can be found in the internet:

Software emulation is good, because practically any microcontroller may have USB connectivity, but they are not as reliable as hardware USB interfaces.

USB converters or USB bridges

USB converters or USB bridges are different devices with different purpose. They serve as adapters from USB interface to another - usually simpler interface like RS232, LPT, and ISP. For instance:

  • USB to serial (COM) Bridge chips: FT232(FTDI), PL-2303(Prolific), TUSB3410(TI);
  • USB to Parallel (LPT) Briges chips: FT245(FTDI), PL-2305(Prolific), CY7C68013(Cypress Sem.);
  • USB to synchronous(I2C, SPI, JTAG) bridge chips: FT2232(FTDI), PDUSBD11, PDUSBD12(NXP);
  • USB to multimedia (IDE, Flash Disk, CD-R/W, DVD) chips: PL-2506, PL-2507, PL2515, PL2518(Prolific), TUSB6250(TI).

RS232_usb_bridge.jpg

All these bridge chips require additional drivers so operating system could recognize them. So there may be situations that there are no drivers for some particular operating system.

USB hub controllers

USB hub controllers are specialized chips that are used only for coupling multiple USB connection to one. They usually come with hard-coded logic and cannot be customized.

USB host controllers

USB Host controllers usually are integrated in computer motherboards or designed as PCI-USB cards, PCI-E-USB, etc. Also there may be Host to Host controllers that are used for direct connection of two computers via USB.

Dual role USB controllers - OTG

Dual role USB controllers - OTG (On The Go) are universal chips that may be working as hosts or as slaves. OTG name came from Philips(now NXP) who was the first producing OTG chip ISP1161.

USB transceivers, USB switches

USB transceivers and USB switches are some kind of additional devices that may serve as protection from over-voltages. These chips do not process USB protocol but simply translates signals to CMOS level compatible for CPLD or MCU.

Blogsphere: TechnoratiFeedsterBloglines
Bookmark: Del.icio.usSpurlFurlSimpyBlinkDigg
RSS feed for comments on this post
 |  TrackBack URI for this post

New on WinAVR Tutorial
Running TX433 and RX433 RF modules with AVR microcontrollers,
Sometimes in embedded design you may want to go wireless. Might be you will want to log various readi …
Programming AVR ADC module with WinAVR,
Most of AVR microcontrollers have Analog to Digital Converter (ADC) integrated in to chip. Such solut …
New on WinARM Tutorial
What are differences between WinARM and WinAVR,
Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR (http://win …
LPC2000 watchdog timer,
As in all microcontrollers watchdog timers purpose isto reset microcontroller after reasonable amount …

Leave a Reply