AD7705 寄存器
版主:我在使用AD7705时,碰到这样的问题:
在ADC自校正后,执行 ZN=ZS+(Z1-Z0) GN=GS*(G1/G0) ,
在CH1=0 CHO=1 通道(AIN2 (+ ) AIN2 (- )),修改ZN GN 结果有正常的变化,
但是在CH1=0 CHO=0 通道(AIN1 (+ ) AIN1 (- )),只有对ZN偏移寄存器修改,输出结果有变化,
修改增益寄存器GN,输出结果却没有变化,(已经对修改后的增益寄存器再次读出,确定数据已经改变且正确)。
请问这是什么原因。谢谢 36425701@qq.com
#define Communication_register 0<<4
#define Setup_register 1<<4
#define Clock_register 2<<4
#define Data_register 3<<4
#define Test_register 4<<4
#define No_operation 5<<4
#define Offset_register 6<<4
#define Gain_register 7<<4
#define read 8
#define ch0 0
#define ch1 1
#define MD0 (0<<6)
#define MD1 (1<<6)
#define MD2 (2<<6)
#define MD3 (3<<6)
#define G16 (4<<3)
#define G32 (5<<3)
#define G64 (6<<3)
/////////下面是在CH1=0 CHO=1 通道/////////////////////////////////////////
case 23:
Writetoreg(0x38);
u[CurrentChannle][7]=Read16();//存数7
TNum=0;
Writetoreg(Clock_register|ch1); //0x21 clock
Writetoreg(0x00); //0 50Hz 84 10Hz
Writetoreg(Setup_register|ch1); // setup 选择PT100通道
Writetoreg(MD1|G32); // 自校准 gain 32
break;
case 24:
Writetoreg(Offset_register|read|ch1); //read 偏移寄存器
i=Read(24);
Temp.i=Offset[ch1]+i; //Zn=Zs+Z1-Z0
Temp.c[3]=(Offset_register|ch1); //write 偏移寄存器
WriteIntToReg(Temp.i);
Writetoreg(Gain_register|read|ch1); //增益寄存器
i=Read(24);
f1=Gain[ch1];
Temp.i = i*f1; //Gn=GS*G1/G0
Temp.c[3]=(Gain_register|ch1); //write 增益寄存器
WriteIntToReg(Temp.i);
SelCHL(CurrentChannle,0);
break;
////////////////////下面是在CH1=0 CHO=0 通道//////////////////
SelCHL(CurrentChannle,0);
Writetoreg(Clock_register|ch0); //0x20 clock
Writetoreg(0x00);//0 50Hz 84 10Hz
Writetoreg(Setup_register|ch0); // setup
Writetoreg(MD1|G32); // 自校准 gain 32
}
switch(ADC_DRDY_CNT)
{
case 1:
Writetoreg(Offset_register|read|ch0); //read 偏移寄存器
i=Read(24);
Temp.i=Offset[ch0]+i; //Zn=Zs+Z1-Z0
Temp.c[3]=(Offset_register|ch0); //write 偏移寄存器
WriteIntToReg(Temp.i);
Writetoreg(Gain_register|read|ch0); //增益寄存器
i=Read(24);
f1=Gain[ch0];
Temp.i = i*f1; //Gn=GS*G1/G0
Temp.c[3]=(Gain_register|ch0); //write 增益寄存器
WriteIntToReg(Temp.i);
SelCHL(CurrentChannle,0);
break;
回帖(2)
2018-8-16 07:44:10
问题已经找到,不必回复了
问题已经找到,不必回复了
举报
2018-8-16 07:51:06
不说说是什么问题吗
举报
更多回帖