工具与软件:
我使用 TLV320ADC3120创建了一个小型 PCB。
输入设置为单端输入、INx-M 连接到 GND。
信号:
VREF:2.50V
AREF:1.80V
AVDD:3.37V
VDD:3.41V
所有看起来都很稳定、因此我没有附上示波器的屏幕截图。
我要测量什么:
目前为18.9kHz 信号、90mV PP (0V 至90mV)、无直流失调电压。
该信号通过1k Ω 电阻直接耦合到 IN2。
此时 IN1悬空。
配置:
我使用 STM32L533与 ADC 通信。 它使用 I2C 进行配置、数据使用 SAI 进行传输。
data[0]=(SW_RESET_RESET); HAL_I2C_Mem_Write(&hi2c1,0x9c,SW_RESET_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(SLEEP_CFG_AREG_SELECT_INTERNAL | SLEEP_CFG_SLEEP_ENZ_ACTIVE|SLEEP_CFG_VREF_QCHG_100_MS); HAL_I2C_Mem_Write(&hi2c1,0x9c,0x02,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(ASI_CFG0_WLEN_32_BITS); HAL_I2C_Mem_Write(&hi2c1,0x9c,ASI_CFG0_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(BIAS_CFG_MBIAS_VAL_VREF); HAL_I2C_Mem_Write(&hi2c1,0x9c, BIAS_CFG_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(IN_CH_EN_CH1_ENABLED | IN_CH_EN_CH2_ENABLED); HAL_I2C_Mem_Write(&hi2c1,0x9c,IN_CH_EN_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(ASI_OUT_CH_EN_CH1_ENABLED | ASI_OUT_CH_EN_CH2_ENABLED); HAL_I2C_Mem_Write(&hi2c1,0x9c,ASI_OUT_CH_EN_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(CH1_CFG0_INTYP_LINE | CH1_CFG0_INSRC_SINGLE |CH1_CFG0_DC_DC ); HAL_I2C_Mem_Write(&hi2c1,0x9c,CH1_CFG0_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(CM_TOL_CFG_CH2_INP_FULL |CM_TOL_CFG_CH1_INP_FULL); HAL_I2C_Mem_Write(&hi2c1,0x9c,CM_TOL_CFG_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(CH1_CFG2_DVOL_MUTE); HAL_I2C_Mem_Write(&hi2c1,0x9c, CH1_CFG2_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(CH2_CFG2_DVOL_0dB); HAL_I2C_Mem_Write(&hi2c1,0x9c, CH2_CFG2_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(CH2_CFG0_INTYP_LINE | CH2_CFG0_INSRC_SINGLE |CH2_CFG0_DC_DC ); HAL_I2C_Mem_Write(&hi2c1,0x9c,CH2_CFG0_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100); data[0]=(PWR_CFG_ADC_PDZ_ON | PWR_CFG_PLL_PDZ_ON | PWR_CFG_MICBIAS_PDZ_OFF ); HAL_I2C_Mem_Write(&hi2c1,0x9c,PWR_CFG_ADDRESS,I2C_MEMADD_SIZE_8BIT,data,1,100);
通道1将静音、因为我要验证我的 SAIconfiguration 是否正常工作。
SAI 配置为在 STM32端进行96kHz 主接收。
我接收的数据如下:
由于通道1被静音、因此0正确。 但在通道2上、我没有测量我的信号。 您可以看到、雪崩会在正值和负值之间跳跃。
在您看到的数据中、我将 IN2_P 直接连接到 GND、因此我应测量一个稳定的值。 如果我连接信号、值看起来非常相似。
如果我测量开路 IN1-P、则会读取到该引脚上的直流失调电压为1.47V。 连接信号时、引脚2的电压为0.45V (如果 IN2接地、则为0V)。
我确信配置有误。 有人给我提示吗?