I can use a $1.00 Atmega8A and easily implement a USB keyboard and connect an Atari 800
keyboard in a row/column matrix very easily. Now going the other way around requires the
port pins to be outputs and you would use the same amount of pins for talking to a ps/2
keyboard as talking out as a USB device, you'll still need 2 pins for clock lines and
run at 12mhz for best results... You don't need to throw a lot at this situation.
Sent from my iPhone
On Jan 18, 2012, at 5:01 PM, "Chuck Guzis" <cclist at sydex.com> wrote:
On 18 Jan 2012 at 13:42, Jim Brain wrote:
example, the atmega32u2 is USB device mode
capable, but not host mode.
Host mode capable devices are larger and more expensive.
It seems that it depends on your exact needs. For example, the
ATMega32 can be made to talk to a USB mouse:
http://courses.cit.cornell.edu/ee476/FinalProjects/s2007/blh36_cdl28_d
ct23/blh36_cdl28_dct23/index.html
I suspect that the same is true of a USB keyboard and other simple
HID devices. But those are exceptions and not a general solution.
There are interface chips, such as the FTDI Vinculum and the Maxim
MAX3421, which probably wouldn't break the bank. With that you can
implement a lightweight host on an Arduino:
https://github.com/felis/USB_Host_Shield_2.0
LUFA provides specialized (e.g. HID host, MIDI host) host
capabilities for a limited set of peripherals using the AT90SUB
chips.
http://www.fourwalledcubicle.com/LUFA.php
On the other hand, silicon's getting cheaper, so implementing a host
design using ARM or PIC32 isn't a big deal and both have USB host
capabilities (and vendor-supplied software to go along with it).
But if you're looking for a general host controller with 5V Vcc and a
DIP package, I suspect that you'll be looking a long, long time.
--Chuck