ftp.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2008/05/26/10:47:13

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
X-Recipient: djgpp AT delorie DOT com
Message-ID: <483ACD48.2050106@iki.fi>
Date: Mon, 26 May 2008 17:46:32 +0300
From: Andris Pavenis <andris DOT pavenis AT iki DOT fi>
User-Agent: Thunderbird 2.0.0.14 (X11/20080501)
MIME-Version: 1.0
CC: djgpp AT delorie DOT com
Subject: Re: 30K Timer tic interrupt handler
References: <20080525194916 DOT 3DD6C5702E7 AT panel DOT abserver DOT es> <200805252133 DOT m4PLXarG015150 AT envy DOT delorie DOT com>
In-Reply-To: <200805252133.m4PLXarG015150@envy.delorie.com>
Reply-To: djgpp AT delorie DOT com

DJ Delorie wrote:
>> A simple solution is to write a resident program with a 16 bit
>> compiler (like borladc). You can pass information with your 32 bits
>> progam and your 16 bit program via software interrupts.
> 
> You can do 16 bit handlers with djgpp, no need to get a separate
> compiler for it.
> 
> The problem here is that at 30,000 interrupts per second, you need
> both a 16 bit and a 32 bit handler, so that interrupts never cause a
> mode switch.
> 

If one needs 30000 interrupts per second, one perhaps needs a real time
operating system. The mode switch is perhaps not only problem here.
Handling some interrupt may take more than 33 microseconds and then
30 KHz timer interrupt may get lost even when mode switch is not needed.
Additionally interrups may sometimes be disabled for more than 30 mks
with the same results.

One thing to try could be RTAI (https://www.rtai.org/). I have used it
earlier myself but not for so high interrupt frequencies and not in
last years.

Andris

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019