Macros | Functions | Variables
stm32f407/stm32f407g-disc1/Drivers/BSP/Components/cs43l22/cs43l22.h File Reference

This file contains all the functions prototypes for the cs43l22.c driver. More...

#include "../Common/audio.h"
Include dependency graph for stm32f407/stm32f407g-disc1/Drivers/BSP/Components/cs43l22/cs43l22.h:
This graph shows which files directly or indirectly include this file:

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 CS43L22_CHIPID_ADDR   0x01
 Chip ID Register: Chip I.D. and Revision Register Read only register Default value: 0x01 [7:3] CHIPID[4:0]: I.D. code for the CS43L22. Default value: 11100b [2:0] REVID[2:0]: CS43L22 revision level. Default value: 000 - Rev A0 001 - Rev A1 010 - Rev B0 011 - Rev B1. More...
 
#define CS43L22_ID   0xE0
 CS43L22 ID
More...
 
#define CS43L22_ID_MASK   0xF8
 
#define CS43L22_REG_ANALOG_ZC_SR_SETT   0x0A
 
#define CS43L22_REG_BATT_COMPENSATION   0x2F
 
#define CS43L22_REG_BEEP_FREQ_ON_TIME   0x1C
 
#define CS43L22_REG_BEEP_TONE_CFG   0x1E
 
#define CS43L22_REG_BEEP_VOL_OFF_TIME   0x1D
 
#define CS43L22_REG_CH_MIXER_SWAP   0x26
 
#define CS43L22_REG_CHARGE_PUMP_FREQ   0x34
 
#define CS43L22_REG_CLOCKING_CTL   0x05
 
#define CS43L22_REG_HEADPHONE_A_VOL   0x22
 
#define CS43L22_REG_HEADPHONE_B_VOL   0x23
 
#define CS43L22_REG_ID   0x01
 
#define CS43L22_REG_INTERFACE_CTL1   0x06
 
#define CS43L22_REG_INTERFACE_CTL2   0x07
 
#define CS43L22_REG_LIMIT_ATTACK_RATE   0x29
 
#define CS43L22_REG_LIMIT_CTL1   0x27
 
#define CS43L22_REG_LIMIT_CTL2   0x28
 
#define CS43L22_REG_MASTER_A_VOL   0x20
 
#define CS43L22_REG_MASTER_B_VOL   0x21
 
#define CS43L22_REG_MISC_CTL   0x0E
 
#define CS43L22_REG_OVF_CLK_STATUS   0x2E
 
#define CS43L22_REG_PASSTHR_A_SELECT   0x08
 
#define CS43L22_REG_PASSTHR_A_VOL   0x14
 
#define CS43L22_REG_PASSTHR_B_SELECT   0x09
 
#define CS43L22_REG_PASSTHR_B_VOL   0x15
 
#define CS43L22_REG_PASSTHR_GANG_CTL   0x0C
 
#define CS43L22_REG_PCMA_VOL   0x1A
 
#define CS43L22_REG_PCMB_VOL   0x1B
 
#define CS43L22_REG_PLAYBACK_CTL1   0x0D
 
#define CS43L22_REG_PLAYBACK_CTL2   0x0F
 
#define CS43L22_REG_POWER_CTL1   0x02
 
#define CS43L22_REG_POWER_CTL2   0x04
 
#define CS43L22_REG_SPEAKER_A_VOL   0x24
 
#define CS43L22_REG_SPEAKER_B_VOL   0x25
 
#define CS43L22_REG_SPEAKER_STATUS   0x31
 
#define CS43L22_REG_TEMPMONITOR_CTL   0x32
 
#define CS43L22_REG_THERMAL_FOLDBACK   0x33
 
#define CS43L22_REG_TONE_CTL   0x1F
 
#define CS43L22_REG_VP_BATTERY_LEVEL   0x30
 
#define DEFAULT_VOLMAX   0xFF
 
#define DEFAULT_VOLMIN   0x00
 
#define DEFAULT_VOLSTEP   0x04
 
#define OUTPUT_DEVICE_AUTO   4
 
#define OUTPUT_DEVICE_BOTH   3
 
#define OUTPUT_DEVICE_HEADPHONE   2
 
#define OUTPUT_DEVICE_SPEAKER   1
 

Functions

void AUDIO_IO_DeInit (void)
 DeInitializes Audio low level. More...
 
void AUDIO_IO_Init (void)
 Initializes Audio low level. More...
 
uint8_t AUDIO_IO_Read (uint8_t Addr, uint8_t Reg)
 Reads a single data. More...
 
void AUDIO_IO_Write (uint8_t Addr, uint8_t Reg, uint8_t Value)
 Writes a single data. More...
 
void cs43l22_DeInit (void)
 Deinitializes the audio codec. More...
 
uint32_t cs43l22_Init (uint16_t DeviceAddr, uint16_t OutputDevice, uint8_t Volume, uint32_t AudioFreq)
 Initializes the audio codec and the control interface. More...
 
uint32_t cs43l22_Pause (uint16_t DeviceAddr)
 Pauses playing on the audio codec. More...
 
uint32_t cs43l22_Play (uint16_t DeviceAddr, uint16_t *pBuffer, uint16_t Size)
 Start the audio Codec play feature. More...
 
uint32_t cs43l22_ReadID (uint16_t DeviceAddr)
 Get the CS43L22 ID. More...
 
uint32_t cs43l22_Reset (uint16_t DeviceAddr)
 Resets cs43l22 registers. More...
 
uint32_t cs43l22_Resume (uint16_t DeviceAddr)
 Resumes playing on the audio codec. More...
 
uint32_t cs43l22_SetFrequency (uint16_t DeviceAddr, uint32_t AudioFreq)
 Sets new frequency. More...
 
uint32_t cs43l22_SetMute (uint16_t DeviceAddr, uint32_t Cmd)
 Enables or disables the mute feature on the audio codec. More...
 
uint32_t cs43l22_SetOutputMode (uint16_t DeviceAddr, uint8_t Output)
 Switch dynamically (while audio file is played) the output target (speaker or headphone). More...
 
uint32_t cs43l22_SetVolume (uint16_t DeviceAddr, uint8_t Volume)
 Sets higher or lower the codec volume level. More...
 
uint32_t cs43l22_Stop (uint16_t DeviceAddr, uint32_t Cmd)
 Stops audio Codec playing. It powers down the codec. More...
 

Variables

AUDIO_DrvTypeDef cs43l22_drv
 

Detailed Description

This file contains all the functions prototypes for the cs43l22.c driver.

Author
MCD Application Team
Attention

© COPYRIGHT(c) 2015 STMicroelectronics

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

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 stm32f407/stm32f407g-disc1/Drivers/BSP/Components/cs43l22/cs43l22.h.



picovoice_driver
Author(s):
autogenerated on Fri Apr 1 2022 02:14:56