![]() |
Synergy Software Package User's Manual
|
RTOS-integrated DAC implementation of Audio Playback Interface. More...
Data Structures | |
| struct | sf_audio_playback_hw_dac_instance_ctrl_t |
| struct | sf_audio_playback_hw_dac_cfg_t |
Functions | |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_Open (sf_audio_playback_hw_ctrl_t *const p_api_ctrl, sf_audio_playback_hw_cfg_t const *const p_cfg) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_Start (sf_audio_playback_hw_ctrl_t *const p_api_ctrl) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_Stop (sf_audio_playback_hw_ctrl_t *const p_api_ctrl) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_Play (sf_audio_playback_hw_ctrl_t *const p_api_ctrl, int16_t const *const p_buffer, uint32_t length) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_DataTypeGet (sf_audio_playback_hw_ctrl_t *const p_ctrl, sf_audio_playback_data_type_t *const p_data_type) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_Close (sf_audio_playback_hw_ctrl_t *const p_api_ctrl) |
| ssp_err_t | SF_AUDIO_PLAYBACK_HW_DAC_VersionGet (ssp_version_t *const p_version) |
Variables | |
| sf_audio_playback_hw_api_t | g_sf_audio_playback_hw_on_sf_audio_playback_hw_dac |
RTOS-integrated DAC implementation of Audio Playback Interface.
The Audio Playback Framework DAC implementation uses a timer to generate events at the sampling frequency, and uses these events to transfer PCM samples to the DAC.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_Close | ( | sf_audio_playback_hw_ctrl_t *const | p_api_ctrl | ) |
Close open audio driver.
| SSP_SUCCESS | Successful close. |
| SSP_ERR_ASSERTION | The parameter p_ctrl is NULL. |
Close timer driver.
Close DAC driver.
Close transfer driver.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_DataTypeGet | ( | sf_audio_playback_hw_ctrl_t *const | p_ctrl, |
| sf_audio_playback_data_type_t *const | p_data_type | ||
| ) |
Provides the expected data type in the pointer p_data_type.
| SSP_SUCCESS | Data type stored in p_data_type. |
| SSP_ERR_ASSERTION | The parameter p_ctrl or p_data_type is NULL. |
Store data type. The Synergy DAC supports only 12-bit unsigned data.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_Open | ( | sf_audio_playback_hw_ctrl_t *const | p_api_ctrl, |
| sf_audio_playback_hw_cfg_t const *const | p_cfg | ||
| ) |
Open the DAC audio driver, including the DAC HAL driver and helper timer and transfer HAL drivers.
| SSP_SUCCESS | Configuration of lower level drivers completed successfully. |
| SSP_ERR_ASSERTION | Null Pointer. |
Open Timer driver at selected frequency
If DTC is selected, register the audio callback with the timer ISR. DTC calls activation source ISR when the transfer is complete.
Open DAC module
Open transfer module to transfer from buffer to DAC output register
Configure transfer size of driver depending upon the underlying DAC resolution
Open transfer driver
Store driver data.
Play linear ramp data to get DAC up to half the maximum output.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_Play | ( | sf_audio_playback_hw_ctrl_t *const | p_api_ctrl, |
| int16_t const *const | p_buffer, | ||
| uint32_t | length | ||
| ) |
Play a single audio buffer by input samples to the DAC at the sampling frequency configured by the timer.
| SSP_SUCCESS | Buffer playback began successfully. |
| SSP_ERR_ASSERTION | The parameter p_ctrl or p_buffer is NULL or length is greater than 0x10000UL. |
Reset transfer.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_Start | ( | sf_audio_playback_hw_ctrl_t *const | p_api_ctrl | ) |
Start the DAC and timer HAL drivers.
| SSP_SUCCESS | Audio playback hardware started successfully. |
| SSP_ERR_ASSERTION | The parameter p_ctrl is NULL. |
Start DAC.
Start timer.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_Stop | ( | sf_audio_playback_hw_ctrl_t *const | p_api_ctrl | ) |
Stop the DAC and timer HAL drivers.
| SSP_SUCCESS | Audio playback hardware stopped successfully. |
| SSP_ERR_ASSERTION | The parameter p_ctrl is NULL. |
Stop timer.
Stop DAC.
| ssp_err_t SF_AUDIO_PLAYBACK_HW_DAC_VersionGet | ( | ssp_version_t *const | p_version | ) |
Stores the version of the firmware and API in provided pointer p_version.
| SSP_ERR_ASSERTION | The parameter p_version is NULL. |
| SSP_SUCCESS | Module version successfully stored in p_version. |
| sf_audio_playback_hw_api_t g_sf_audio_playback_hw_on_sf_audio_playback_hw_dac |
Function pointers for DAC implementation of audio playback API.