STM32F769IDiscovery  1.00
uDANTE Audio Networking with STM32F7 DISCO board
Functions | Variables
WM8994_Exported_Functions

Functions

uint32_t wm8994_Init (uint16_t DeviceAddr, uint16_t OutputInputDevice, uint8_t Volume, uint32_t AudioFreq)
 Initializes the audio codec and the control interface. More...
 
void wm8994_DeInit (void)
 Deinitializes the audio codec. More...
 
uint32_t wm8994_ReadID (uint16_t DeviceAddr)
 Get the WM8994 ID. More...
 
uint32_t wm8994_Play (uint16_t DeviceAddr, uint16_t *pBuffer, uint16_t Size)
 Start the audio Codec play feature. More...
 
uint32_t wm8994_Pause (uint16_t DeviceAddr)
 Pauses playing on the audio codec. More...
 
uint32_t wm8994_Resume (uint16_t DeviceAddr)
 Resumes playing on the audio codec. More...
 
uint32_t wm8994_Stop (uint16_t DeviceAddr, uint32_t Cmd)
 Stops audio Codec playing. It powers down the codec. More...
 
uint32_t wm8994_SetVolume (uint16_t DeviceAddr, uint8_t Volume)
 Sets higher or lower the codec volume level. More...
 
uint32_t wm8994_SetMute (uint16_t DeviceAddr, uint32_t Cmd)
 Enables or disables the mute feature on the audio codec. More...
 
uint32_t wm8994_SetOutputMode (uint16_t DeviceAddr, uint8_t Output)
 Switch dynamically (while audio file is played) the output target (speaker or headphone). More...
 
uint32_t wm8994_SetFrequency (uint16_t DeviceAddr, uint32_t AudioFreq)
 Sets new frequency. More...
 
uint32_t wm8994_Reset (uint16_t DeviceAddr)
 Resets wm8994 registers. More...
 
void AUDIO_IO_Init (void)
 Initializes Audio low level. More...
 
void AUDIO_IO_DeInit (void)
 DeInitializes Audio low level. More...
 

Variables

AUDIO_DrvTypeDef wm8994_drv
 

Detailed Description

Function Documentation

void AUDIO_IO_DeInit ( void  )

DeInitializes Audio low level.

Definition at line 558 of file stm32f769i_discovery.c.

void AUDIO_IO_Init ( void  )

Initializes Audio low level.

Definition at line 550 of file stm32f769i_discovery.c.

void wm8994_DeInit ( void  )

Deinitializes the audio codec.

Parameters
None
Return values
None

Definition at line 629 of file wm8994.c.

uint32_t wm8994_Init ( uint16_t  DeviceAddr,
uint16_t  OutputInputDevice,
uint8_t  Volume,
uint32_t  AudioFreq 
)

Initializes the audio codec and the control interface.

Parameters
DeviceAddrDevice address on communication Bus.
OutputInputDevicecan be OUTPUT_DEVICE_SPEAKER, OUTPUT_DEVICE_HEADPHONE, OUTPUT_DEVICE_BOTH, OUTPUT_DEVICE_AUTO, INPUT_DEVICE_DIGITAL_MICROPHONE_1, INPUT_DEVICE_DIGITAL_MICROPHONE_2, INPUT_DEVICE_DIGITAL_MIC1_MIC2, INPUT_DEVICE_INPUT_LINE_1 or INPUT_DEVICE_INPUT_LINE_2.
VolumeInitial volume level (from 0 (Mute) to 100 (Max))
AudioFreqAudio Frequency
Return values
0if correct communication, else wrong communication

Definition at line 136 of file wm8994.c.

uint32_t wm8994_Pause ( uint16_t  DeviceAddr)

Pauses playing on the audio codec.

Parameters
DeviceAddrDevice address on communication Bus.
Return values
0if correct communication, else wrong communication

Definition at line 670 of file wm8994.c.

uint32_t wm8994_Play ( uint16_t  DeviceAddr,
uint16_t *  pBuffer,
uint16_t  Size 
)

Start the audio Codec play feature.

Note
For this codec no Play options are required.
Parameters
DeviceAddrDevice address on communication Bus.
Return values
0if correct communication, else wrong communication

Definition at line 654 of file wm8994.c.

uint32_t wm8994_ReadID ( uint16_t  DeviceAddr)

Get the WM8994 ID.

Parameters
DeviceAddrDevice address on communication Bus.
Return values
TheWM8994 ID

Definition at line 640 of file wm8994.c.

uint32_t wm8994_Reset ( uint16_t  DeviceAddr)

Resets wm8994 registers.

Parameters
DeviceAddrDevice address on communication Bus.
Return values
0if correct communication, else wrong communication

Definition at line 1012 of file wm8994.c.

uint32_t wm8994_Resume ( uint16_t  DeviceAddr)

Resumes playing on the audio codec.

Parameters
DeviceAddrDevice address on communication Bus.
Return values
0if correct communication, else wrong communication

Definition at line 689 of file wm8994.c.

uint32_t wm8994_SetFrequency ( uint16_t  DeviceAddr,
uint32_t  AudioFreq 
)

Sets new frequency.

Parameters
DeviceAddrDevice address on communication Bus.
AudioFreqAudio frequency used to play the audio stream.
Return values
0if correct communication, else wrong communication

Definition at line 957 of file wm8994.c.

uint32_t wm8994_SetMute ( uint16_t  DeviceAddr,
uint32_t  Cmd 
)

Enables or disables the mute feature on the audio codec.

Parameters
DeviceAddrDevice address on communication Bus.
CmdAUDIO_MUTE_ON to enable the mute or AUDIO_MUTE_OFF to disable the mute mode.
Return values
0if correct communication, else wrong communication

Definition at line 835 of file wm8994.c.

uint32_t wm8994_SetOutputMode ( uint16_t  DeviceAddr,
uint8_t  Output 
)

Switch dynamically (while audio file is played) the output target (speaker or headphone).

Parameters
DeviceAddrDevice address on communication Bus.
Outputspecifies the audio output target: OUTPUT_DEVICE_SPEAKER, OUTPUT_DEVICE_HEADPHONE, OUTPUT_DEVICE_BOTH or OUTPUT_DEVICE_AUTO
Return values
0if correct communication, else wrong communication

Definition at line 870 of file wm8994.c.

uint32_t wm8994_SetVolume ( uint16_t  DeviceAddr,
uint8_t  Volume 
)

Sets higher or lower the codec volume level.

Parameters
DeviceAddrDevice address on communication Bus.
Volumea byte value from 0 to 255 (refer to codec registers description for more details).
Return values
0if correct communication, else wrong communication

Definition at line 759 of file wm8994.c.

uint32_t wm8994_Stop ( uint16_t  DeviceAddr,
uint32_t  CodecPdwnMode 
)

Stops audio Codec playing. It powers down the codec.

Parameters
DeviceAddrDevice address on communication Bus.
CodecPdwnModeselects the power down mode.
  • CODEC_PDWN_SW: only mutes the audio codec. When resuming from this mode the codec keeps the previous initialization (no need to re-Initialize the codec registers).
  • CODEC_PDWN_HW: Physically power down the codec. When resuming from this mode, the codec is set to default configuration (user should re-Initialize the codec in order to play again the audio stream).
Return values
0if correct communication, else wrong communication

Definition at line 713 of file wm8994.c.

Variable Documentation

AUDIO_DrvTypeDef wm8994_drv

Definition at line 88 of file wm8994.c.