xxxxx@hotmail.com wrote:
I found that cypress has three products for developing USB device,
They have WAY more than three.
The newer two are “CY3684 EZ-USB FX2LP” and “CY3687 MoBL-USB FX2LP18”,
Newer does not necessarily mean better. The venerable FX2LP, which is
the chip in the CY3684 development kit, is well-understood,
well-supported, and well-tested. The FX2LP18 is a low-voltage 1.8v
version of the same chip. Theoretically, it is used identically, it
simply uses a lower voltage power supply. If you aren’t doing a battery
operated device, there’s no particular reason to go with the FX2LP18.
Both of those chips are USB 2. As long as you aren’t going to need more
bandwidth, that’s fine. Cypress has USB 3 chips as well, but they are
more complicated.
My goal is to use the GPIO pins of the development kit for implementing some applications.
Do they all have sample code for windows device driver?
If so, which one is suitable to me?
You shouldn’t need a driver. The magic that is WinUSB can handle
everything for you, as long as you don’t need a standard class driver.
Remember, however, that these are programmable parts. You’ll need to
write firmware. Cypress ships a large number of sample firmwares in
their SDK, so you will certainly be able to find one to modify. You’ll
have to buy an 8051 compiler.
I’m a big fan of the Cypress FX2 family, but if all you need it USB
access to a few GPIO pins, there may be less complicated alternatives.
For example, the Microchip PIC 18F2550 family is an inexpensive, simple
programmable chip that does full-speed USB 2.0. It has a host of
peripherals for talking to the outside world, but if you don’t need the
peripherals, those pins can be used as GPIO lines. They’re easy to
program and fun to work with. There are good open source tools to
support the 2550.
You might also look at the products from Numato Lab at
http://numato.com. They have several boards that are specifically
USB-to-GPIO, with 8, 16, or 32 channels. I’ve never used them.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.