You could start with anything that is capable of running Linux or any version of Windows.
--
Regards,
Richard.
+ http://www.FreeRTOS.org
Designed for Microcontrollers. More than 7000 downloads per month.
+ http://www.SafeRTOS.com
Certified by TÜV as meeting the requirements for safety related systems
Your requirement is for a micro that can provide USB Host functionality.
Two possible devices are Atmel AVR32B (AVR32UC3B0256 for example) or ST ARM Cortex-M3 both of which come with example host controller code from the manufacturer. Free dev tools (compiler/IDE/debugger) are available for both processors.
Provided that it has a usb HOST port; probably the majority of non-x86 systems that run linux or wince do not, though more that do are becoming available.
They have usb functionality embedded into v fast (50mips) risc core 8051 style devices, with starter kits available for less than $100, Keil C based ide included as well.
Have used their 8051 devices for several projects and their stuff just works out of the box. One project (400Hz pwm inverter) interrupt handler time, with 6 or so lines of c code, profiled at less than 50uS from start to finish...
The simplest way to do that is "Vinculum". However it will take the eternity to copy from one flash drive to the other with the transfer rate of 200...300KB/s.
Vladimir Vassilevsky DSP and Mixed Signal Design Consultant
My experience with their parts with one project so far is similarly good. The hardware, despite offering options, is suprisingly easy to make work well. I kind of expected that I'd have to read tiny details spread all over the place to get something going, correctly. But it's been less work than I'd anticipated, beforehand. For example, in a case where I worried about track and hold sampling on the ADC, the options are both flexible as well as easy to fathom and use properly. I'm still waiting for the other shoe to drop. ;)
You weren't very clear on what you were trying to do, other than "communicate between two usb flash drive". If you want to get started experimenting with usb stuff, the silabs may be a good place, as the kits are low cost and easy to get running. If you are new to usb, one would think you will need all the help you can get and in particular, you won't want to start by writing your own usb stack. Usb stack transparency and integration will be one of the key items for any such project.
Try this:
formatting link
I think ST micro offer a free usb stack for their arm 7tdmi series, but don't know about eval kits and the tools won't be cheap. ie: a lot of hassle to get started...
Since you are talking to TWO USB memory sticks, you need to have a controller with TWO USB host ports. Alternatively you need a hub.
If you are using large USB sticks, then you might want to consider a device with High Speed USB.
The AT91SAM9260 has two USB host ports, but full speed. The AT91SAM9G45 has two USB high speed host port The difficulty with ARM is the USB stack. If you use Linux, then you will have the stack included.
I too was looking for an mcu that could support high speed host. I looked at the 9260 but it was full speed only. I looked at the 9G45 and it was a BGA 324 package which means expensive to prototype & play around with.
When will someone introduce a high speed host USB that runs linux which is in a flat pack package with pins.
I won't say "never", but let me put it like this: don't hold your breath. Don't even rely on a set of scuba gear with an extra pair of bottles supplying you with air until then.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.