已回答假定已回答

AD7124-4单次转换配置问题

Lghwd 在 2016-6-21 詢問的問題
最後回覆由Lghwd於2016-8-9提供

AD7124-4配置成单次转换的步骤,

初始化配置函数

void AD7124_Init(void)

{

  uint32_t ad7124_cmd;

  AD7793_CS_L;     //AD器件片选使能

  S0_Power_CS2_L;    //AD转换器的同步控制 低电平复位同步

  Delayms(200);

  S0_Power_CS2_H;    //AD转换器的同步控制 低电平复位同步

 

  ad7124_cmd=0x009C;

  AD7124_Operation(0x01,AD7124_Write,&ad7124_cmd,2);//全功率 AD转换的校准

  Delayms(200);

 

  ad7124_cmd=0x01E0;

  AD7124_Operation(0x19,AD7124_Write,&ad7124_cmd,2);//配置寄存器

  Delayms(200);

 

  ad7124_cmd=0x060180|0x010000;

  AD7124_Operation(0x21,AD7124_Write,&ad7124_cmd,3);//滤波器寄存器配置

  Delayms(200);

}

单次读函数

void AD7124_Start_ADC( float *adc_value )

{

  uint32_t ad7124_cmd,adc_out;

  double data_buf;

 

  ad7124_cmd=0x0084; //配置为单通道转换模式

  AD7124_Operation(0x01,AD7124_Write,&ad7124_cmd,2);//

  AD7124_Operation(0x42,AD7124_Read,&adc_out,3);     //读取AD转换结果

  data_buf=(double)adc_out;

  data_buf/=3355443;

  data_buf-=2.5;

  *adc_value=(float)data_buf;

}

问题:

每次启动转换后,读到的数据总是前一次的结果,

結果