关于ADS1299 daisy-chain(菊花链模式)的读取问题
HELLO,各位工程师
我现在使用ADS1299的菊花链模式遇到了问题。
我的连接方式是参照数据手册里面右边这种接法。
现在我读取ID寄存器可以看到读到3E,这个数据和手册里面的xxx1 1110=ads1299是对应的,但是现在slave2的片子的ID无法读取。
看逻辑分析仪,本来读取一个片子的ID是发送0x20 0x00 再加一个0x00的时钟信号,现在我读取2个ID,在读到第一个ID的情况下,我再发送了一个时钟信号0x00但是无法读取到数据。
从手册菊花链时序图上看,他们的时钟信号是连续的。
后面我测试过了,如果读取8通道数据,这种方式是能够读取的,但是我在配置ch1为test信号时,发现只有第一片片子的ch1输出方波,第二片无法输出。
还有这个ADS的菊花链到底能不能支持读取和写入后面片子的寄存器,这里有什么特殊的方式吗。手册上好像都没写到。
请各位大大帮个忙
其余关于寄存器位的配置也应该是正确的,最后一个片子的daisy-in脚也是接地。
自己顶一个。ads1299是不是不支持读取后面片子的寄存器,然后寄存器配置的话是不是所有的片子寄存器都是配成一样,然后只能去读通道数据数据?,也就是说移位寄存器只存adc数据,不存寄存器数据
你好,
ADS1299的问题需要和产品线在确认一下,不过在ADS1298的手册中对Daisychain mode的描述,是不支持独立读写寄存器的.
ADS1298 datasheet P57,
Important reminders when using daisy-chain mode:
1. Issue one extra SCLK between each data set (see Figure 67).
2. All devices are configured to the same register values because CS is shared.
3. Device register readback (RREG) is only valid for device 0 in the daisy chain. Only conversion data can be
read from device 1 to device N, where N is the last device in the chain; register data cannot be read
Kevin
hello,感谢您的回答,
关于数据这块,我开菊花链读取是时候是可以读到3片芯片的,
如果说芯片本身不支持菊花链读写单独的寄存器,那么我的很多配置就无法使用(或者菊链上所有的芯片配置要一模一样【因为其DIN与CS是同时连接的,说明写入寄存器是可以的,】),
加入说要先用普通模式去配置芯片,然后再开菊花链去读取ADC数据,我研究了下两者的连接方式,如果要兼容,这将使电路十分复杂,因为要切换DOUT脚的连接位置。
所以这样会很尴尬。最终我们放弃了菊链,使用多CS切换。
希望TI早日开发出完善的芯片(因为我在参考其他SPI菊链产品上看到是可以单独去操作寄存器的)。
非常感谢!