📄 pmic_audio.h
字号:
USE_8_TIMESLOTS /*!< Configure for 8 timeslots. */
} PMIC_AUDIO_NUMSLOTS;
/*!
* @enum PMIC_AUDIO_STDAC_SAMPLING_RATE
* @brief Select the audio data sampling rate for the Stereo DAC.
*
* This enumeration defines all of the possible sampling rates currently
* supported by the Stereo DAC. One of these sampling rates must be selected
* and it must match that of the audio stream or else signal distortion will
* occur.
*/
typedef enum
{
STDAC_RATE_8_KHZ, /*!< Use 8 kHz sampling rate. */
STDAC_RATE_11_025_KHZ, /*!< Use 11.025 kHz sampling rate. */
STDAC_RATE_12_KHZ, /*!< Use 12 kHz sampling rate. */
STDAC_RATE_16_KHZ, /*!< Use 16 kHz sampling rate. */
STDAC_RATE_22_050_KHZ, /*!< Use 22.050 kHz sampling rate. */
STDAC_RATE_24_KHZ, /*!< Use 24 kHz sampling rate. */
STDAC_RATE_32_KHZ, /*!< Use 32 kHz sampling rate. */
STDAC_RATE_44_1_KHZ, /*!< Use 44.1 kHz sampling rate. */
STDAC_RATE_48_KHZ, /*!< Use 48 kHz sampling rate. */
STDAC_RATE_64_KHZ, /*!< Use 64 kHz sampling rate
<b>(MC13783-only)</b>. */
STDAC_RATE_96_KHZ /*!< Use 96 kHz sampling rate.
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_STDAC_SAMPLING_RATE;
/*!
* @enum PMIC_AUDIO_VCODEC_SAMPLING_RATE
* @brief Select the audio data sampling rate for the Voice CODEC.
*
* This enumeration defines all of the possible sampling rates currently
* supported by the Voice CODEC. One of these sampling rates must be selected
* and it must match that of the audio stream or else signal distortion will
* occur.
*/
typedef enum
{
VCODEC_RATE_8_KHZ, /*!< Use 8 kHz sampling rate. */
VCODEC_RATE_16_KHZ, /*!< Use 16 kHz sampling rate. */
} PMIC_AUDIO_VCODEC_SAMPLING_RATE;
/*!
* @enum PMIC_AUDIO_ANTI_POP_RAMP_SPEED
* @brief Select the anti-pop circuitry's ramp up speed.
*
* This enumeration defines all of the possible ramp up speeds for the
* anti-pop circuitry. A slow ramp up speed may be required in order to
* avoid the popping noise that is typically generated during the insertion
* or removal of a headset or microphone.
*/
typedef enum
{
ANTI_POP_RAMP_FAST, /*!< Select fast ramp up. */
ANTI_POP_RAMP_SLOW /*!< Select slow ramp up. */
} PMIC_AUDIO_ANTI_POP_RAMP_SPEED;
/*@}*/
/*!
* @name General Voice CODEC Configuration Typedefs and Enumerations
* Typedefs and enumerations that are used to define and configure
* the basic operating options for the Voice CODEC.
*/
/*@{*/
/*!
* @enum PMIC_AUDIO_VCODEC_CLOCK_IN_FREQ
* @brief Select the Voice CODEC input clock frequency.
*
* This enumeration defines all of the supported Voice CODEC input clock
* frequencies. One of these frequencies must be selected in order to
* properly configure the Voice CODEC to operate at the required sampling
* rate.
*/
typedef enum
{
VCODEC_CLI_13MHZ, /*!< Clock frequency is 13MHz. */
VCODEC_CLI_15_36MHZ, /*!< Clock frequency is 15.36MHz. */
VCODEC_CLI_16_8MHZ, /*!< Clock frequency is 16.8MHz
<b>(MC13783-only)</b>. */
VCODEC_CLI_26MHZ, /*!< Clock frequency is 26MHz. */
VCODEC_CLI_33_6MHZ, /*!< Clock frequency is 33.6MHz. */
} PMIC_AUDIO_VCODEC_CLOCK_IN_FREQ;
/*!
* @enum PMIC_AUDIO_VCODEC_CONFIG
* @brief Select the Voice CODEC configuration options.
*
* This enumeration is used to enable/disable each of the Voice CODEC options.
* This includes the use of highpass digital filters and audio signal
* loopback modes.
*
* Note that resetting the digital filters is now handled by the
* pmic_audio_digital_filter_reset() API.
*/
typedef enum
{
DITHERING = 1, /*!< Enable/disable dithering. */
INPUT_HIGHPASS_FILTER = 2, /*!< Enable/disable the input high
pass digital filter. */
OUTPUT_HIGHPASS_FILTER = 4, /*!< Enable/disable the output high
pass digital filter. */
ANALOG_LOOPBACK = 8, /*!< Enable/disable the analog
loopback path
<b>(MC13783-only)</b>. */
DIGITAL_LOOPBACK = 16, /*!< Enable/disable the digital
loopback path. */
VCODEC_MASTER_CLOCK_OUTPUTS = 32, /*!< Enable/disable the bus master
clock outputs. */
TRISTATE_TS = 64 /*!< Enable/disable FSYNC, BITCLK,
and TX tristate. */
} PMIC_AUDIO_VCODEC_CONFIG;
/*@}*/
/*!
* @name General Stereo DAC Configuration Typedefs and Enumerations
* Typedefs and enumerations that are used to define and configure
* the basic operating options for the Stereo DAC.
*/
/*@{*/
/*!
* @enum PMIC_AUDIO_STDAC_CLOCK_IN_FREQ
* @brief Select the Stereo DAC input clock frequency.
*
* This enumeration defines all of the supported Stereo DAC input clock
* frequencies. One of these frequencies must be selected in order to
* properly configure the Stereo DAC to operate at the required sampling
* rate.
*/
typedef enum
{
STDAC_CLI_3_6864MHZ, /*!< Clock frequency is 3.36864MHz
<b>(MC13783-only)</b>. */
STDAC_CLI_12MHZ, /*!< Clock frequency is 12MHz.
<b>(MC13783-only)</b>. */
STDAC_CLI_13MHZ, /*!< Clock frequency is 13MHz. */
STDAC_CLI_15_36MHZ, /*!< Clock frequency is 15.36MHz. */
STDAC_CLI_16_8MHZ, /*!< Clock frequency is 16.8MHz
<b>(MC13783-only)</b>. */
STDAC_CLI_26MHZ, /*!< Clock frequency is 26MHz. */
STDAC_CLI_33_6MHZ, /*!< Clock frequency is 33.6MHz. */
STDAC_MCLK_PLL_DISABLED, /*!< Use MCLK and disable internal PLL. */
STDAC_FSYNC_IN_PLL, /*!< Use FSYNC as internal PLL input. */
STDAC_BCLK_IN_PLL /*!< Use BCLK as internal PLL input. */
} PMIC_AUDIO_STDAC_CLOCK_IN_FREQ;
/*!
* @enum PMIC_AUDIO_STDAC_CONFIG
* @brief Select the Stereo DAC configuration options.
*
* This enumeration is used to enable/disable each of the Stereo DAC options.
*/
typedef enum
{
STDAC_MASTER_CLOCK_OUTPUTS = 1 /*!< Enable/disable the bus master clock
outputs. */
} PMIC_AUDIO_STDAC_CONFIG;
/*@}*/
/*!
* @name Voice CODEC Audio Port Mixing Typedefs and Enumerations
* Typedefs and enumerations that are used for setting up the audio mixer
* within the Voice CODEC.
*/
/*@{*/
/*!
* @enum PMIC_AUDIO_VCODEC_TIMESLOT
* @brief Select the Stereo DAC configuration options.
*
* This enumeration is used to select the timeslot for both the primary and
* secondary (for MC13783-only) audio channels to the Voice CODEC.
*/
typedef enum
{
USE_TS0, /*!< Use timeslot 0 for audio signal source
<b>(MC13783-only)</b>. */
USE_TS1, /*!< Use timeslot 1 for audio signal source
<b>(MC13783-only)</b>. */
USE_TS2, /*!< Use timeslot 2 for audio signal source
<b>(MC13783-only)</b>. */
USE_TS3 /*!< Use timeslot 3 for audio signal source
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_VCODEC_TIMESLOT;
/*!
* @enum PMIC_AUDIO_VCODEC_MIX_IN_GAIN
* @brief Select the secondary channel input gain for the Voice CODEC mixer.
*
* This enumeration selects the secondary channel input gain for the Voice
* CODEC mixer.
*/
typedef enum
{
VCODEC_NO_MIX, /*!< No audio mixing <b>(MC13783-only)</b>. */
VCODEC_MIX_IN_0DB, /*!< Mix with 0dB secondary channel gain
<b>(MC13783-only)</b>. */
VCODEC_MIX_IN_MINUS_6DB, /*!< Mix with -6dB secondary channel gain
<b>(MC13783-only)</b>. */
VCODEC_MIX_IN_MINUS_12DB, /*!< Mix with -12dB secondary channel gain
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_VCODEC_MIX_IN_GAIN;
/*!
* @enum PMIC_AUDIO_VCODEC_MIX_OUT_GAIN
* @brief Select the output gain for the Voice CODEC mixer.
*
* This enumeration selects the output gain for the Voice CODEC mixer.
*/
typedef enum
{
VCODEC_MIX_OUT_0DB, /*!< Select 0dB mixer output gain
<b>(MC13783-only)</b>. */
VCODEC_MIX_OUT_MINUS_6DB, /*!< Select -6dB mixer output gain
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_VCODEC_MIX_OUT_GAIN;
/*@}*/
/*!
* @name Stereo DAC Audio Port Mixing Typedefs and Enumerations
* Typedefs and enumerations that are used for setting up the audio mixer
* within the Stereo DAC.
*/
/*@{*/
/*!
* @enum PMIC_AUDIO_STDAC_TIMESLOTS
* @brief Select the timeslots used to transmit the left and right audio
* channels to the Stereo DAC.
*
* This enumeration is used to select the timeslots used to transmit the
* data corresponding to the left and right audio channels to the Stereo
* DAC.
*/
typedef enum
{
USE_TS0_TS1, /*!< Use timeslots 0 and 1 for left and
right channels, respectively. */
USE_TS2_TS3, /*!< Use timeslots 2 and 3 for left and
right channels, respectively
<b>(MC13783-only)</b>. */
USE_TS4_TS5, /*!< Use timeslots 4 and 5 for left and
right channels, respectively
<b>(MC13783-only)</b>. */
USE_TS6_TS7 /*!< Use timeslots 6 and 7 for left and
right channels, respectively
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_STDAC_TIMESLOTS;
/*!
* @enum PMIC_AUDIO_STDAC_MIX_IN_GAIN
* @brief Select the secondary channel input gain for the Stereo DAC mixer.
*
* This enumeration is used to select the secondary channel input gain for
* the Stereo DAC mixer.
*/
typedef enum
{
STDAC_NO_MIX, /*!< No mixing, keep separate left
and right audio channels. */
STDAC_MIX_IN_0DB, /*!< Mix left and right audio channels
together with 0dB secondary
channel gain. */
STDAC_MIX_IN_MINUS_6DB, /*!< Mix left and right audio channels
together with -6dB secondary
channel gain. */
STDAC_MIX_IN_MINUS_12DB /*!< Mix left and right audio channels
together with -12dB secondary
channel gain
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_STDAC_MIX_IN_GAIN;
/*!
* @enum PMIC_AUDIO_STDAC_MIX_OUT_GAIN
* @brief Select the output gain for the Stereo DAC mixer.
*
* This enumeration is used to select the output gain for the Stereo DAC
* mixer.
*/
typedef enum
{
STDAC_MIX_OUT_0DB, /*!< Select 0dB mixer output gain. */
STDAC_MIX_OUT_MINUS_6DB, /*!< Select -6dB mixer output gain
<b>(MC13783-only)</b>. */
} PMIC_AUDIO_STDAC_MIX_OUT_GAIN;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -