This file contains all the functions prototypes for the wm8994.c driver. More...
#include "../Common/audio.h"
Go to the source code of this file.
Macros | |
#define | AUDIO_FREQUENCY_11K ((uint32_t)11025) |
#define | AUDIO_FREQUENCY_16K ((uint32_t)16000) |
#define | AUDIO_FREQUENCY_192K ((uint32_t)192000) |
#define | AUDIO_FREQUENCY_22K ((uint32_t)22050) |
#define | AUDIO_FREQUENCY_32K ((uint32_t)32000) |
#define | AUDIO_FREQUENCY_44K ((uint32_t)44100) |
#define | AUDIO_FREQUENCY_48K ((uint32_t)48000) |
#define | AUDIO_FREQUENCY_8K ((uint32_t)8000) |
#define | AUDIO_FREQUENCY_96K ((uint32_t)96000) |
#define | AUDIO_MUTE_OFF 0 |
#define | AUDIO_MUTE_ON 1 |
#define | AUDIO_PAUSE 0 |
#define | AUDIO_RESUME 1 |
#define | CODEC_PDWN_HW 1 |
#define | CODEC_PDWN_SW 2 |
#define | DEFAULT_VOLMAX 0xFF |
#define | DEFAULT_VOLMIN 0x00 |
#define | DEFAULT_VOLSTEP 0x04 |
#define | INPUT_DEVICE_DIGITAL_MIC1_MIC2 ((uint16_t)0x0800) |
#define | INPUT_DEVICE_DIGITAL_MICROPHONE_1 ((uint16_t)0x0100) |
#define | INPUT_DEVICE_DIGITAL_MICROPHONE_2 ((uint16_t)0x0200) |
#define | INPUT_DEVICE_INPUT_LINE_1 ((uint16_t)0x0300) |
#define | INPUT_DEVICE_INPUT_LINE_2 ((uint16_t)0x0400) |
#define | OUTPUT_DEVICE_AUTO ((uint16_t)0x0004) |
#define | OUTPUT_DEVICE_BOTH ((uint16_t)0x0003) |
#define | OUTPUT_DEVICE_HEADPHONE ((uint16_t)0x0002) |
#define | OUTPUT_DEVICE_SPEAKER ((uint16_t)0x0001) |
#define | VOLUME_CONVERT(Volume) (((Volume) > 100)? 100:((uint8_t)(((Volume) * 63) / 100))) |
#define | VOLUME_IN_CONVERT(Volume) (((Volume) >= 100)? 239:((uint8_t)(((Volume) * 240) / 100))) |
#define | WM8994_CHIPID_ADDR 0x00 |
Device ID Register: Reading from this register will indicate device family ID 8994h. More... | |
#define | WM8994_ID 0x8994 |
WM8994 ID More... | |
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... | |
uint8_t | AUDIO_IO_Read (uint8_t Addr, uint16_t Reg) |
Reads a single data. More... | |
void | AUDIO_IO_Write (uint8_t Addr, uint16_t Reg, uint16_t Value) |
Writes a single data. More... | |
void | wm8994_DeInit (void) |
Deinitializes the audio codec. 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... | |
uint32_t | wm8994_Pause (uint16_t DeviceAddr) |
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... | |
uint32_t | wm8994_ReadID (uint16_t DeviceAddr) |
Get the WM8994 ID. More... | |
uint32_t | wm8994_Reset (uint16_t DeviceAddr) |
Resets wm8994 registers. More... | |
uint32_t | wm8994_Resume (uint16_t DeviceAddr) |
Resumes playing on the audio codec. More... | |
uint32_t | wm8994_SetFrequency (uint16_t DeviceAddr, 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... | |
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_SetVolume (uint16_t DeviceAddr, uint8_t Volume) |
Sets 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... | |
Variables | |
AUDIO_DrvTypeDef | wm8994_drv |
This file contains all the functions prototypes for the wm8994.c driver.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file stm32f769/stm32f769i-disco/Drivers/BSP/Components/wm8994/wm8994.h.