arduino-audio-driver
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Enumerations | Functions
TLV320AIC3110.h File Reference

Header only C++ driver for the Texas Instruments TLV320AIC3110 audio codec. More...

#include <cstddef>
#include "Codecs/ZephyrDriverCommon.h"

Go to the source code of this file.

Classes

struct  TLV320AIC3110::RateDivs
 PLL/clock divider settings for a given MCLK/sample-rate combination. More...
 
class  TLV320AIC3110
 Header only C++ driver for the TLV320AIC3110 audio codec. More...
 

Namespaces

namespace  audio_driver
 Namespace for audio driver components.
 
namespace  audio_driver::tlv320aic3110_detail
 

Typedefs

using RegAddr = uint16_t
 

Enumerations

enum  AIC3110AdcProcBlock { AIC3110_PRB_R4_DECIMATION_A = 4 , AIC3110_PRB_R10_DECIMATION_B = 10 , AIC3110_PRB_R16_DECIMATION_C = 16 }
 ADC decimation filter / processing block selection. More...
 
enum class  AIC3110Channel {
  HeadphoneLeft , HeadphoneRight , FrontLeft , FrontRight ,
  All
}
 Logical audio channels. More...
 
enum  AIC3110CmVoltage { AIC3110_CM_VOLTAGE_1P35 = 0 , AIC3110_CM_VOLTAGE_1P5 = 1 , AIC3110_CM_VOLTAGE_1P65 = 2 , AIC3110_CM_VOLTAGE_1P8 = 3 }
 Headphone/Speaker common mode output voltage. More...
 
enum  AIC3110DacProcBlock { AIC3110_PRB_P1_DECIMATION_A = 1 , AIC3110_PRB_P7_DECIMATION_B = 7 , AIC3110_PRB_P17_DECIMATION_C = 17 }
 DAC decimation filter / processing block selection. More...
 

Functions

constexpr RegAddr regAddr (uint8_t page, uint8_t reg)
 
constexpr uint8_t regAddrPage (RegAddr addr)
 
constexpr uint8_t regAddrReg (RegAddr addr)
 

Detailed Description

Header only C++ driver for the Texas Instruments TLV320AIC3110 audio codec.

Ported from the Zephyr RTOS driver (drivers/audio/tlv320aic3110.c / tlv320aic3110.h, Copyright (c) 2025 PHYTEC America LLC, Apache-2.0).