Re: which rom400_task routines are safe to call from an isr

"Kris Ardis" <Kristopher.Ardis-6tN4nzCoH/[email protected]>
Newsgroups gmane.comp.hardware.microcontrollers.tini
Message-ID <00d201c406d9$eec84a30$764000b4@kardis>
I think you may be able to do better than this...if you set the 'need_sched'
bit in your interrupt (that's "rom_flags.0", see definition for rom_flags in
startup400.a51) then the next time the millisecond ticker comes around, it
will run User_IOPoll  and then the scheduler.  Unless a lower priority
interrupt was in progress when the timer tick fired, you should be able to
get your IOPoll run and your task scheduled within about a millisecond of
the event.  If you need better performance than this, the timer 0 interrupt
could always be replaced with a custom one greased for your app.

Kris

----- Original Message -----
From: "john bogus" <bogusemail98230-/[email protected]>
To: <tini-6tN4nzCoH/[email protected]>; "Kris Ardis" <[email protected]>
Sent: Tuesday, March 09, 2004 11:04 AM
Subject: Re: [TINI]which rom400_task routines are safe to call from an isr


I was hoping to get better performance than this

I want to use this in a case where I get an interrupt
every 2-3 milliseconds which then requires about 1-2
milliseconds of processing.  While the processing is
happening I do not want to miss other interrupts.

polling every 4ms means my performance will drop to
roughly half.

any suggestions?

--- Kris Ardis <Kristopher.Ardis-6tN4nzCoH/[email protected]> wrote:
> Waking up tasks from an interrupt doesn't work too
> well.  Instead, you can
> register a polling routine using the User IO Poll
> routine library.  It is
> safe for the polling routines to call the task
> functions, so you can have
> your polling routine monitor for a wakeup signal.
>
> Kris
>
> ----- Original Message -----
> From: "john bogus" <bogusemail98230-/[email protected]>
> To: <tini-6tN4nzCoH/[email protected]>
> Sent: Thursday, March 04, 2004 2:13 PM
> Subject: [TINI]which rom400_task routines are safe
> to call from an isr
>
>
>
>
> I have some C code and  want to wake (or spawn) a
> task
> from an ISR.  Because of the way interrupts work on
> 8051 processors I assume there are limits on what i
> can do with the rom400_task task scheduler rotuines
> from an ISR.
>
> - which rom400_task routines are safe to call from
> an
> isr?
>
> - are there any recommendations on how this should
> be
> done on the 80c400?
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Search - Find what you're looking for faster
> http://search.yahoo.com
> _______________________________________________
> TINI mailing list
> TINI-6tN4nzCoH/[email protected]
> To UNSUBSCRIBE, edit your profile, or see list
> archives:
> http://lists.dalsemi.com/mailman/listinfo/tini
>
>
>


__________________________________
Do you Yahoo!?
Yahoo! Search - Find what you're looking for faster
http://search.yahoo.com
_______________________________________________
TINI mailing list
TINI-6tN4nzCoH/[email protected]
To UNSUBSCRIBE, edit your profile, or see list archives:
http://lists.dalsemi.com/mailman/listinfo/tini



_______________________________________________
TINI mailing list
TINI-6tN4nzCoH/[email protected]
To UNSUBSCRIBE, edit your profile, or see list archives:
http://lists.dalsemi.com/mailman/listinfo/tini
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.