ADS1230增益问题

Other Parts Discussed in Thread: ADS1230

最近在使用ADS1230   (20位模数转换器),使用过程中,读取的数据,与设置的增益(64)不符,我现在读回来的数据/AD输入=2,正确时应该是读回来的数据/AD输入=64,请问有遇到相同问题的吗?

这是我的代码:

unsigned long ADS123x_Read() //¶ÁÒ»´ÎÊý¾Ý£¨20룩
{
unsigned char i;
unsigned long k = 0;
while(ADS1230_3_DOUT)
{
; //µÈ´ýÊý¾Ý×¼±¸ºÃ
}
for (i = 0; i<20; i++)
{
k<<=1;
ADS1230_3_SCLK = 1;
DELAY_US(2);
ADS1230_3_SCLK = 0;
DELAY_US(2);
if (ADS1230_3_DOUT)
{
k += 1;
}
DELAY_US(2);

}
ADS1230_3_SCLK = 1; //µÚ21¸öʱÖÓÂö³å£¬Ê¹Êý¾ÝÊä³ö½ÅÀ­¸ß£¬ÓÃÓÚÑéÖ¤ÏÂÒ»´ÎÊý¾ÝÊÇ·ñ×¼±¸ºÃ£¨µÍ£©¡£
DELAY_US(2);
ADS1230_3_SCLK = 0;
DELAY_US(2);
k &= 0XFFFFF;
return(k);
}