This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS124S08: 数据读取有问题

Part Number: ADS124S08


项目中使用ADS124S08芯片,采集3路四线PT100的温度,采用外部基准电压REFP1和REFN1;通过切换IDAC1恒流源采集3路PT100,现在遇到的问题是ADC采集的值不准,恒流源大小改变,ADC的值也会发生改变;电路原理图如下:

void ADS124S08_Init(void)
{
uint8_t status;
uint8_t Cmd;
uint8_t Gain; //PGA增益

ADS124S08_Reset(); //系统复位

ADS124S08_ReadReg( REG_STATUS, &status, 1);
if ( (status & ADS124_GetRdy) )
{
return; // Device not ready
}
else
{
Cmd = 0x00; //清除POR标志位
ADS124_WriteOneReg(REG_STATUS,Cmd);
}

// 1. 配置IDAC恒流源:IDAC1输出到AIN3
Cmd = 0xF3; // 0000 0011 - IDAC1=AIN3, IDAC2=断开
ADS124_WriteOneReg(REG_IDACMUX,Cmd);

// 2. 设置IDAC电流大小:1000uA
Cmd = 0x07; // IMAG[3:0]=0111 (1000uA)
ADS124_WriteOneReg(REG_IDACMAG,Cmd);

// 3. 配置输入多路复用器:测量AIN4-AIN5的差分电压
Cmd = (POSI_AIN(4) | NEGA_AIN(5));
ADS124_WriteOneReg(REG_INPMUX,Cmd);

// 4. 配置参考电压:使用外部参考1(REFP1/REFN1)
Cmd = 0x05; // 0011 0000
// Bit7-6: FL_REF_EN = 00 (禁用故障检测)
// Bit5: REFP_BUF = 1 (禁用REFP缓冲器)
// Bit4: REFN_BUF = 1 (禁用REFN缓冲器)
// Bit3-2: REFSEL = 01 (选择外部参考1 - REFP1/REFN1)
// Bit1-0: REFCON = 00 (参考始终开启)
ADS124_WriteOneReg(REG_REF,Cmd);

// 5. 设置PGA增益
Gain = PGA_ENABLE | GAIN_8; // 使能PGA,增益8
ADS124_WriteOneReg(REG_PGA,Gain);

// 6. 设置数据速率
Cmd = 0x10 | SPS_20; // 单次转换,20SPS,低延迟滤波
// 对于PT100测量,不需要太高采样率,20SPS足够
ADS124_WriteOneReg(REG_DATARATE,Cmd);

// 7. 系统配置
Cmd = 0x10; // 默认配置:采样8次,禁用CRC和STATUS byte
ADS124_WriteOneReg(REG_SYS,Cmd);

// 8. 偏置电压配置(可选)
Cmd = 0x00; // 禁用所有偏置电压
ADS124_WriteOneReg(REG_VBIAS,Cmd);

// 等待稳定
Delay_ms(100);

// 开始转换
AD_START_LOW;
ADS124_WriteCmd(CMD_START);

}

   初始化配置程序如下:

  • 您好

    已经收到了您的案例,调查需要些时间,感谢您的耐心等待

  • 您好

    能否说明这句话的具体含义:

    通过切换IDAC1恒流源采集3路PT100,现在遇到的问题是ADC采集的值不准,恒流源大小改变,ADC的值也会发生改变;

    数据为何不准确?客户期望测量什么,而实际测量的是什么?客户能否分享其数据?请提供清晰标注的表格/图表/等,帮助我们准确理解客户系统中的测量内容

    每次切换通道时,外部抗混叠滤波器(2x10k + 10nF)都需要稳定。该滤波器的低截止频率可能导致稳定问题,即输入到模数转换器(ADC)的信号尚未稳定,因此ADC开始测量未稳定的信号。您可以通过PGA寄存器中的DELAY位增加ADC的可编程启动延迟,或者减小外部抗混叠滤波器的值