On 16 Dec 2008 at 16:59, Keith wrote:
I have a small uC device that I made that uses an FTDI
USB->TTL
converter. I wish USB was as straight-forward as you describe. I'm
currently running into problems when transferring, very quickly, some
data from the uC to the PC. The problems are related to overrunning the
PC, where the PC isn't scheduling reads from the device fast enough to
prevent drops. At least interrupt-based I/O can "demand" attention from
the cpu at any time, where USB is at the mercy of being scheduled.
I'm probably stating what you are already aware of, but on the off-
chance that it sheds some light...
Don't those things have a FIFO--something like 384 bytes?
Regardless, there are two basic modes of operation on those things--
the first is single-character "comm port" type transfer; the second
is block-mode transfer (as you'd see in a storage device). Single-
mode transfers have considerable overhead, severely limiting the
speed. Unfortunately, most of the FTDI development kits include
drivers for only the former mode and not the block mode.
FWIW,
Chuck