MIC_DoSamplingAsync

Syntax

#include <nitro/spi.h>
MICResult MIC_DoSamplingAsync(
            MICSamplingType  type,
            void*            buf,
            MICCallback      callback,
            void*            arg );

Arguments

type Sampling type as one of the MICSamplingType enumerated types.
buf Pointer to the buffer where the sampling result is stored.
callback Pointer to the callback function. This callback is called from within the interrupt handler.
arg Argument to pass to the callback function.

Return Values

Returns the processing result as a MICResult enumerated type. If the asynchronous process started normally, returns MIC_RESULT_SUCCESS. If the process fails for some reason, returns some other value.

Description

Samples the microphone once asynchronously. This function issues a request to ARM7 to execute sampling and returns to the invoking program without waiting for a response from the ARM7 processor. To get the result from the processor, you must use the result argument. Where the input volume exceeds the minimum or maximum value, the output data will be clamped. You can use the PM_SetAmpGain* functions in advance to adjust the input volume that can be sampled. If this function fails, no operation is performed and no user callback function is called.

Note

This function asynchronously writes values to the buffer specified by the buf argument. Do not attempt to use the buffer until you have confirmed the completion of asynchronous processes by the user callback function.

It has been confirmed that slight hardware noise is mixed with the microphone input on the TWL console. See here for a workaround.

See Also

MIC_DoSampling, PM_SetAmpGain*

Revision History

2005/06/27 Added statement about callbacks being called from the interrupt handler.
2005/01/11 Revised return values.
2004/08/10 Added the description relating to the input volume.
2004/06/01 Initial version.


CONFIDENTIAL