arduino-audio-driver
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
TAS2563 Class Reference

Header only C++ driver for the TAS2563 mono Class-D smart amplifier. More...

#include <TAS2563.h>

Inheritance diagram for TAS2563:
ZephyrDriverCommon

Public Types

enum  Reg : uint8_t {
  REG_PAGE = 0x00 , REG_SW_RESET = 0x01 , REG_PWR_CTL = 0x02 , REG_PB_CFG1 = 0x03 ,
  REG_MISC_CFG1 = 0x04 , REG_MISC_CFG2 = 0x05 , REG_TDM_CFG0 = 0x06 , REG_TDM_CFG1 = 0x07 ,
  REG_TDM_CFG2 = 0x08 , REG_TDM_CFG3 = 0x09 , REG_TDM_CFG4 = 0x0A , REG_TDM_CFG5 = 0x0B ,
  REG_TDM_CFG6 = 0x0C , REG_TDM_CFG7 = 0x0D , REG_TDM_CFG8 = 0x0E , REG_TDM_CFG9 = 0x0F ,
  REG_TDM_CFG10 = 0x10 , REG_TDM_DET = 0x11 , REG_LIM_CFG0 = 0x12 , REG_LIM_CFG1 = 0x13 ,
  REG_BOP_CFG0 = 0x14 , REG_BOP_CFG1 = 0x15 , REG_INT_MASK0 = 0x1A , REG_INT_MASK1 = 0x1B ,
  REG_INT_MASK2 = 0x1C , REG_INT_MASK3 = 0x1D , REG_INT_LIVE0 = 0x1F , REG_INT_LIVE1 = 0x20 ,
  REG_INT_LIVE2 = 0x21 , REG_INT_LIVE3 = 0x22 , REG_INT_LTCH0 = 0x24 , REG_INT_LTCH1 = 0x25 ,
  REG_INT_LTCH2 = 0x26 , REG_INT_LTCH3 = 0x27 , REG_VBAT_MSB = 0x2A , REG_VBAT_LSB = 0x2B ,
  REG_TEMP = 0x2C , REG_INT_CLK_CFG = 0x30 , REG_DIN_PD = 0x31 , REG_MISC = 0x32 ,
  REG_BOOST_CFG1 = 0x33 , REG_BOOST_CFG2 = 0x34 , REG_BOOST_CFG3 = 0x35 , REG_BST_ILIM_CFG0 = 0x40 ,
  REG_PDM_CONFIG0 = 0x41 , REG_PDM_CONFIG3 = 0x42 , REG_REV_ID = 0x7D , REG_I2C_CKSUM = 0x7E ,
  REG_BOOK = 0x7F
}
 

Public Member Functions

 TAS2563 ()
 
uint8_t address ()
 Provides the actual I2C address of the codec.
 
bool begin (TAS2563SampleRate rate=TAS2563SampleRate::Rate48kHz, uint8_t word_size=16, TAS2563Format format=TAS2563Format::I2S)
 
bool begin (uint32_t sample_rate, uint8_t bits)
 Initialize the codec: software reset, set TDM/I2S format and sample rate, set the default amplifier output level and put the amplifier into shutdown mode (call start() to enable the output).
 
bool begin (uint32_t sample_rate, uint8_t bits, codec_mode_t mode, i2s_format_t fmt, bool is_master, uint8_t channels) override
 Initializes the codec.
 
virtual int getInputVolume ()
 
bool getRevisionId (uint8_t &rev_id)
 Read the chip revision / product ID register.
 
virtual int getVolume ()
 Provides the output volume in % (0...100) that was set with setVolume()
 
i2c_bus_handle_t getWire ()
 Provides the actual I2C communication object.
 
virtual bool isInputVolumeSupported ()
 Returns true if the driver supports setting the input volume, false otherwise. By default we return false, but some drivers (e.g. WM8962) override this to return true.
 
bool selectBook (uint8_t book)
 Set the active register book (only Book 0 is defined by this driver)
 
bool selectPage (uint8_t page)
 Set the active register page (only Page 0 is defined by this driver)
 
virtual bool setActive (codec_mode_t mode)
 
void setAddress (uint8_t addr)
 Defines the I2C address of the codec.
 
bool setAmpLevel (uint8_t level)
 Set the amplifier output level register value directly (see AMP_LEVEL_* constants)
 
virtual bool setDevices (input_device_t input_device, output_device_t output_device)
 
bool setFormat (TAS2563SampleRate rate, uint8_t word_size=16, TAS2563Format format=TAS2563Format::I2S)
 Configure the TDM/I2S digital audio interface: sample rate, word size and frame format.
 
virtual bool setInputVolume (int volume)
 
bool setMute (bool mute) override
 Mute / unmute the amplifier output (Mute power mode vs. Active)
 
bool setVolume (int volume) override
 Set output volume in percent (0..100), mapped to the amplifier level range.
 
void setWire (i2c_bus_handle_t w)
 Defines the I2C communication object.
 
bool softReset ()
 Software reset (TAS2563_SW_RESET register)
 
bool start ()
 Start the amplifier output (PWR_MODE = Active)
 
bool stop ()
 Stop the amplifier output (PWR_MODE = Shutdown)
 

Static Public Attributes

static constexpr uint8_t AMP_LEVEL_10_0DBV = 0x04
 
static constexpr uint8_t AMP_LEVEL_11_0DBV = 0x06
 
static constexpr uint8_t AMP_LEVEL_12_0DBV = 0x08
 
static constexpr uint8_t AMP_LEVEL_13_0DBV = 0x0A
 
static constexpr uint8_t AMP_LEVEL_14_0DBV = 0x0C
 
static constexpr uint8_t AMP_LEVEL_15_0DBV = 0x0E
 
static constexpr uint8_t AMP_LEVEL_16_0DBV = 0x10
 
static constexpr uint8_t AMP_LEVEL_17_0DBV = 0x12
 
static constexpr uint8_t AMP_LEVEL_18_0DBV = 0x14
 
static constexpr uint8_t AMP_LEVEL_19_0DBV = 0x16
 
static constexpr uint8_t AMP_LEVEL_20_0DBV = 0x18
 
static constexpr uint8_t AMP_LEVEL_21_0DBV = 0x1A
 
static constexpr uint8_t AMP_LEVEL_22_0DBV = 0x1C
 
static constexpr uint8_t AMP_LEVEL_8_5DBV = 0x01
 
static constexpr uint8_t AMP_LEVEL_9_0DBV = 0x02
 
static constexpr uint8_t AMP_LEVEL_MASK = 0x3E
 
static constexpr uint8_t AMP_LEVEL_SHIFT = 1
 
static constexpr uint8_t AUTO_RATE = 1U << 4
 
static constexpr uint8_t BOOST_EN = 1U << 5
 
static constexpr uint8_t BOOST_MODE_ALWAYS_OFF = 0x03
 
static constexpr uint8_t BOOST_MODE_ALWAYS_ON = 0x02
 
static constexpr uint8_t BOOST_MODE_CLASS_G = 0x01
 
static constexpr uint8_t BOOST_MODE_CLASS_H = 0x00
 
static constexpr uint8_t BOOST_MODE_MASK = 0xC0
 
static constexpr uint8_t CFG2_CONFIG_MASK = 0x3F
 
static constexpr uint8_t CLASS_D_SYNC = 1U << 6
 
static constexpr uint8_t CLR_INT_LTCH = 1U << 2
 
static constexpr uint8_t DC_BLOCKER_DIS = 1U << 6
 
static constexpr uint8_t DEFAULT_BOOK = 0x00
 
static constexpr uint8_t DEFAULT_PAGE = 0x00
 
static constexpr uint8_t FRAME_START = 1U << 0
 
static constexpr uint8_t I2C_ADDR_DEFAULT = 0x4C
 
static constexpr uint8_t I2C_ADDR_GLOBAL = 0x48
 
static constexpr uint8_t I2C_GLOBAL_EN = 1U << 1
 
static constexpr uint8_t INT_OI = 1U << 1
 
static constexpr uint8_t INT_OTE = 1U << 0
 
static constexpr uint8_t INT_TDMCKE = 1U << 2
 
static constexpr uint8_t IRQ_PIN_CFG_LATCHED = 0x01
 
static constexpr uint8_t IRQ_PIN_CFG_LIVE = 0x00
 
static constexpr uint8_t IRQ_PIN_CFG_MASK = 0x03
 
static constexpr uint8_t IRQ_POL = 1U << 7
 
static constexpr uint8_t ISNS_PD_MASK = 1U << 3
 
static constexpr uint8_t PWR_MODE_MASK = 0x03
 
static constexpr uint8_t RAMP_RATE = 1U << 5
 
static constexpr uint8_t RX_EDGE = 1U << 0
 
static constexpr uint8_t RX_JUSTIFY = 1U << 6
 
static constexpr uint8_t RX_OFFSET_MASK = 0x3E
 
static constexpr uint8_t RX_OFFSET_SHIFT = 1
 
static constexpr uint8_t RX_SCFG_MASK = 0x30
 
static constexpr uint8_t RX_SCFG_MONO_I2C = 0x00
 
static constexpr uint8_t RX_SCFG_MONO_LEFT = 0x01
 
static constexpr uint8_t RX_SCFG_MONO_RIGHT = 0x02
 
static constexpr uint8_t RX_SCFG_SHIFT = 4
 
static constexpr uint8_t RX_SCFG_STEREO_DOWNMIX = 0x03
 
static constexpr uint8_t RX_SLEN_16BITS = 0x00
 
static constexpr uint8_t RX_SLEN_24BITS = 0x01
 
static constexpr uint8_t RX_SLEN_32BITS = 0x02
 
static constexpr uint8_t RX_SLEN_MASK = 0x03
 
static constexpr uint8_t RX_SLOT_LEFT_MASK = 0x0F
 
static constexpr uint8_t RX_SLOT_RIGHT_MASK = 0xF0
 
static constexpr uint8_t RX_WLEN_16BITS = 0x00
 
static constexpr uint8_t RX_WLEN_20BITS = 0x01
 
static constexpr uint8_t RX_WLEN_24BITS = 0x02
 
static constexpr uint8_t RX_WLEN_32BITS = 0x03
 
static constexpr uint8_t RX_WLEN_MASK = 0x0C
 
static constexpr uint8_t RX_WLEN_SHIFT = 2
 
static constexpr uint8_t SAMP_RATE_MASK = 0x0E
 
static constexpr uint8_t SAMP_RATE_SHIFT = 1
 
static constexpr uint8_t SW_RESET_BIT = 1U << 0
 
static constexpr uint8_t TX_EDGE = 1U << 0
 
static constexpr uint8_t TX_FILL = 1U << 4
 
static constexpr uint8_t TX_KEEP_EN = 1U << 5
 
static constexpr uint8_t TX_OFFSET_MASK = 0x0E
 
static constexpr uint8_t VSNS_PD_MASK = 1U << 2
 

Protected Member Functions

bool readReg (uint8_t reg, uint8_t &value)
 Reads a single byte from an 8 bit register address.
 
bool readReg16 (uint8_t reg, uint16_t &value)
 Reads a 16 bit (big endian) value from an 8 bit register address.
 
bool updateReg (uint8_t reg, uint8_t mask, uint8_t value)
 Read-Modify-Write of a single byte register.
 
bool updateReg16 (uint8_t reg, uint16_t mask, uint16_t value)
 Read-Modify-Write of a 16 bit (big endian) register.
 
bool writeReg (uint8_t reg, uint8_t value)
 Writes a single byte to an 8 bit register address.
 
bool writeReg16 (uint8_t reg, uint16_t value)
 Writes a 16 bit (big endian) value to an 8 bit register address.
 

Protected Attributes

uint8_t i2c_addr = 0
 
int input_volume_percent = 100
 Last input volume (in %) provided to setInputVolume()
 
int volume_percent = 100
 Last volume (in %) provided to setVolume()
 
i2c_bus_handle_t wire = nullptr
 

Detailed Description

Header only C++ driver for the TAS2563 mono Class-D smart amplifier.

Provides software reset, TDM/I2S format configuration, amplifier output level (volume) and mute/shutdown control, ported from the corresponding Zephyr RTOS driver.

Member Enumeration Documentation

◆ Reg

enum Reg : uint8_t
Enumerator
REG_PAGE 
REG_SW_RESET 
REG_PWR_CTL 
REG_PB_CFG1 
REG_MISC_CFG1 
REG_MISC_CFG2 
REG_TDM_CFG0 
REG_TDM_CFG1 
REG_TDM_CFG2 
REG_TDM_CFG3 
REG_TDM_CFG4 
REG_TDM_CFG5 
REG_TDM_CFG6 
REG_TDM_CFG7 
REG_TDM_CFG8 
REG_TDM_CFG9 
REG_TDM_CFG10 
REG_TDM_DET 
REG_LIM_CFG0 
REG_LIM_CFG1 
REG_BOP_CFG0 
REG_BOP_CFG1 
REG_INT_MASK0 
REG_INT_MASK1 
REG_INT_MASK2 
REG_INT_MASK3 
REG_INT_LIVE0 
REG_INT_LIVE1 
REG_INT_LIVE2 
REG_INT_LIVE3 
REG_INT_LTCH0 
REG_INT_LTCH1 
REG_INT_LTCH2 
REG_INT_LTCH3 
REG_VBAT_MSB 
REG_VBAT_LSB 
REG_TEMP 
REG_INT_CLK_CFG 
REG_DIN_PD 
REG_MISC 
REG_BOOST_CFG1 
REG_BOOST_CFG2 
REG_BOOST_CFG3 
REG_BST_ILIM_CFG0 
REG_PDM_CONFIG0 
REG_PDM_CONFIG3 
REG_REV_ID 
REG_I2C_CKSUM 
REG_BOOK 

Constructor & Destructor Documentation

◆ TAS2563()

TAS2563 ( )
inline

Member Function Documentation

◆ address()

uint8_t address ( )
inlineinherited

Provides the actual I2C address of the codec.

◆ begin() [1/3]

bool begin ( TAS2563SampleRate  rate = TAS2563SampleRate::Rate48kHz,
uint8_t  word_size = 16,
TAS2563Format  format = TAS2563Format::I2S 
)
inline

◆ begin() [2/3]

bool begin ( uint32_t  sample_rate,
uint8_t  bits 
)
inline

Initialize the codec: software reset, set TDM/I2S format and sample rate, set the default amplifier output level and put the amplifier into shutdown mode (call start() to enable the output).

Parameters
rateI2S sample rate (one of TAS2563SampleRate)
word_sizeI2S word size in bits (16, 20, 24, 32)
formatDigital audio interface format (I2S or left-justified) Initializes the codec for I2S with the given sample rate (in Hz, mapped to the nearest supported TAS2563SampleRate) and bits per sample

◆ begin() [3/3]

bool begin ( uint32_t  sample_rate,
uint8_t  bits,
codec_mode_t  mode,
i2s_format_t  fmt,
bool  is_master,
uint8_t  channels 
)
inlineoverridevirtual

Initializes the codec.

Implements ZephyrDriverCommon.

◆ getInputVolume()

virtual int getInputVolume ( )
inlinevirtualinherited

Provides the input volume in % (0...100) that was set with setInputVolume()

◆ getRevisionId()

bool getRevisionId ( uint8_t &  rev_id)
inline

Read the chip revision / product ID register.

◆ getVolume()

virtual int getVolume ( )
inlinevirtualinherited

Provides the output volume in % (0...100) that was set with setVolume()

◆ getWire()

i2c_bus_handle_t getWire ( )
inlineinherited

Provides the actual I2C communication object.

◆ isInputVolumeSupported()

virtual bool isInputVolumeSupported ( )
inlinevirtualinherited

Returns true if the driver supports setting the input volume, false otherwise. By default we return false, but some drivers (e.g. WM8962) override this to return true.

Reimplemented in DA7212, WM8904, and WM8962.

◆ readReg()

bool readReg ( uint8_t  reg,
uint8_t &  value 
)
inlineprotectedinherited

Reads a single byte from an 8 bit register address.

◆ readReg16()

bool readReg16 ( uint8_t  reg,
uint16_t &  value 
)
inlineprotectedinherited

Reads a 16 bit (big endian) value from an 8 bit register address.

◆ selectBook()

bool selectBook ( uint8_t  book)
inline

Set the active register book (only Book 0 is defined by this driver)

◆ selectPage()

bool selectPage ( uint8_t  page)
inline

Set the active register page (only Page 0 is defined by this driver)

◆ setActive()

virtual bool setActive ( codec_mode_t  mode)
inlinevirtualinherited

Activates/deactivates the playback and/or capture path at runtime (without reconfiguring the codec), based on codec_mode_t (CODEC_MODE_DECODE: playback active, CODEC_MODE_ENCODE: capture active). By default this just mutes/unmutes all outputs depending on CODEC_MODE_DECODE; chip specific subclasses that support muting the input path independently override this to also mute/unmute the capture path depending on CODEC_MODE_ENCODE.

Reimplemented in DA7212, WM8904, and WM8962.

◆ setAddress()

void setAddress ( uint8_t  addr)
inlineinherited

Defines the I2C address of the codec.

◆ setAmpLevel()

bool setAmpLevel ( uint8_t  level)
inline

Set the amplifier output level register value directly (see AMP_LEVEL_* constants)

◆ setDevices()

virtual bool setDevices ( input_device_t  input_device,
output_device_t  output_device 
)
inlinevirtualinherited

Selects the ADC input source / DAC output destination. By default this is a no-op; chip specific subclasses that support input/output routing override this to configure the corresponding registers.

Reimplemented in DA7212, MAX98091, TAS6422DAC, TLV320AIC3110, TLV320DAC310x, WM8904, and WM8962.

◆ setFormat()

bool setFormat ( TAS2563SampleRate  rate,
uint8_t  word_size = 16,
TAS2563Format  format = TAS2563Format::I2S 
)
inline

Configure the TDM/I2S digital audio interface: sample rate, word size and frame format.

◆ setInputVolume()

virtual bool setInputVolume ( int  volume)
inlinevirtualinherited

Defines the input volume in % (0...100). Chip specific subclasses map this to their native input volume range.

Reimplemented in DA7212, WM8904, and WM8962.

◆ setMute()

bool setMute ( bool  mute)
inlineoverridevirtual

Mute / unmute the amplifier output (Mute power mode vs. Active)

Reimplemented from ZephyrDriverCommon.

◆ setVolume()

bool setVolume ( int  volume)
inlineoverridevirtual

Set output volume in percent (0..100), mapped to the amplifier level range.

Reimplemented from ZephyrDriverCommon.

◆ setWire()

void setWire ( i2c_bus_handle_t  w)
inlineinherited

Defines the I2C communication object.

◆ softReset()

bool softReset ( )
inline

Software reset (TAS2563_SW_RESET register)

◆ start()

bool start ( )
inline

Start the amplifier output (PWR_MODE = Active)

◆ stop()

bool stop ( )
inline

Stop the amplifier output (PWR_MODE = Shutdown)

◆ updateReg()

bool updateReg ( uint8_t  reg,
uint8_t  mask,
uint8_t  value 
)
inlineprotectedinherited

Read-Modify-Write of a single byte register.

◆ updateReg16()

bool updateReg16 ( uint8_t  reg,
uint16_t  mask,
uint16_t  value 
)
inlineprotectedinherited

Read-Modify-Write of a 16 bit (big endian) register.

◆ writeReg()

bool writeReg ( uint8_t  reg,
uint8_t  value 
)
inlineprotectedinherited

Writes a single byte to an 8 bit register address.

◆ writeReg16()

bool writeReg16 ( uint8_t  reg,
uint16_t  value 
)
inlineprotectedinherited

Writes a 16 bit (big endian) value to an 8 bit register address.

Member Data Documentation

◆ AMP_LEVEL_10_0DBV

constexpr uint8_t AMP_LEVEL_10_0DBV = 0x04
staticconstexpr

◆ AMP_LEVEL_11_0DBV

constexpr uint8_t AMP_LEVEL_11_0DBV = 0x06
staticconstexpr

◆ AMP_LEVEL_12_0DBV

constexpr uint8_t AMP_LEVEL_12_0DBV = 0x08
staticconstexpr

◆ AMP_LEVEL_13_0DBV

constexpr uint8_t AMP_LEVEL_13_0DBV = 0x0A
staticconstexpr

◆ AMP_LEVEL_14_0DBV

constexpr uint8_t AMP_LEVEL_14_0DBV = 0x0C
staticconstexpr

◆ AMP_LEVEL_15_0DBV

constexpr uint8_t AMP_LEVEL_15_0DBV = 0x0E
staticconstexpr

◆ AMP_LEVEL_16_0DBV

constexpr uint8_t AMP_LEVEL_16_0DBV = 0x10
staticconstexpr

◆ AMP_LEVEL_17_0DBV

constexpr uint8_t AMP_LEVEL_17_0DBV = 0x12
staticconstexpr

◆ AMP_LEVEL_18_0DBV

constexpr uint8_t AMP_LEVEL_18_0DBV = 0x14
staticconstexpr

◆ AMP_LEVEL_19_0DBV

constexpr uint8_t AMP_LEVEL_19_0DBV = 0x16
staticconstexpr

◆ AMP_LEVEL_20_0DBV

constexpr uint8_t AMP_LEVEL_20_0DBV = 0x18
staticconstexpr

◆ AMP_LEVEL_21_0DBV

constexpr uint8_t AMP_LEVEL_21_0DBV = 0x1A
staticconstexpr

◆ AMP_LEVEL_22_0DBV

constexpr uint8_t AMP_LEVEL_22_0DBV = 0x1C
staticconstexpr

◆ AMP_LEVEL_8_5DBV

constexpr uint8_t AMP_LEVEL_8_5DBV = 0x01
staticconstexpr

◆ AMP_LEVEL_9_0DBV

constexpr uint8_t AMP_LEVEL_9_0DBV = 0x02
staticconstexpr

◆ AMP_LEVEL_MASK

constexpr uint8_t AMP_LEVEL_MASK = 0x3E
staticconstexpr

◆ AMP_LEVEL_SHIFT

constexpr uint8_t AMP_LEVEL_SHIFT = 1
staticconstexpr

◆ AUTO_RATE

constexpr uint8_t AUTO_RATE = 1U << 4
staticconstexpr

◆ BOOST_EN

constexpr uint8_t BOOST_EN = 1U << 5
staticconstexpr

◆ BOOST_MODE_ALWAYS_OFF

constexpr uint8_t BOOST_MODE_ALWAYS_OFF = 0x03
staticconstexpr

◆ BOOST_MODE_ALWAYS_ON

constexpr uint8_t BOOST_MODE_ALWAYS_ON = 0x02
staticconstexpr

◆ BOOST_MODE_CLASS_G

constexpr uint8_t BOOST_MODE_CLASS_G = 0x01
staticconstexpr

◆ BOOST_MODE_CLASS_H

constexpr uint8_t BOOST_MODE_CLASS_H = 0x00
staticconstexpr

◆ BOOST_MODE_MASK

constexpr uint8_t BOOST_MODE_MASK = 0xC0
staticconstexpr

◆ CFG2_CONFIG_MASK

constexpr uint8_t CFG2_CONFIG_MASK = 0x3F
staticconstexpr

◆ CLASS_D_SYNC

constexpr uint8_t CLASS_D_SYNC = 1U << 6
staticconstexpr

◆ CLR_INT_LTCH

constexpr uint8_t CLR_INT_LTCH = 1U << 2
staticconstexpr

◆ DC_BLOCKER_DIS

constexpr uint8_t DC_BLOCKER_DIS = 1U << 6
staticconstexpr

◆ DEFAULT_BOOK

constexpr uint8_t DEFAULT_BOOK = 0x00
staticconstexpr

◆ DEFAULT_PAGE

constexpr uint8_t DEFAULT_PAGE = 0x00
staticconstexpr

◆ FRAME_START

constexpr uint8_t FRAME_START = 1U << 0
staticconstexpr

◆ i2c_addr

uint8_t i2c_addr = 0
protectedinherited

◆ I2C_ADDR_DEFAULT

constexpr uint8_t I2C_ADDR_DEFAULT = 0x4C
staticconstexpr

◆ I2C_ADDR_GLOBAL

constexpr uint8_t I2C_ADDR_GLOBAL = 0x48
staticconstexpr

◆ I2C_GLOBAL_EN

constexpr uint8_t I2C_GLOBAL_EN = 1U << 1
staticconstexpr

◆ input_volume_percent

int input_volume_percent = 100
protectedinherited

Last input volume (in %) provided to setInputVolume()

◆ INT_OI

constexpr uint8_t INT_OI = 1U << 1
staticconstexpr

◆ INT_OTE

constexpr uint8_t INT_OTE = 1U << 0
staticconstexpr

◆ INT_TDMCKE

constexpr uint8_t INT_TDMCKE = 1U << 2
staticconstexpr

◆ IRQ_PIN_CFG_LATCHED

constexpr uint8_t IRQ_PIN_CFG_LATCHED = 0x01
staticconstexpr

◆ IRQ_PIN_CFG_LIVE

constexpr uint8_t IRQ_PIN_CFG_LIVE = 0x00
staticconstexpr

◆ IRQ_PIN_CFG_MASK

constexpr uint8_t IRQ_PIN_CFG_MASK = 0x03
staticconstexpr

◆ IRQ_POL

constexpr uint8_t IRQ_POL = 1U << 7
staticconstexpr

◆ ISNS_PD_MASK

constexpr uint8_t ISNS_PD_MASK = 1U << 3
staticconstexpr

◆ PWR_MODE_MASK

constexpr uint8_t PWR_MODE_MASK = 0x03
staticconstexpr

◆ RAMP_RATE

constexpr uint8_t RAMP_RATE = 1U << 5
staticconstexpr

◆ RX_EDGE

constexpr uint8_t RX_EDGE = 1U << 0
staticconstexpr

◆ RX_JUSTIFY

constexpr uint8_t RX_JUSTIFY = 1U << 6
staticconstexpr

◆ RX_OFFSET_MASK

constexpr uint8_t RX_OFFSET_MASK = 0x3E
staticconstexpr

◆ RX_OFFSET_SHIFT

constexpr uint8_t RX_OFFSET_SHIFT = 1
staticconstexpr

◆ RX_SCFG_MASK

constexpr uint8_t RX_SCFG_MASK = 0x30
staticconstexpr

◆ RX_SCFG_MONO_I2C

constexpr uint8_t RX_SCFG_MONO_I2C = 0x00
staticconstexpr

◆ RX_SCFG_MONO_LEFT

constexpr uint8_t RX_SCFG_MONO_LEFT = 0x01
staticconstexpr

◆ RX_SCFG_MONO_RIGHT

constexpr uint8_t RX_SCFG_MONO_RIGHT = 0x02
staticconstexpr

◆ RX_SCFG_SHIFT

constexpr uint8_t RX_SCFG_SHIFT = 4
staticconstexpr

◆ RX_SCFG_STEREO_DOWNMIX

constexpr uint8_t RX_SCFG_STEREO_DOWNMIX = 0x03
staticconstexpr

◆ RX_SLEN_16BITS

constexpr uint8_t RX_SLEN_16BITS = 0x00
staticconstexpr

◆ RX_SLEN_24BITS

constexpr uint8_t RX_SLEN_24BITS = 0x01
staticconstexpr

◆ RX_SLEN_32BITS

constexpr uint8_t RX_SLEN_32BITS = 0x02
staticconstexpr

◆ RX_SLEN_MASK

constexpr uint8_t RX_SLEN_MASK = 0x03
staticconstexpr

◆ RX_SLOT_LEFT_MASK

constexpr uint8_t RX_SLOT_LEFT_MASK = 0x0F
staticconstexpr

◆ RX_SLOT_RIGHT_MASK

constexpr uint8_t RX_SLOT_RIGHT_MASK = 0xF0
staticconstexpr

◆ RX_WLEN_16BITS

constexpr uint8_t RX_WLEN_16BITS = 0x00
staticconstexpr

◆ RX_WLEN_20BITS

constexpr uint8_t RX_WLEN_20BITS = 0x01
staticconstexpr

◆ RX_WLEN_24BITS

constexpr uint8_t RX_WLEN_24BITS = 0x02
staticconstexpr

◆ RX_WLEN_32BITS

constexpr uint8_t RX_WLEN_32BITS = 0x03
staticconstexpr

◆ RX_WLEN_MASK

constexpr uint8_t RX_WLEN_MASK = 0x0C
staticconstexpr

◆ RX_WLEN_SHIFT

constexpr uint8_t RX_WLEN_SHIFT = 2
staticconstexpr

◆ SAMP_RATE_MASK

constexpr uint8_t SAMP_RATE_MASK = 0x0E
staticconstexpr

◆ SAMP_RATE_SHIFT

constexpr uint8_t SAMP_RATE_SHIFT = 1
staticconstexpr

◆ SW_RESET_BIT

constexpr uint8_t SW_RESET_BIT = 1U << 0
staticconstexpr

◆ TX_EDGE

constexpr uint8_t TX_EDGE = 1U << 0
staticconstexpr

◆ TX_FILL

constexpr uint8_t TX_FILL = 1U << 4
staticconstexpr

◆ TX_KEEP_EN

constexpr uint8_t TX_KEEP_EN = 1U << 5
staticconstexpr

◆ TX_OFFSET_MASK

constexpr uint8_t TX_OFFSET_MASK = 0x0E
staticconstexpr

◆ volume_percent

int volume_percent = 100
protectedinherited

Last volume (in %) provided to setVolume()

◆ VSNS_PD_MASK

constexpr uint8_t VSNS_PD_MASK = 1U << 2
staticconstexpr

◆ wire

i2c_bus_handle_t wire = nullptr
protectedinherited

The documentation for this class was generated from the following file: