USB vs AT90USB

Go To Last Post
11 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

This is related to USB:

Which method has better data transmission speed over other:
1. ATmega8 with HID
2. Special USB controllers
3. FTD232 etc ICs
4. BF-810

Experienced inputs are requested.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

> 1. ATmega8 with HID

Slowest, as the USB is in software -- you use most of the AVRs cycles to generate the signals, and you only get single banked Low Speed (1.5Mb/s).

> 2. Special USB controllers

The USB AVRs are better. You can get Full Speed double banked data out of them - up to 12Mb/s which is faster than you'll be actually be able to process at.

> 3. FTD232 etc ICs

Easy to use, but requires an external chip, and is expensive. Virtual serial ports can be SLOW depending on the way they are used.

> 4. BF-810

Never heard of it.

- Dean :twisted:

Make Atmel Studio better with my free extensions. Open source and feedback welcome!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

abcminiuser wrote:
> 1. ATmega8 with HID

Slowest, as the USB is in software -- you use most of the AVRs cycles to generate the signals, and you only get single banked Low Speed (1.5Mb/s).

> 2. Special USB controllers

The USB AVRs are better. You can get Full Speed double banked data out of them - up to 12Mb/s which is faster than you'll be actually be able to process at.

> 3. FTD232 etc ICs

Easy to use, but requires an external chip, and is expensive. Virtual serial ports can be SLOW depending on the way they are used.

> 4. BF-810

Never heard of it.

- Dean :twisted:

Thus your analysis says the special USB controllers are fast.

The BF-810 is BAFO make USB to serial conv product.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hey,

Any of the AT90USB devices are going to be much faster than external hardware. The reason being the USB controller is inside your AVR, connected by the internal databus.

Anything external needs a slower method of communication. And the controllers built into the AVRs are quite good, and even better if you use Dean's USB library ;-)

-Colin

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
even better if you use Dean's USB library

Can you add its link here!!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Just scroll up a bit, the link is in 'abcminiuser' signature! It's called 'MyUSB'.

-Colin

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

yellowboy_75 wrote:
Can you add its link here!!

Dean's USB library

You are welcome
Thomas

Edit:
Hint: it is the first link. Alternatively, google for MyUSB

pycrc -- a free CRC calculator and C source code generator

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Lazy me :roll:

The 90USB1287 will cost me US$15 in my region, whats the cost at your end? Do you get single pieces for R&D. Here the reseller has MOQ 5.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Do you really need OTG and the biggest AT90USB device size possible? As you were comparing against mega8 then presumably not. In that case how about pricing up an AT90USB82 for example. I think you'll find that Digikey (who lists the 1287 at $15.05) have this listed for $3.23 (one off). That drops to $2.17 for 100 of them.

Cliff

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Or for experimenting and general use, get an AT90USBKEY at about US$30 that has lots of toyz.

Lee

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

abcminiuser wrote:
> 2. Special USB controllers

The USB AVRs are better. You can get Full Speed double banked data out of them - up to 12Mb/s which is faster than you'll be actually be able to process at.

Fer sure.
If your CPU is running at 8 MHz,
it has about 5 cycles to process each byte.
I did manage to do USB to SPI at just over 1 Mb/s.
The SPI was the bottleneck.

"SCSI is NOT magic. There are *fundamental technical
reasons* why it is necessary to sacrifice a young
goat to your SCSI chain now and then." -- John Woods