https://e2e.ti.com/support/audio-group/audio/f/audio-forum/592063/pcm1863-setting-dsp2-mixer-values
部件号:PCM1863大家好,
尝试为PCM1863设置DSP2混音器值,以获得额外增益并具有奇怪的行为。 系统是STM32f0,通过i2c控制PCM1863。
编解码器设置如下:
PCMWriteReg (0x00,0xFF);
PCMWriteReg (0x00,0x00);
//将多路复用输入设置为差分
PCMWriteReg (0x06,0x20);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x06,1,i2cdatchuck,0x01,0xff);
PCMWriteReg (0x07,0x20);
//设置增益
PCMWriteReg (0x01,0x50);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x01,1,i2cdatchuck,0x01,0xff);
PCMWriteReg (0x02,0x50);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x02,1,i2cdatchuck,0x01,0xff);
//切换到DSP存储器页面
PCMWriteReg (0x00,0x01);
//将地址reg设置为0x00 (MIX1_CH1L)
PCMWriteReg (0x02,0x00);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x02,1,i2cdatchuck,0x01,0xff);
//设置为电子表格中的18dB
PCMWriteReg (0x04,0x7F);
PCMWriteReg (0x05,0x17);
PCMWriteReg (0x06,0xAF);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x02,1,i2cdatchuck,0x01,0xff);
//写入reg 1并检查值
PCMWriteReg (0x01,0x01);
HAL_DELAY (5);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x01,1,i2cdatchuck,0x01,0xff); //始终读回0x05
HAL_DELAY (5);
HAL_I2C_Mem_READ (&hi2c2,0x94,0x01,1,i2cdatchuck,0x01,0xff); //始终读回0x05
从冷启动(两个芯片都关闭)开始,PCM1863接受增益和多路复用设置,但不接受DSP混合器值。 如果我重新启动微电脑两次,同时让编解码器保持通电状态,编解码器会更新混音器值并提高增益。
可能导致这种行为的任何想法/任何补救建议?
非常感谢
决定