#include <twl/spi.h>
MICResult MIC_StartLimitedSampling(
const MICAutoParam
* param );
param | Pointer to a MICAutoParam -type auto-sampling settings structure. |
Returns the processing result as a MICResult
enumerated type. Returns MIC_RESULT_SUCCESS
if processing completed successfully; returns some other value if the process failed.
Starts frequency-limited microphone auto-sampling.
Use the PM_SetAmp*
function to turn on the programmable gain amp before sampling.
This function issues a request to the ARM7 to start frequency-limited auto-sampling, waits for the ARM7 to respond, and returns the processing result. This is a synchronous version of the MIC_StartLimitedSamplingAsync
function. Where the input volume falls outside the minimum or maximum value, the sampling data is clamped.
Frequency-limited auto-sampling differs from normal auto-sampling in that the hardware does the actual sampling. As a result, stable sampling can be performed at precise cycles; also, with the CPU burden on the ARM7 relaxed, effects of sampling on wireless communications and other I/O are reduced. On the other hand, sampling cannot be performed at frequencies that are unsupported by the hardware. The following sampling frequencies can be specified for param->rate
, but the frequencies that can be specified at a given time depend on the sound master frequency settings and thus are further limited to four of the following. A value of MIC_RESULT_ILLEGAL_PARAMETER
is returned if one of the limited frequencies is not specified.
32.73 kHz | MIC_SAMPLING_RATE_32730 |
32.73 kHz (1/1 of the master frequency) |
MIC_SAMPLING_RATE_16360 |
16.36 kHz (1/2 of the master frequency) | |
MIC_SAMPLING_RATE_10910 |
10.91 kHz (1/3 of the master frequency) | |
MIC_SAMPLING_RATE_8180 |
8.18 kHz (1/4 of the master frequency) | |
47.61kHz | MIC_SAMPLING_RATE_47610 |
47.61 kHz (1/1 of the master frequency) |
MIC_SAMPLING_RATE_23810 |
23.81 kHz (1/2 of the master frequency) | |
MIC_SAMPLING_RATE_15870 |
15.87 kHz (1/3 of the master frequency) | |
MIC_SAMPLING_RATE_11900 |
11.90 kHz (1/4 of the master frequency) |
This function waits for a PXI interrupt for synchronization purposes. Do not call it when PXI interrupts are prohibited.
Because frequency-limited auto-sampling cannot be performed on the NITRO platform or when the CODEC is running in CODEC-DS mode, this function instead calls the MIC_StartAutoSampling
auto-sampling control function.
It has been confirmed that slight hardware noise is mixed with the microphone input on the TWL system. See here for a workaround.
MIC_StartLimitedSamplingAsync
MIC_StopLimitedSampling
MIC_AdjustLimitedSampling
2009/06/25 Added description of using the PM_SetAmp*
function.
2008/01/09 Added a note about the difference in behavior with CODEC mode.
2007/11/17 Initial version.
CONFIDENTIAL