主题中讨论的其他器件:ADS1299
大家好!
我是一个团队的成员、正在研究以 ADS1299 6PAR 为中心的 EEG 器件。 在过去几周里,我们一直在测试我们的第一个原型,我们已经验证一切都在运作,我们甚至能够读取一些基本的生物信号。
不过、昨天已经发生了一些事情、ADS1299现在只能在所有通道上读取恒定值。 它们的电压范围为40-90 mV、并且在每次初始化时会有所不同。 我们已尝试手动将电极短路、但电极值似乎不 受任何接触的影响。
这是我们的器件串行输出的图片、其中每条线路都是来自 ads1299的不同数据突发、前6个数字是以伏特为单位的通道值、后3个数字是状态字节。

这种情况下除前两个手动短路的电极外、所有电极都处于悬空状态。 由于我们停止短路或执行了其他任何操作、这些值没有改变。
这是 我们的初始化协议。
ADS1299_init_spi();
//send SDATAC command to write the registers
ADS1299_cs_select();
ADS1299_send_command(ADS1299_CMD_SDATAC);
ADS1299_write_register(ADS1299_REG_CONFIG3, 0b11100000);
sleep_ms(1000);
//write configuration registers
//enable CLK output and Set output data rate to 250SPS
ADS1299_write_register(ADS1299_REG_CONFIG1, 0b11010110);
ADS1299_write_register(ADS1299_REG_CONFIG2, 0b11010011);
//Bias Settings
ADS1299_write_register(ADS1299_REG_CONFIG3, 0b11101110);
//close SRB1 swithces
ADS1299_write_register(ADS1299_REG_MISC1, 0b00100000);
//close BIASP switches
ADS1299_write_register(ADS1299_REG_BIAS_SENSP, 0b11110000);
//set channel to normal electrode input
ADS1299_write_register(ADS1299_REG_CH1SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_CH2SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_CH3SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_CH4SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_CH5SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_CH6SET, 0b01100000);
ADS1299_write_register(ADS1299_REG_LOFF, 0b00001100);
ADS1299_write_register(ADS1299_REG_CONFIG4, 0x02 );
ADS1299_write_register(ADS1299_REG_LOFF_SENSP, 0xFF);
ADS1299_write_register(ADS1299_REG_LOFF_SENSN, 0x00);
我们已尝试关闭各种通道、这可以正常工作、但其余通道仍然存在相同的问题。 我们确实意外地对寄存器中本应为常数值的位进行了写入、但我们不知道这是否会引起问题。
