• Resolved

[FAQ] TAS2563: Adjusting Digital Volume Control using I2C

Prodigy 625 points

Replies: 1

Views: 29

Part Number: TAS2563

What is the I2C address to change the digital volume control for playback?

  • The I2C addresses for digital volume control is called DVC_PCM. Since digital control is 32 bits, DVC_PCM takes 4 registers in total with the first one located in Book 0, Page 2, in register 0x0C. 
  • DVC_Slew is the register that controls the rate at which volume changes. In similar format, the first register is located in Book 0, Page 2, in register 0x10.
    • DVC_Slew =  round(exp(-1/(0.2*fs*time in seconds))*2^31)

How can I adjust the volume?

  • To adjust the volume, first you need to convert the volume in dB to decimal.
    • Ratio(decimal)  = (10^(gain/20)  * 2^31)/16

Then convert the Ratio in decimal to HEX

  • For example: -3dB -> 2d 4e fb d6
  • Write the HEX  (32 bits) to DVC_PCM1 - DVC_PCM4
    • Example I2C command:
    • w 98 00 00
      w 98 7f 00
      w 98 00 02
      w 98 0c 2d 4e fb d6