- From: Tim Beamish <tbeamish_at_cs.ubc.ca>
- Date: Thu, 18 Jul 2002 11:33:29 -0700 (PDT)
Hi all, Success!!! Thanks to Dave, my parport is now handling interrupts. But I do have another slight problem. When the encoder moves too quickly, my computer gets too many interrupts and it can't handle them. It freezes and never recovers...resulting in a reboot :( How do the interrupts work? Are they stored in a queue as they occur? Could the queue be getting overfilled? Could the amount of time needed to run throught the interrupt handler function affect the freezing? My interrupt handler function simply increments a counter and prints it's value to the kernel log. The printing may be taking too long. Is there a way to tell the driver to only handle interrupts if they occur at a certain interval? Thus, if they are happening too rapidly, I could just ignore a few of them. Tim On Wed, 17 Jul 2002, David Schleef wrote: > On Tue, Jul 16, 2002 at 06:29:00PM -0700, Tim Beamish wrote: > > I'm trying to cause an interrupt on the parallel port. I have a two > > channel encoder and I've attached one channel to pin 10 of the parallel > > port. I think this is the interrupt pin. I'm using RTLinux and I've loaded > > the comedi_parport driver into the kernel. I've configured the > > comedi_parport driver with the following line: > > > > /usr/sbin/comedi_config /dev/comedi1 comedi_parport 0x0378,3 > > > > I picked IRQ 3 because it was empty. > > You don't get to chose the IRQ. PC Parallel ports are usually on > IRQ 7. > > > > dave... >
Received on 2002-07-18Z17:33:29