Re: general purpose driver for Printer Port?
- From: Tim Roberts <timr@xxxxxxxxx>
- Date: Tue, 17 Jun 2008 23:33:30 -0700
"anonym" <anonym@xxxxxxxxxx> wrote:
USB is attractive and more modern way to go but, it's more expensive on
hardware and I've yet to find anything that lets actual USB connected
hardware, directly generate an interrupt?
No, that's not how USB works, but you can certainly get the same effect.
The host controller gets interrupts, and returns completed packet requests
to the driver during its completion routine. The latency is quite good.
Since you mention it though, I notice (on my computer at least) that USB
shows up at I/O ports 1820-183F and using IRQ19. I imagine though, that
different motherboards may use different I/O mapping.
Where could I find some info on what "hardware" actually resides in that I/O
space and how to interact with it?
You can't. USB is a protocol driver, and you must communicate with the
host controller driver to talk to a USB device. USB is much more than just
a pair of wires.
Is it possible, that WITHOUT any PnP
detected/loaded driver or device ID or enumeration, one could directly
command a USB port to send/receive a packet?
No.
Is their a common chip-set
used or something like that, where I could read up on the topic?
Sort of. For USB 2.0, you can go fetch the EHCI specification, which all
USB 2.0 controllers follow. However, you can't play on USB without
following the whole specification, which makes it impractical for a
do-it-yourself solution.
I want to stay low-level as possible, since this gives the highest
flexibility and shortest latency!
It does NOT give the highest flexibility. Further, the response time for a
USB packet is just as good or better than a parallel port. A parallel port
can push about 1.5 MB/s. A USB device can transfer 45 MB/s.
This is what makes the good old parallel
port so attractive, in that it's just a data register for 8-bits of direct
I/O.
If you spent a little time playing with one of the FX2 development kits
from Cypress, or a PIC kit from Microchip, I think you would change your
tune. The extraordinary power and flexibility of USB makes it a much more
fun environment for experimentation than parallel ports, and it works on
those modern systems that no longer include a parallel port.
--
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.
.
- Follow-Ups:
- Re: general purpose driver for Printer Port?
- From: Slavo Tomascik
- Re: general purpose driver for Printer Port?
- References:
- general purpose driver for Printer Port?
- From: anonym
- Re: general purpose driver for Printer Port?
- From: David Craig
- Re: general purpose driver for Printer Port?
- From: anonym
- general purpose driver for Printer Port?
- Prev by Date: Re: 1394 transfer size under Vista-64 SP1 is limited to 1MB
- Next by Date: Re: MAPISendMail FAILURE
- Previous by thread: Re: general purpose driver for Printer Port?
- Next by thread: Re: general purpose driver for Printer Port?
- Index(es):
Relevant Pages
|