[vox-tech] Must a 300 microsecond delay keep the CPU busy?

Chris Jenks jenks at resonance.org
Tue Apr 4 13:35:06 PDT 2006


On Tue, 4 Apr 2006, John Wojnaroski wrote:

> Not knowing the details of your board, it is a little tough to propose a 
> better solution, but here goes.
>
> Since your using the parallel port, you should consider an interrupt based 
> driver, have the board provide the interrupt signal when the A/D conversion 
> is completed. Most A/D chips provide a sense line that indicates when the 
> converion is completed and the data can be read. that way you don't have to 
> "wait" for the board.
> Connect the sense line to the interrupt pin on the parallel port.
>
> Then create a tasklet that is called by the driver to move the data from 
> kernel space to user space.
>
> This is a bit more complex than a simple polling scheme, but far more elegant 
> and reliable and totally independent of CPU speed or processor performance. 
> Odds are you won't even notice the short time the CPU is servicing the 
> interrupt.
>
> Regards
> John W

   Dear John,

   That sounds like the best solution. The A/D IC does have an End Of 
Conversion pic that I can connect to any of the parallel port inputs. I'm 
relatively new to C. Do you know of a function I can cell that would wait 
for an interrupt from the parallel port, or is it necessary for me to 
write one?

   Yours,

     Chris


More information about the vox-tech mailing list