TI中文支持网
TI专业的中文技术问题搜集分享网站

ADS1299-4: 读出8通道数据

Part Number:ADS1299-4Other Parts Discussed in Thread: ADS1299

请问一下,我们正在制作多通道脑电采集系统。目前出现的问题是ADS1299-4 ID NU_CH[1:0]读出的是11,且可以读出8通道数据。

之前已经采用ADS1299制作出了多通道的采集系统,目前我们正在制作更高导联的系统。

我们采用了10片以上的ADS1299组成多通道脑电采集系统,为了避免浪费,我们采用多片ADS1299+一片1299-4组成采集系统,采用菊花链连接,ADS1299-4作为第一片,单独有CS引脚,其余ADS1299在第一片后菊花链连接,共用另一个CS

但是我们出现了问题,详细问题为:

ADS1299-4 ID NU_CH[1:0]读出的是11,且可以读出8通道数据。NU_CH[1:0]正常应该为00

我们可以确的是,我们采用的是正品ADS1299-4,因为我们是在TI官网购买的,

当我们采用未和ADS1299一起使用过的新芯片时,设备ID读出来是00,这是正确的。

我们供电采用DVDD=3.0V,AVDD=+2.5V,AVSS=-2.5V

则应该:

DVDD = 3.3V/3.0V
AVDD = +2.5VAVSS = -2.5VVREFN = -2.5VVREFP = +2VVCAP1 = AVSS+1.2V = -1.3VVCAP2 = (AVDD+AVSS)/2 = 0VVCAP3 = AVDD+1.9V = +4.4VVCAP4 = (VREFP+VREFN)/2 = -0.25V

我们测量正常的ADS1299-4(未经过任何使用的)的VCAP3为4.4V左右。

我们测量不正常的ADS1299-4(和ADS1299一起菊花链使用过得)的VCAP3为1.8V左右。

我们可以确定我们的电路硬件没有任何问题,代码也没有任何问题,上电时序也检查过肯定没有问题。

只是通过将不同的ADS1299-4(正常的ADS1299-4和不正常的ADS1299-4)分别焊接到我们之前成熟的电路上,且使用批量测试过稳定的代码,并且只焊第一片ADS1299-4,读取他的寄存器并显示采集到的数据。

神奇的是,ADS1299-4正常的只能读到4个通道的数据,但是不正常的可以读到8个通道的数据,我们测试了方波测试信号,正常的也只能生成4路,不正常的可以生成8路。

在这里,我们将不正常的ADS1299-4写入了ADS1299的程序,正常的ADS1299-4写入的是ADS1299-4的程序,其中一些寄存器配置如下:

CH5SET:00
CH6SET:00
CH7SET:00
CH8SET:00
BIAS_SENSP:0X
BIAS_SENSN:0X
LOFF_SENSP:0X
LOFF_SENSN:0X
LOFF_FLIP:0X

即将某些用不到的5-8通道的某些为置0

不正常的ADS1299-4测试方波程序如下:

可以看到读到了8个通道的数据,这让我们完全不理解,我们可以肯定的是ADS1299-4原来是好的,并且我们采用信号发生器单独分别接入1-8通道,发现每个通道都可以正常显示波形,幅值频率正常,仿佛ADS1299-4变成了ADS1299一样,但是设备ID读不到且VCAP3不对。我们不清楚造成这种现象的原因是ADS1299-4和ADS1299组成了菊花链结构导致的还是将ADS1299程序的寄存器写入ADS1299-4导致的。这看起来就像寄存器控制器错乱了一样,我们还有可能恢复吗?

我们还出现另外一个现象,就是和不正常ADS1299-4一起组成菊花链的ADS1299,VCAP3也变成了1.8V,且ID NU_CH[1:0]也变成了11

在这种情况下,我们可以正常采集数据,我们将信号接入,信号也都正常,幅值正常,但是我们测试阻抗,即开交流激励源,发现测量出的阻抗比实际的要低一半,我们怀疑VCAP3降低导致内部交流激励电流源变低从而阻抗值测量变低。

我们的疑问有以下几点:

1.可以确定硬件,程序,上电时序都没有问题,ADS1299为何ID会读成11,且VCAP3为1.8V,我们还有可能将其恢复吗?

2.ADS1299-4为何ID读出是11,为何VCAP3为1.8V,为何能正常采集8个通道的数据,我们还能将其恢复吗?

3.ADS1299-4能否和ADS1299组成菊花链结构?

 

Kailyn Chen:

您好,

Peanuts 说:ADS1299-4能否和ADS1299组成菊花链结构?

可以的。

Peanuts 说:ADS1299-4为何ID读出是11,为何VCAP3为1.8V,为何能正常采集8个通道的数据,我们还能将其恢复吗?

ADS1299 其他四路不用的输入端您是如何处理的?建议其他四个不同的输入端上拉至AVDD,不建议接GND防止漏电流的产生。

Peanuts 说:1.可以确定硬件,程序,上电时序都没有问题,ADS1299为何ID会读成11,且VCAP3为1.8V,我们还有可能将其恢复吗?

根据您的描述,也就是说ADS1299-4单独使用,ID和VCAP3都正常,只有当和ADS1299 级联的时候发生异常是吗?

并且将单独正常工作的ADS1299-4,换到级联里,也是会出现ID和VCAP3异常的现象对吧?

看起来问题不是在于ADS1299-4上,应该是daisy chain级联出现的问题,将CS拉高,进行reset试试呢?

,

Peanuts:

抱歉我点错了,问题还并没有解决。

Kailyn Chen 说:

ADS1299 其他四路不用的输入端您是如何处理的?建议其他四个不同的输入端上拉至AVDD,不建议接GND防止漏电流的产生。

电路上我们将未使用的P端和SRB1都拉至了AVDD,因为电路是给ADS1299使用的,所以使用ADS1299-4时,其5-8通道的N端并没有拉至AVDD,而是接了输入端口,让我们疑惑的是,原装全新的ADS1299-4相同的电路5-8通道并没有信号,且VCAP3为4.4V;而与ADS1299菊花链后的ADS1299-4的8个通道全部都有了信号,并且信号是正常的,全部可以正常采集,此时VCAP3为1.8V左右,用于阻抗检测的激励源电流大约为原来的一半。

Kailyn Chen 说:

根据您的描述,也就是说ADS1299-4单独使用,ID和VCAP3都正常,只有当和ADS1299 级联的时候发生异常是吗?

全新的ADS1299-4但是单独使用可以正常采集4个通道,ID和VCAP3都正常,但是与ADS1299串联后的ADS1299-4可以采集8个通道值了,ID和VCAP3都不正常,此时也是单独只使用了一片测试的。

Kailyn Chen 说:并且将单独正常工作的ADS1299-4,换到级联里,也是会出现ID和VCAP3异常的现象对吧?

这个我们后续并没有再进行测试,因为如果出问题会损失一片ADS1299和ADS1299-4,价值比较高。但是我们可以确定的是,出问题的ADS1299-4在与ADS1299级联前是完全正常的。

Kailyn Chen 说:将CS拉高,进行reset试试呢

我们尝试这样操作,并没有什么变化。

,

Kailyn Chen:

Peanuts 说:抱歉我点错了,问题还并没有解决。

没关系。我会继续跟进您的问题,明天我会再看下您的问题。

,

Kailyn Chen:

Peanuts 说:

在这里,我们将不正常的ADS1299-4写入了ADS1299的程序,正常的ADS1299-4写入的是ADS1299-4的程序,其中一些寄存器配置如下:

CH5SET:00CH6SET:00CH7SET:00CH8SET:00BIAS_SENSP:0XBIAS_SENSN:0XLOFF_SENSP:0XLOFF_SENSN:0XLOFF_FLIP:0X

即将某些用不到的5-8通道的某些为置0

您这里配置的有问题,不论是ADS1299,还是ADS1299-4,因为它们的封装是相同的,所以我们只使用4路的话,ADS1299以及ADS1299-4的CH5-8SET都配置为power down状态。所以CH5SET~CH8SET不用的话不应该是配置为0,而是bit7 =1, power down channel 5~7,bit6~4=111,don‘t use。 即CH5SET~CH8SET不用的话可以配置为F1h。

,

Peanuts:

在这里,我们电路使用了8个通道,所以是将ADS1299和ADS1299-4也都使用了8个通道,上图那个寄存器是单独使用ADS1299-4时写的寄存器参数,在ADS1299-4的datasheet中Table 11中(1)说将ADS1299-4置为00或0

在后面,我们在电路中依旧使用8个通道,在给ADS1299和VCAP3不正常的ADS1299-4都写入了ADS1299的寄存器,如下:

0x95//CONFIG10xC2//CONFIG20xE6//CONFIG30x00//LOFF0x58//CH1SET0x58//CH2SET0x58//CH3SET0x58//CH4SET0x58//CH5SET0x58//CH6SET0x58//CH7SET0x58//CH8SET0xFF//BIAS_SENSP0xFF//BIAS_SENSN0xFF//LOFF_SENSP0xFF//LOFF_SENSN0x00//LOFF_FLIP0x00//LOFF_STATP0x00//LOFF_STATN0x0F//GPIO0x00//MISC10x00//MISC20x00//CONFIG4

让我们疑惑的是,单独使用不正常的ADS1299-4(VCAP3为1.8V的),写入以上寄存器后可以读出8个通道,ID为11,但是单独使用正常的ADS1299-4,,即使写入以上寄存器,也只有4个通道有数据,VCAP3为4.4V,且ID正常。

这看起来就像是有一批ADS1299-4的内部控制错乱了,导致可以读出8个通道数据且ID错误,我们还有办法恢复它吗?

,

Kailyn Chen:

明白,那这样看来ADS1299-4和ADS1299级联没问题,原因就出在将ADS1299的程序写入了ADS1299-4上导致内部寄存器错乱。

电路中PWDN没和reset引脚接在一起吧?如果接在一起,无法满足FIgure 76的上电时序。

恢复的话,就是进行reset,上面您提到reset没用,您看下reset时序是否满足?如果PWDN和RESET接在一起的话,就进行software reset。 如果没接在一起的话,硬件复位和软件复位哪个都可以,一定要符合reset的时序,reset后,再等18 × tCLK时间去读一下ID,或者其他寄存器,看是否是默认值,从而确定能不能恢复。如果ID读出来还不对的话,应该是不能恢复了。

,

Peanuts:

Kailyn Chen 说:电路中PWDN没和reset引脚接在一起吧?如果接在一起,无法满足FIgure 76的上电时序。

我们的/PWDN一直通过10k的电阻上拉到DVDD,RESET单独由MCU控制,没有接在一起。

我可以肯定我们上电时序是完全正常的,我们的CLK是2.048Mhz,tCLK为488ns,tPOR应大于128ms,我们给的500ms左右,tRST应大于0.97ms我们给的5ms,用示波器看过引脚控制是给过去的,并且时序满足,后来我们将tPOR和tRST都给到了3S左右,仍旧ID读不正确,并且硬件复位软胶复位都尝试过了。并且其他完全正常的芯片使用这套程序是可以读出来的,只有出现问题的才会读不出来,这么看芯片很有可能已经发生了异常。

可以帮忙联系一下TI原厂的工程师咨询一下这是什么原因吗,我们还有可能恢复吗,能够返厂维修吗?谢谢。

,

Kailyn Chen:

Peanuts 说:可以帮忙联系一下TI原厂的工程师咨询一下这是什么原因吗,我们还有可能恢复吗,能够返厂维修吗?谢谢。

好的,这个问题我帮您去问一下,收到答复会第一时间通知给您。

,

Peanuts:

好的,感谢,我们目前是ADS1299和ADS1299-4都出现了ID不对且VCAP3 不正确的情况。

,

Kailyn Chen:

也就是说,ADS1299-4写了ADS1299的程序,ADS1299 是写的自己ADS1299的程序,但是因为和ADS1299-4级联,ADS1299的ID也不正确了是吧?

,

Peanuts:

是的,目前情况是这样的。

,

Kailyn Chen:

好的,我这边去确认一下,有收到答复我会通知给您。

,

Kailyn Chen:

您好,您的问题我已经和美国工程师反馈了,他的意思是DEV_ID 读取的正确吗?DEV_ID 应该为11.

如果 NU_CH读取出来为11的话,他也是需要再去和内部team的工程师去讨论,因为datasheet上没有 NU_CH会读出11的情况。

赞(0)
未经允许不得转载:TI中文支持网 » ADS1299-4: 读出8通道数据
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1