This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] ADS1299:ADS1299引脚连接

Guru**** 2540720 points
Other Parts Discussed in Thread: ADS1299

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1018836/ads1299-ads1299-pin-connections

器件型号:ADS1299

我在使用 ADS1299时遇到问题。  

我已经在 CHnSET 寄存器中对 ADS1299通道的内部测试信号进行了编程。 它在 Arduino IDE 上的串行绘图仪上显示方波、正如数据表中所示。  

当我将 CHnSET 中的 MUX[2:0]值更改为000时、用于外部信号路由。 当我放置手指时、我会听到一些噪音、我认为它工作正常、因为人体有一些静电荷。  
但是、当我从函数发生器施加5uV VPP 的正弦波时、它显示的波形与之前没有信号时的波形相同。 如下图所示。  

我在 IN8P 和 IN8N 之间施加了信号。 BIASOUT 引脚保持开路。 当 BIASOUT 引脚连接到 IN8N 时、正如数据表所示、无论我作为输入提供的任何波形、EEG 显示的波形都与上述波形相同。  

我设置的寄存器如下:  

ads_init(){
  ads_hardReset();         //Hardware reset by RESET pin
  ads_softReset();         // Send reset command
  getDeviceID();             // get device id
  
  ads_wreg(CONFIG1, 0xD6);  // No Daisy, Osc. Clock output disabled, 250Hz
  ads_wreg(CONFIG2, 0XD5);  // Generate test signal externally 
  ads_wreg(CONFIG3, 0xEC);  // Internal ref buff enabled,bias measurment open
  ads_wreg(CONFIG4, 0X00);  // Continuous conversion mode, Leadoff comparator OFF
  
  //Only measuring from channel 8    
  ads_wreg(CH1SET, 0xC1);  // POWER DOWN 
  ads_wreg(CH2SET, 0xC1);  // POWER DOWN
  ads_wreg(CH3SET, 0xC1);  // POWER DOWN
  ads_wreg(CH4SET, 0xC1);  // POWER DOWN
  ads_wreg(CH5SET, 0xC1);  // POWER DOWN
  ads_wreg(CH6SET, 0xC1);  // POWER DOWN
  ads_wreg(CH7SET, 0xC1);  // POWER DOWN
  ads_wreg(CH8SET, 0x00);  // init channel with normal eletrode, 1X gain, SRB2 open

  ads_wreg(BIAS_SENSP, 0X80);  //Switch ON for ch8
  ads_wreg(BIAS_SENSN, 0X80);  //Switch ON for ch8 

  ads_wreg(MISC1, 0X20);   //Connect SRB1 to all INxN of channel

  ads_command(_START);     // Start ads conversion
  delay(1); 
  ads_command(_RDATAC);    // Start continuous conversion mode
}


//Function used to get data from ADS1299:
global long output[8]=0;
void getADSdata()   
{
  long dataPacket = 0;
  vspi->beginTransaction(SPISettings(spiClk, MSBFIRST, SPI_MODE1));
  digitalWrite(ADS_CS, LOW); //Low to communicated  

  for(int i = 0; i<3; i++){
     byte dataByte = vspi->transfer(0x00);
     statusData = (dataPacket<<8) | dataByte;
  }
  for(int i = 0; i<8; i++){
    for(int j = 0; j<3; j++){
        byte dataByte = vspi->transfer(0x00);
        dataPacket = (dataPacket<<8) | dataByte;
    }
    output[i] = dataPacket;
    dataPacket = 0;
  }
  digitalWrite(ADS_CS, HIGH);
  vspi->endTransaction();

  Serial.println(output[7]);   //Print Ch8 data and plot. 
}

对于以下情况、我想提出几个问题:

1.初始化寄存器时代码是否正确? 和获取数据?  

2、如何将 IN8P、IN8N、BIASOUT、AGND (如果必须连接接地参考)、导线连接到电极并收集 EEG 信号。

谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Lakshay、

    感谢您发帖。 请查看我的以下评论以了解您的问题。

    代码看起来不错。 信号链、硬件和数据采集没有问题、因为您能够通过内部测试信号获取方波信号。 但是、所附的波形显示 ADC 数据输出已饱和。 您是否会验证测试信号的共模信号是否正确? 使用来自函数发生器的较大测试信号可能会有所帮助。 请注意、PGA 增益= 1时器件的噪声性能约为7.59uVpp (DR = 250SPS)。

    请参阅数据表中的图73、了解使用单个参考电极进行 EEG 信号测量的设置。 偏置电极用于偏置患者、以维持输入通道的正确共模电压。 它还有助于改善系统的共模抑制。

    谢谢

    -TC