

#include <nitro/spi.h>typedef enum
{
MIC_SAMPLING_TYPE_8BIT = 0 ,
MIC_SAMPLING_TYPE_12BIT ,
MIC_SAMPLING_TYPE_SIGNED_8BIT ,
MIC_SAMPLING_TYPE_SIGNED_12BIT ,
MIC_SAMPLING_TYPE_12BIT_FILTER_OFF ,
MIC_SAMPLING_TYPE_SIGNED_12BIT_FILTER_OFF ,
MIC_SAMPLING_TYPE_MAX
} MICSamplingType;
| MIC_SAMPLING_TYPE_8BIT | 有効ビット幅 8 ビット(符号なし)のサンプリング。 出力データの範囲は 0 〜 255 になります。 |
| MIC_SAMPLING_TYPE_12BIT | 有効ビット幅 12 ビット(符号なし)のサンプリング。 出力データの範囲は 0 〜 65520 になります。 |
| MIC_SAMPLING_TYPE_SIGNED_8BIT | 有効ビット幅 8 ビット(符号付き)のサンプリング。 出力データの範囲は -128 〜 127 になります。 |
| MIC_SAMPLING_TYPE_SIGNED_12BIT | 有効ビット幅 12 ビット(符号付き)のサンプリング。 出力データの範囲は -32768 〜 32752 になります。 |
| MIC_SAMPLING_TYPE_12BIT_FILTER_OFF | フィルター無しの有効ビット幅 12 ビット(符号なし)のサンプリング。 出力データの範囲は 0 〜 65520 になります。 他のSPIデバイスアクセスなどと競合し、サンプリングに失敗した場合には出力データが0xffff(65535)になります。 |
| MIC_SAMPLING_TYPE_SIGNED_12BIT_FILTER_OFF | フィルター無しの有効ビット幅 12 ビット(符号付き)のサンプリング。 出力データの範囲は -32768 〜 32752 になります。 他のSPIデバイスアクセスなどと競合し、サンプリングに失敗した場合には出力データが0xffff(-1)になります。 |
サンプリング種別を示す列挙型です。
8 ビット、12 ビットの 2 種類の分解能でのサンプリングが可能です。
また、出力データの形式を 符号なし、符号付き の 2 種類から選択可能です。
8 ビットの場合は一回のサンプリングで 1 バイトのデータを取得します。
12 ビットの場合は一回のサンプリングで 2 バイト(上位 12 ビットが有効、下位 4 ビットは 0 パディング)のデータを取得します。
なお、有効ビット幅を越えるような音声が入力された場合は、出力データはクランプされて最大値もしくは最小値になります。
有効ビット幅内でカバーする音量は、PM_SetAmpGain*()にて変更することができます。
自動サンプリングを行う場合には、他のSPIデバイス(タッチパネル等)との競合により、サンプリングに失敗する場合があります。
この時、通常は直前のサンプリングデータを用いてフィルターされますが、サンプリング種別に *_FILTER_OFF を指定した場合には
フィルターが行われず、サンプリングに失敗した旨を示す値( 0xffff )が出力されます。
MIC_DoSampling, MIC_DoSamplingAsync, MIC_StartAutoSampling, MIC_StartAutoSamplingAsync, PM_SetAmpGain, MIC_StartLimitedSampling, MIC_StartLimitedSamplingAsync
Ver. 2004/12/03 フィルター無しのサンプリング種別を追加
Ver. 2004/06/01 初版