Paul,
Thanks.  I'm not sure a thread will work because the RS485 serial interface
is receiving its' own data, which means that an IRQ4 will happen when it is
sending its' own 6 bytes of data.

QUESTION FOR ANYONE WHO KNOWS FOR SURE ---  Does  RTL version 0.9J  support
pre-emption of an ISR ???  Or did it get overlooked ??  

If I can pre-empted the lower priority ISR just like with the periodic tasks
I am set !!!  If I can't then I am in BIG TROUBLE.  Right now, I have tried
everything I can think of.  I was hoping I could get a DEFINITE, it is easy,
I have done it, here is what you do response.  

If RTL version 0.9J does not support ISR pre-emption what version(s) do ??? 

Thanks ---
Janet Estabridis
Electrical Engineer
NAWC Code 473E00D
Building 31440 Room 1017
China Lake, CA 93555
[EMAIL PROTECTED]
(760) 939-2896  FAX (760) 939 -3075



> -----Original Message-----
> From: Paul Koning [SMTP:[EMAIL PROTECTED]]
> Sent: Wednesday, May 24, 2000 12:06 PM
> To:   [EMAIL PROTECTED]
> Cc:   [EMAIL PROTECTED]
> Subject:      Re: [rtl] FW: HELP --- IRQ Preemption
> 
>  >>...
>  >> The highest priority ISR (irq 3) NEEDS to run at a very fixed rate
>  >> so that the ISR that grabs the data from the A/D converter FIFO
>  >> does not overflow causing loss of data.  This ISR gets called
>  >> every 1.6 msec and it takes approx.  550 usec to pull the data
>  >> off.
>  >> 
>  >> The lower priority ISR (irq 4) is an RS485 serial interface that
>  >> is used at a lower rate (every 30 Hz, 33.33 msec).  However, when
>  >> it is time for this ISR to send it's 6 bytes of info it takes
>  >> approx. 600 usec to do so.
>  >> 
>  >> What I expected to see on the o-scope because of the priorities of
>  >> the IRQ's is that the lower priority ISR would be preempted when
>  >> the higher priority ISR needed service.  BUT this DOES NOT happen
>  >> and I lose data !!!
> 
> Warning, novice at the keyboard... :-)
> 
> Are interrupts disabled while in the ISR?  I would suspect they might
> be.  If so, the fact that there are other higher priority interrupts
> pending doesn't get noticed.  (Unlike the PDP11 which had several
> levels of interrupt disabling...)
> 
> Could you make the serial interface service be an RT thread that is
> normally stopped?  Then the IRQ4 ISR only starts that thread and
> exits.  The thread would be interruptible.  (One hopes that it doesn't
> get interrupted by another IRQ4 interrupt -- you could test for that
> to verify this.)
> 
>    paul
> 
> -- [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/
-- [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