ADS122C04 寄存器配置可以正确读写,但是读取数据的时候,读出的数据全都是0,代码如下:
寄存器配置值为:static uint8_t C_ADS1220_Par_Default_W[4] = {0x91,0x08,0x00,0x00};
uint32_t ADS122C_GetData(void)
{
uint8_t ret;
uint32_t L_ADS122C_Data = 0;
uint32_t L_ADS122C_Buf[N];
ADS122C_DRDY();
ret = ADS122C_Config_Init();
if(ret == 1)
{
ADS122C_StartConversion();
for(uint8_t i = 0; i < N; i++)
{
while(ADS122CDRDY_IN);
delay_ms(10);
ADS122C_Read_Data(&L_ADS122C_Buf[i]);
}
for(uint8_t i = 0; i < N; i++)
{
L_ADS122C_Data += L_ADS122C_Buf[i];
}
L_ADS122C_Data = (uint32_t)(L_ADS122C_Data / N);//取平均值
}
else
{
//异常
L_ADS122C_Data = 0;
}
ADS122C_PowerDown();
return L_ADS122C_Data;
}
请问是为什么呢?