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.

[参考译文] AFE4900:相位4 (环境)无信号

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1427794/afe4900-no-signal-in-phase-4-ambient

器件型号:AFE4900

工具与软件:

您好!

在实施 IOFFDAC 校准算法时、我遇到了以下问题:在第1-3阶段获得足够的样本、但在第4阶段、​​读取接近零的值。 如果我分别在相位1至3中更改增益、则在相位1至3中、我会得到预期的信号变化​​、但在相位4中、这些值仍然接近零、并且没有任何响应。

AFE 时序是针对四个阶段 LED2 - LED3 - LED1 - LED4进行编程、PD_DISCONNECT 设置为1、因为这是初始校准过程所必需的。 当然、为了进行校准、我将 PTT_MODE 设置为0、即应从2D 寄存器中读取环境相位样本。 但是、​​读取的值接近零。 我已经记忆了整个数据表、但我找不到原因...

在 PTT 模式下、可从2D 寄存器中正确读取 ECG 数据、因此从2D 寄存器中读取的数据将正常工作。

问题可能是什么?

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

    这里是我在复位后进行编程的方式、如果这样有助于解决问题的话。 之后、前三个阶段有足够的读数、第4个阶段有接近零的信号。


    { CONTROL0、ENABLE_ULP }
    {LED2STC、0x2B}
    {LED2ENDC、0x33}
    {LED1LEDSTC、0x43}
    {LED1LEDENDC、0x4F}
    {ALED2STC、0x39}
    {ALED2ENDC、0x41}
    {LED1STC、0x47}
    { LED1ENDC、0x4F }
    {LED2LEDSTC、0x27}
    {LED2LEDENDC、0x33}
    {ALED1STC、0x55}
    {ALED1ENDC、0x5D}
    {LED2CONVST、0x35}
    {LED2CONVEND、0x53}
    {ALED2CONVST、0x55}
    {ALED2CONVEND、0x73}
    {LED1CONVST、0x75}
    {LED1CONVEND、0x93}
    {ALED1CONVST、0x95}
    {ALED1CONVEND、0xB3}
    { PRPCOUNT、0xFF }
    {CONTROL1、NUMAV_3 | TIMEREN}
    {TIAGAIN_2_3、TIA_GAIN_10K |(TIA_GAIN_10K<<8)}、
    {TIA_GAIN_SEP、TIA_GAIN_10K}
    {TIA_GAIN、TIA_GAIN_10K}
    { LEDCNTRL、0x00 }
    {CONTROL2、CONTROL_DYN_TX | CONTROL_DYN_BIAS | CONTROL_DYN_TIA | CONTROL_DYN_AFE | OSC_ENABLE | ILED_2X_DISABLED | PDN_AFE_DISABLED | ENSEPGAIN4}
    {LEDCNTRL2、0x00}
    { SDOUT_INT、0x00 }
    {CONTROL3、ENABLE_INPUT_SHORT | PD_DISCONNECT_ENABLE}
    {PROG_TG_STC、0x00}
    {PROG_TG_ENDC、0x00}
    {LED3LEDSTC、0x35}
    {LED3LEDENDC、0x41}
    {CLKDIV_TE、0x00}
    {I_OFFDAC1、EARLY_OFFSET_DAC}
    {THRDETLOW、0x00}
    {THRDETHIGH、0x00}
    {THRDET、0x00}
    {I_OFFDAC2、0x00}
    {AVG_LED2_ALED2VAL、0x00}
    {AVG_LED1_ALED1VAL、0x00}
    {FIFO_CONTROL、0x00}
    {LED4LEDSTC、0x51}
    {LED4LEDDC、0x5D}
    {TG_PD1STC、0x00}
    {TG_PD1ENDC、0xFF}
    {TG_PD2STC、0x00}
    {TG_PD2ENDC、0x00}
    {TG_PD3STC、0x00}
    {TG_PD3ENDC、0x00}
    { CONTROL4、0x00 }、
    { DUAL_PD、0 }
    { CONTROLE5、ENABLE_PD2_SHORT | CONTROL_DYN_TX_1 }
    {FIFO_OFFSET、0x00}
    {DATA_RDY_STC、0xB9}
    {DATA_RDY_ENDC、0xB9}
    { MASK_PPG、0x00 }
    {PROG_INT1_STC、0x00}
    {PROG_INT1_ENDC、0x00}
    {ECG_CHOP、ENABLE_ECG_CHOP}
    {ECG_RLD、ENABLE_RLD | EN_ILEADOFF | EN_LEADOFF_COMP}
    { RCOMP、0x00 }
    {DYN_TIA_STC、0x00}
    {DYN_TIA_ENDC、0xB6}
    {DYN_ADC_STC、0x00}
    {DYN_ADC_ENDC、0xB6}
    {DYN_CLOCK_STC、0x00}
    {DYN_CLOCK_ENDC、0xB6}
    {DEEP_SLEEP_STC、0xC0}
    {DEEP_SLEEP_ENDC、0xE5}
    {PD_SHORT、ENABLE_PD1_SHORT}
    {REG_POINTER、0x00}
    {LED_DRIVER_CONTROL、0x00}
    {THR_DETECT_LOGIC、0x00}

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

    我将亲自回答这个问题:

    1.您需要写入0x09、而不是寄存器0x4B 中的0x00:

    { CONTROL4、  CONTROL_DYN_BG | CONTROL_DYN_VCM }

    在寄存器0x61和0x62中​​、您需要写入0x00。

    我不知道什么变化是决定性的,但在第四阶段我开始得到正常的样本!