On Thursday 08 February 2001 05:04, Amit Mookerjee wrote:

> > Hi
>  I am trying to write a serial port interrupt handler in RTLinux.
>  The application that I have
>  in mind needs to trigger a recording device on the COM2 serial port and
>  read data from the COM1 serial port.
>  The logic of my main function is as follows:
>
>    startRecord();
>    <Wait for some event like a keypress or a timeout>
>    stopRecord();
>
> So I want to install a interrupt handler module and then trigger of the
>  recording from an user process.
>  The device I am attached to (an eyetracker)issues 120 interrupts in a
>  second. When I run my main function after installing the handler I notice
>  that the handler is just invoked once i.e. after the startRecord() the
>  process just waits for an event but the interrupt handler is not invoked
>  even though the device is sending interrupts. The curious fact is that
>  when I put a startRecord() command in the <void * start_routine(void
>  *arg)> function of the interrupt handler module the interrupt handler gets
> invoked as often as interrupts are received. But when I put a startRecord()
> command by a getchar() (a button press) I notice that the handler just gets
> invoked once.
>  Does anyone have ideas about what could be going wrong?

The most common reason for this kind of problems is that the ISR isn't 
telling the hardware that it got the IRQ. If you're using an OS (rather than 
DOS ;-), the interrupt controller is usually managed automatically, but your 
driver still has to do any additional handshaking that the hardware device 
may require.

When is this start_routine() function called?


//David

.- M A I A -------------------------------------------------.
|      Multimedia Application Integration Architecture      |
| A Free/Open Source Plugin API for Professional Multimedia |
`----------------------> http://www.linuxaudiodev.com/maia -'
.- David Olofson -------------------------------------------.
| Audio Hacker - Open Source Advocate - Singer - Songwriter |
`--------------------------------------> [EMAIL PROTECTED] -'
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/

Reply via email to