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**** 2551450 points
Other Parts Discussed in Thread: ADS1299

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/910160/ads1299-ads1299-noise-measurement

器件型号:ADS1299

很抱歉、这会分散注意力、我真的想自己来决定这个问题。

我使用 ads1299组装 PCB 板 、并开始测量直流电压以进行检查(2V)。 但结果是产生了噪声。 我决定检查噪声寄存器- MUXn[2:0]- 00001001、并得到一个非常奇怪的结果、

16776020
16776019
16776019

看起来引脚已连接到基准、但实际上应该接地。

双极电源

我对寄存器使用下一个设置(实际上、我已经尝试了许多不同的寄存器设置、但每次的结果都是相同的)

ID - 0x3E

CONFIG1 - 0x96
CONFIG2 - 0xD1
CONFIG3 -0xE0
CH1SET - 0x09
MIPSC1 - 0x20

WRITE_BYTE (CONFIG3、0xE0);  

WRITE_BYTE (CONFIG1、0x96);  
WRITE_BYTE (CONFIG2、0xC0);  

WRITE_BYTE (0x04、0x00);

WRITE_BYTE (0x0D、0xFF);

WRITE_BYTE (0x0E、0xFF);

WRITE_BYTE (0x0F、0x00);

WRITE_BYTE (0x10、0x00);

WRITE_BYTE (0x11、0x00);

WRITE_BYTE (0x12、0x00);

WRITE_BYTE (0x13、0x00);

WRITE_BYTE (0x14、0x0F);

WRITE_BYTE (0x15、0x00);

WRITE_BYTE (0x16、0x00);

WRITE_BYTE (0x17、0x00);

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

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

    此 RDAC 时刻

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

    您好 Ildar、

    感谢您的发帖、欢迎来到我们的论坛。

    您描述的问题不是很清楚。 请尝试重述您的问题。  

    如果与 ADS1299通信时遇到问题、可以尝试图67中所示的示例启动序列。

    此致、

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

    Ryan、您好、感谢您的回答

    我可以从寄存器写入和读取值、这意味着我与 ADS1299有正确的连接。 器件 ID -"0x3E"

    现在、我想检查噪声(输入短路)-但从所有通道接收-值 - 16776019 (+-1000)-它不正确、但问题出在哪里?

    您可以在图片中看到此过程-对于所有通道-"输入短路"

    我设置下一个电阻器:

    CONFIG3、0xE0;
    CONFIG1、0x96;
    CONFIG2、0xC0;
    0x04、0x00;
    0x0D、0xFF;
    0x0E、0xFF;
    0x0F、0x00;
    0x10、0x00;
    0x11、0x00;
    0x12、0x00;
    0x13、0x00;
    0x14、0x0F;
    0x15、0x00;
    0x16、0x00;
    0x17、0x00;
    CH1SET、0x09;
    CH2SET、0x09;
    CH3SET、0x09;
    CH4SET、0x09;
    CH5SET、0x09;
    CH6SET、0x09;
    CH7SET、0x09;
    CH8SET、0x09;

     

    STM32中用于实时读取数据的代码:

    SEND_COMMAND (RDATAC);

    SEND_COMMAND (START);

    而1:{

    if (HAL_GPIO_ReadPin (DRDY_GPIO_Port、DRDY_Pin)== GPIO_PIN_RESET){
    HAL_GPIO_WritePin (GPIOD、CS_Pin、GPIO_PIN_RESET);
    for (int i = 0;i<9;i++){
    dataPacket = 0;
    for (int j = 0;j<3;j++){
    HAL_SPI_TransmitReceive (&hspi3、(uint8_t*)&test、(uint8_t*)&Received_Byte、1、0x1000);
    dataPacket =(dataPacket<<8)| Received_Byte;

    output[i]= dataPacket;
    dataPacket = 0;
    }}

    //SPI 设置

    hspi3.Init.direction = SPI_DIRECT_2LINES;
    hspi3.Init.DataSize = SPI_DATASIZE_8位;
    hspi3.Init.CLKPolarity = SPI_POLICY_LOW;
    hspi3.Init.CLKPhase = SPI_PHASE_2EDGE;
    hspi3.Init.nss = SPI_NSS_soft;
    hspi3.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;  // 250kHz
    hspi3.Init.FirstBit = SPI_FIRSTBIT_MSB;
    hspi3.Init.TIMode = SPI_TIMDE_DISABLE;
    hspi3.Init.CRCCalcirc= SPI_CRCCALCULATION_DISABLE;
    hspi3.Init.CRCPolynomial = 10;

    我使用双极电压

    VCAP1 =-1.2V

    VCAP2 = 0.001V

    VCAP3 = 4.2V

    VCAP4=-0.125V

    状态位- 1100 0000 0000 0000 0000 0000

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

    您好 Ildar、

    我们无法从示波器捕获解码 SPI 通信、如图所示。 此外、通道1标记为"DIN"、但我假设您是"DOUT"(引脚标签来自 ADS1299透视图)。

    您是否读回寄存器值以确认它们被正确写入?

    注意:无需关闭 SRB2开关即可进行输入短路测量。 PGA 输入引脚将在内部短接至中间电源、因此您不希望 SRB2引脚电压与此保持一致。 请将所有 CHnSET 寄存器中的位3设置为0。

    此外、请记住、数据输出采用二进制补码。 十进制值的范围为-8,388,608至+8,388,607 (-full-scale 至+full-scale)。

    此致、

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

    Ryan、您好、感谢您的回复。 是的、它是 dout。

    我从 ADS1299读取所有寄存器并进行确认。  

    I 设置 CHnSET  

    CH1SET、0x01;
    CH2SET、0x01;
    CH3SET、0x01;
    CH4SET、0x01;
    CH5SET、0x01;
    CH6SET、0x01;
    CH7SET、0x01;
    CH8SET、0x01;

    但接收相同的结果(示波器中的图片相同)。 应为- 0、但我收到  +8、387、607 (-+1000)。 它看起来是相反的。  可能需要替换 ADS1299?

    VCAP1 =-1.2V

    VCAP2 = 0.001V

    VCAP3 = 4.2V

    VCAP4=-0.125V

    状态位- 1100 0000 0000 0000 0000 0000

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

    Ryan、很抱歉让我们分心、您能给我们一些建议吗? 因为我们的工作已经停止。 我们等待您的回答。


    Ildar

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

    您好 Ildar、

    我看不到您的设置有任何明显的问题。 基准电压是否正确? VREFP 和 VREFN 之间的电压差应为4.5V、VREFN 应连接到 AVSS。

    此致、

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

    Ryan、您好、感谢您的回复。 是的,当然,我已经检查过它很多次,基准电压4.46V (在 VREFP 和 VREFN 之间)。 实际上、我经常阅读 ADS129x BIOFAQ 、我提出了所有的建议。 但问题仍然存在。 现在、我为电路板进行了新设计、本周我将进行检查。 但我担心这可能是同样的问题。   

    Ryan 请看下一张照片-您可能会在这里看到一些问题( 对于所有通道-"输入短路")