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.

ADS1130读取的数据与实际值对应不上的问题

Other Parts Discussed in Thread: ADS1130

您好以上是我PT100采集与ADS1130的电路图

 uint32_t ADS1130_Read(void) //ÔöÒæ128
{
unsigned long count; 
unsigned char i; 
// nrf_gpio_cfg_output(DIO);
// nrf_gpio_pin_set(DIO);
//nrf_gpio_cfg_input(DIO,GPIO_PIN_CNF_PULL_Disabled);
  GPIO_ResetBits(ADS1130_SPEED_PORT,ADS1130_SPEED_PIN);
GPIO_SetBits(ADS1130_PDWN_PORT,ADS1130_PDWN_PIN);

GPIO_ResetBits(ADS1130_SCLK_PORT,ADS1130_SCLK_PIN);
// delay_us(10);
  // ADS1130_SCK=0; 
   count=0; 
  while(GPIO_ReadInputDataBit(ADS1130_DIO_PORT,ADS1130_DIO_PIN)==1); 
   while(GPIO_ReadInputDataBit(ADS1130_DIO_PORT,ADS1130_DIO_PIN)==0); 
 delay_us(10);
   for(i=0;i<24;i++)

GPIO_SetBits(ADS1130_SCLK_PORT,ADS1130_SCLK_PIN);
  // ADS1130_SCK=1; 
   count=count<<1; 
delay_us(1);

GPIO_ResetBits(ADS1130_SCLK_PORT,ADS1130_SCLK_PIN);
// ADS1130_SCK=0; 
if(GPIO_ReadInputDataBit(ADS1130_DIO_PORT,ADS1130_DIO_PIN))
{
count++; 
// nrf_delay_us(1);
}
delay_us(1);

delay_us(100);
GPIO_SetBits(ADS1130_SCLK_PORT,ADS1130_SCLK_PIN);
 // ADS1130_SCK=1; 
count>>=6;
delay_us(100);
GPIO_ResetBits(ADS1130_SCLK_PORT,ADS1130_SCLK_PIN);
// ADS1130_SCK=0;  
GPIO_SetBits(ADS1130_PDWN_PORT,ADS1130_PDWN_PIN);
return(count);
上面是我读取ADS的程序,根据现在的电路,我测试AINP与AINN的电压差为0.014v的时候读取的值是23584,但是理论计算值 0.014v对应输出大概是  0.014*64 *131071/ 1.65 = 71175 芯片自带64倍的放大 18位差分;其他输入值也对应不上,测试到0.7V
左右达到正向满量程,与理论值差距很大,按照计算输入0.025就已经达到满量程了,请攻城狮们帮忙看看啥问题,花了不少时间了,谢谢