#include <nitro/spi.h>
MICResult MIC_DoSamplingAsync(
MICSamplingType type,
void* buf,
MICCallback callback,
void* arg );
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 inside the interrupt handler. |
arg | Argument to pass to the callback function. |
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.
Samples the microphone once asynchronously. Use the PM_SetAmp*
function to turn on the programmable gain amp before sampling.
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.
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 system. See here for a workaround.
2009/06/25 Added description about using the PM_SetAmp*
function.
2005/06/27 Added text indicating that the callback is called from the interrupt handler.
2005/01/11 Revised return value.
2004/08/10 Added description related to input volume.
2004/06/01 Initial version.
CONFIDENTIAL