Functions | |
void | AUDIO_IO_DeInit (void) |
DeInitializes Audio low level. More... | |
void | AUDIO_IO_Delay (uint32_t Delay) |
AUDIO Codec delay. More... | |
void | AUDIO_IO_Init (void) |
Initializes Audio low level. More... | |
void | wm8994_DeInit (void) |
Deinitializes the audio codec. More... | |
int32_t | WM8994_DeInit (WM8994_Object_t *pObj) |
Deinitializes the audio codec. More... | |
static int32_t | WM8994_Delay (WM8994_Object_t *pObj, uint32_t Delay) |
This function provides accurate delay (in milliseconds) More... | |
int32_t | WM8994_GetFrequency (WM8994_Object_t *pObj, uint32_t *AudioFreq) |
Get frequency. More... | |
int32_t | WM8994_GetProtocol (WM8994_Object_t *pObj, uint32_t *Protocol) |
Get Audio Protocol. More... | |
int32_t | WM8994_GetResolution (WM8994_Object_t *pObj, uint32_t *Resolution) |
Get Audio resolution. More... | |
int32_t | WM8994_GetVolume (WM8994_Object_t *pObj, uint32_t InputOutput, uint8_t *Volume) |
Get higher or lower the codec volume level. More... | |
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... | |
int32_t | WM8994_Init (WM8994_Object_t *pObj, WM8994_Init_t *pInit) |
Initializes the audio codec and the control interface. More... | |
uint32_t | wm8994_Pause (uint16_t DeviceAddr) |
Pauses playing on the audio codec. More... | |
int32_t | WM8994_Pause (WM8994_Object_t *pObj) |
Pauses playing on the audio codec. More... | |
uint32_t | wm8994_Play (uint16_t DeviceAddr, uint16_t *pBuffer, uint16_t Size) |
Start the audio Codec play feature. More... | |
int32_t | WM8994_Play (WM8994_Object_t *pObj) |
Start the audio Codec play feature. More... | |
uint32_t | wm8994_ReadID (uint16_t DeviceAddr) |
Get the WM8994 ID. More... | |
int32_t | WM8994_ReadID (WM8994_Object_t *pObj, uint32_t *Id) |
Get the WM8994 ID. More... | |
static int32_t | WM8994_ReadRegWrap (void *handle, uint16_t Reg, uint8_t *pData, uint16_t Length) |
Function. More... | |
int32_t | WM8994_RegisterBusIO (WM8994_Object_t *pObj, WM8994_IO_t *pIO) |
Function. More... | |
uint32_t | wm8994_Reset (uint16_t DeviceAddr) |
Resets wm8994 registers. More... | |
int32_t | WM8994_Reset (WM8994_Object_t *pObj) |
Resets wm8994 registers. More... | |
uint32_t | wm8994_Resume (uint16_t DeviceAddr) |
Resumes playing on the audio codec. More... | |
int32_t | WM8994_Resume (WM8994_Object_t *pObj) |
Resumes playing on the audio codec. More... | |
uint32_t | wm8994_SetFrequency (uint16_t DeviceAddr, uint32_t AudioFreq) |
Sets new frequency. More... | |
int32_t | WM8994_SetFrequency (WM8994_Object_t *pObj, uint32_t AudioFreq) |
Sets new frequency. More... | |
uint32_t | wm8994_SetMute (uint16_t DeviceAddr, uint32_t Cmd) |
Enables or disables the mute feature on the audio codec. More... | |
int32_t | WM8994_SetMute (WM8994_Object_t *pObj, 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... | |
int32_t | WM8994_SetOutputMode (WM8994_Object_t *pObj, uint32_t Output) |
Switch dynamically (while audio file is played) the output target (speaker or headphone). More... | |
int32_t | WM8994_SetProtocol (WM8994_Object_t *pObj, uint32_t Protocol) |
Set Audio Protocol. More... | |
int32_t | WM8994_SetResolution (WM8994_Object_t *pObj, uint32_t Resolution) |
Set Audio resolution. More... | |
uint32_t | wm8994_SetVolume (uint16_t DeviceAddr, uint8_t Volume) |
Sets higher or lower the codec volume level. More... | |
int32_t | WM8994_SetVolume (WM8994_Object_t *pObj, uint32_t InputOutput, uint8_t Volume) |
Set higher or lower the codec volume level. More... | |
uint32_t | wm8994_Stop (uint16_t DeviceAddr, uint32_t Cmd) |
Stops audio Codec playing. It powers down the codec. More... | |
int32_t | WM8994_Stop (WM8994_Object_t *pObj, uint32_t CodecPdwnMode) |
Stops audio Codec playing. It powers down the codec. More... | |
static int32_t | WM8994_WriteRegWrap (void *handle, uint16_t Reg, uint8_t *pData, uint16_t Length) |
Function. More... | |
Variables | |
AUDIO_DrvTypeDef | wm8994_drv |
void AUDIO_IO_DeInit | ( | void | ) |
DeInitializes Audio low level.
Definition at line 658 of file stm32f4_discovery.c.
void AUDIO_IO_Delay | ( | uint32_t | Delay | ) |
AUDIO Codec delay.
Delay | Delay in ms |
Definition at line 783 of file stm32469i_discovery.c.
void AUDIO_IO_Init | ( | void | ) |
Initializes Audio low level.
Definition at line 626 of file stm32f4_discovery.c.
void wm8994_DeInit | ( | void | ) |
Deinitializes the audio codec.
None |
None |
Definition at line 638 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_DeInit | ( | WM8994_Object_t * | pObj | ) |
Deinitializes the audio codec.
pObj | pointer to component object |
Component | status |
Definition at line 611 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
|
static |
This function provides accurate delay (in milliseconds)
pObj | pointer to component object |
Delay | specifies the delay time length, in milliseconds |
Component | status |
Definition at line 1367 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_GetFrequency | ( | WM8994_Object_t * | pObj, |
uint32_t * | AudioFreq | ||
) |
Get frequency.
pObj | pointer to component object |
AudioFreq | Audio frequency |
Component | status |
Definition at line 1258 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_GetProtocol | ( | WM8994_Object_t * | pObj, |
uint32_t * | Protocol | ||
) |
Get Audio Protocol.
pObj | pointer to component object |
Component | status |
Definition at line 1169 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_GetResolution | ( | WM8994_Object_t * | pObj, |
uint32_t * | Resolution | ||
) |
Get Audio resolution.
pObj | pointer to component object |
Audio | resolution |
Definition at line 1110 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_GetVolume | ( | WM8994_Object_t * | pObj, |
uint32_t | InputOutput, | ||
uint8_t * | Volume | ||
) |
Get higher or lower the codec volume level.
pObj | pointer to component object |
InputOutput | Input or Output volume |
Volume | audio volume |
Component | status |
Definition at line 838 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/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.
DeviceAddr | Device address on communication Bus. |
OutputInputDevice | can 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. |
Volume | Initial volume level (from 0 (Mute) to 100 (Max)) |
AudioFreq | Audio Frequency |
0 | if correct communication, else wrong communication |
Definition at line 137 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Init | ( | WM8994_Object_t * | pObj, |
WM8994_Init_t * | pInit | ||
) |
Initializes the audio codec and the control interface.
pObj | pointer to component object |
pInit | pointer de component init structure |
0 | if correct communication, else wrong communication |
Definition at line 88 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_Pause | ( | uint16_t | DeviceAddr | ) |
Pauses playing on the audio codec.
DeviceAddr | Device address on communication Bus. |
0 | if correct communication, else wrong communication |
Definition at line 679 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Pause | ( | WM8994_Object_t * | pObj | ) |
Pauses playing on the audio codec.
pObj | pointer to component object |
Component | status |
Definition at line 656 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_Play | ( | uint16_t | DeviceAddr, |
uint16_t * | pBuffer, | ||
uint16_t | Size | ||
) |
Start the audio Codec play feature.
DeviceAddr | Device address on communication Bus. |
0 | if correct communication, else wrong communication |
Definition at line 663 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Play | ( | WM8994_Object_t * | pObj | ) |
Start the audio Codec play feature.
pObj | pointer to component object |
Component | status |
Definition at line 644 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_ReadID | ( | uint16_t | DeviceAddr | ) |
Get the WM8994 ID.
DeviceAddr | Device address on communication Bus. |
The | WM8994 ID |
Definition at line 649 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_ReadID | ( | WM8994_Object_t * | pObj, |
uint32_t * | Id | ||
) |
Get the WM8994 ID.
pObj | pointer to component object |
Id | component ID |
Component | status |
Definition at line 623 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
|
static |
Function.
handle | Component object handle |
Reg | The target register address to write |
pData | The target register value to be written |
Length | buffer size to be written |
error | status |
Definition at line 1386 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_RegisterBusIO | ( | WM8994_Object_t * | pObj, |
WM8994_IO_t * | pIO | ||
) |
Function.
Component | object pointer |
error | status |
Definition at line 1327 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_Reset | ( | uint16_t | DeviceAddr | ) |
Resets wm8994 registers.
DeviceAddr | Device address on communication Bus. |
0 | if correct communication, else wrong communication |
Definition at line 1026 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Reset | ( | WM8994_Object_t * | pObj | ) |
Resets wm8994 registers.
pObj | pointer to component object |
Component | status if correct communication, else wrong communication |
Definition at line 1308 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_Resume | ( | uint16_t | DeviceAddr | ) |
Resumes playing on the audio codec.
DeviceAddr | Device address on communication Bus. |
0 | if correct communication, else wrong communication |
Definition at line 698 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Resume | ( | WM8994_Object_t * | pObj | ) |
Resumes playing on the audio codec.
pObj | pointer to component object |
Component | status |
Definition at line 684 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_SetFrequency | ( | uint16_t | DeviceAddr, |
uint32_t | AudioFreq | ||
) |
Sets new frequency.
DeviceAddr | Device address on communication Bus. |
AudioFreq | Audio frequency used to play the audio stream. |
0 | if correct communication, else wrong communication |
Definition at line 966 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetFrequency | ( | WM8994_Object_t * | pObj, |
uint32_t | AudioFreq | ||
) |
Sets new frequency.
pObj | pointer to component object |
AudioFreq | Audio frequency |
Component | status |
Definition at line 1192 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_SetMute | ( | uint16_t | DeviceAddr, |
uint32_t | Cmd | ||
) |
Enables or disables the mute feature on the audio codec.
DeviceAddr | Device address on communication Bus. |
Cmd | AUDIO_MUTE_ON to enable the mute or AUDIO_MUTE_OFF to disable the mute mode. |
0 | if correct communication, else wrong communication |
Definition at line 844 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetMute | ( | WM8994_Object_t * | pObj, |
uint32_t | Cmd | ||
) |
Enables or disables the mute feature on the audio codec.
pObj | pointer to component object |
Cmd | WM8994_MUTE_ON to enable the mute or WM8994_MUTE_OFF to disable the mute mode. |
0 | if correct communication, else wrong communication |
Definition at line 877 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/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).
DeviceAddr | Device address on communication Bus. |
Output | specifies the audio output target: OUTPUT_DEVICE_SPEAKER, OUTPUT_DEVICE_HEADPHONE, OUTPUT_DEVICE_BOTH or OUTPUT_DEVICE_AUTO |
0 | if correct communication, else wrong communication |
Definition at line 879 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetOutputMode | ( | WM8994_Object_t * | pObj, |
uint32_t | Output | ||
) |
Switch dynamically (while audio file is played) the output target (speaker or headphone).
pObj | pointer to component object |
Output | specifies the audio output target: WM8994_OUT_SPEAKER, WM8994_OUT_HEADPHONE, WM8994_OUT_BOTH or WM8994_OUT_AUTO |
0 | if correct communication, else wrong communication |
Definition at line 918 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetProtocol | ( | WM8994_Object_t * | pObj, |
uint32_t | Protocol | ||
) |
Set Audio Protocol.
pObj | pointer to component object |
Protocol | Audio Protocol. Can be: WM8994_PROTOCOL_R_JUSTIFIED, WM8994_PROTOCOL_L_JUSTIFIED, WM8994_PROTOCOL_I2S or WM8994_PROTOCOL_DSP |
Component | status |
Definition at line 1152 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetResolution | ( | WM8994_Object_t * | pObj, |
uint32_t | Resolution | ||
) |
Set Audio resolution.
pObj | pointer to component object |
Resolution | Audio resolution. Can be: WM8994_RESOLUTION_16b, WM8994_RESOLUTION_20b, WM8994_RESOLUTION_24b or WM8994_RESOLUTION_32b |
Component | status |
Definition at line 1093 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_SetVolume | ( | uint16_t | DeviceAddr, |
uint8_t | Volume | ||
) |
Sets higher or lower the codec volume level.
DeviceAddr | Device address on communication Bus. |
Volume | a byte value from 0 to 255 (refer to codec registers description for more details). |
0 | if correct communication, else wrong communication |
Definition at line 768 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_SetVolume | ( | WM8994_Object_t * | pObj, |
uint32_t | InputOutput, | ||
uint8_t | Volume | ||
) |
Set higher or lower the codec volume level.
pObj | pointer to component object |
InputOutput | Input or Output volume |
Volume | a byte value from 0 to 63 for output and from 0 to 240 for input (refer to codec registers description for more details). |
Component | status |
Definition at line 755 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
uint32_t wm8994_Stop | ( | uint16_t | DeviceAddr, |
uint32_t | CodecPdwnMode | ||
) |
Stops audio Codec playing. It powers down the codec.
DeviceAddr | Device address on communication Bus. |
CodecPdwnMode | selects the power down mode.
|
0 | if correct communication, else wrong communication |
Definition at line 722 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.
int32_t WM8994_Stop | ( | WM8994_Object_t * | pObj, |
uint32_t | CodecPdwnMode | ||
) |
Stops audio Codec playing. It powers down the codec.
pObj | pointer to component object |
CodecPdwnMode | selects the power down mode.
|
0 | if correct communication, else wrong communication |
Definition at line 704 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
|
static |
Function.
handle | Component object handle |
Reg | The target register address to write |
pData | The target register value to be written |
Length | buffer size to be written |
error | status |
Definition at line 1401 of file stm32h747/stm32h747i-disco/CM7/Drivers/BSP/Components/wm8994/wm8994.c.
AUDIO_DrvTypeDef wm8994_drv |
Definition at line 86 of file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.c.