Re: Interrupts
From: Paul G. Tobey [eMVP] (ptobey)
Date: 09/15/04
- Next message: guy: "mfc"
- Previous message: Bruce Eitman \(eMVP\): "Re: Release version crashes - again"
- In reply to: Javi Barrio: "Interrupts"
- Next in thread: Bruce Eitman \(eMVP\): "Re: Interrupts"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 15 Sep 2004 08:41:27 -0700
Let's go back to what you're trying to achieve, rather than how you're
trying to achieve it. Obviously, timing something like an interrupt in the
emulator is *completely* worthless. No meaning whatsoever. Waste of time.
So you're trying to find out what? The time from the hardware interrupt
until entry into the IST? If so, delegate some sort of I/O from your
processor or whatever you have available to indicate the you've entered the
IST. Right after the WaitForSingleObject() in the IST that you are trying
to test, set that output high. At the end of the IST, just before the loop
goes back to WaitForSingleObject(), set the output back low. So, now you
have a nice hardware signal with which you can measure timing. Now, you
just need to instrument the hardware...
Connect your logic analyzer to the interrupt signal which you are using. If
it's the serial port, this will be the INTA or INTB signal out of the 16550
chip. Also, connect up the hardware indicator from the IST set up in SW
above. Set the logic analyzer to trigger on the INTx signal going high.
Start the acquisition and launch the WinCE OS on the device. Each time a
serial interrupt occurs, you can look at the time from the rising edge of
INTx to the rising edge of the hardware IST output and, bingo, you've got
the IST latency.
Paul T.
"Javi Barrio" <JaviBarrio@discussions.microsoft.com> wrote in message
news:CB0689D6-0D37-4247-902F-49F7C1ED2383@microsoft.com...
> Hi:
> I've read the article "cats, toast, and interrupts on Windows CE", trying
> to
> find a way to start the programming of interrupts. But I'm still a bit
> lost.
>
> I want to get the timing of the interrupts (if I make them work one day),
> and I'm force to use the Emulator, as the CEPC board I have, only works
> with
> Windows CE 3.0 and doesn't work the "remote kernel tracker" tool, which I
> want to use. So I have used the Platform Builder4.2 to build
> "MyInternetAppliance" image and then use the emulator to test the
> programs.
>
> I'll try to program a simple application with an IST to manage a interrupt
> coming from the serial port. Here it comes the trouble...I don't know the
> way
> to link the character that comes through the serial port with the
> interrupt,
> how to convert that arriving character in a interrupt? How to know which
> is
> the IRQ in the emulator? Maybe use the WaitCommEvent function and when
> receiving the character... pulse the event that the IST is waiting for?
>
> I could try the interruption with a tick of timer, or a press key from the
> keyboard. But the problem is the same, how to link the interruption...
>
> I would really appreciate your help with this...Thanks very much,
> Javi.
- Next message: guy: "mfc"
- Previous message: Bruce Eitman \(eMVP\): "Re: Release version crashes - again"
- In reply to: Javi Barrio: "Interrupts"
- Next in thread: Bruce Eitman \(eMVP\): "Re: Interrupts"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|