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.

[参考译文] MSP430I2021:了解直流滤波器计算

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1034405/msp430i2021-dc-filter-calculation-understanding

器件型号:MSP430I2021

您好!

是否有人可以帮助我找到应用于单电流表的直流移除滤波器中的直流偏移值?

此致、

Minal Barad。

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

    如果您想获得 直流值、我认为低通滤波器可以实现 IIR 滤波器等功能。  

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

    您好、Gary、

    实际上、我想从交流输入中移除脉动直流电。 我已按照如下所示应用了一个滤波器。

    int16_t dc_filter (int32_t * p、int16_t x)

    //one 希望通过以下方式估算 DC:
    // z +=(((((int32_t) x << 15)- z)>> 14);
    //返回 x -(z >> 15);
    //但是:
    // z +=(((((int32_t) x << 16)- z)>> 14);
    //返回 x -(z >> 16);
    //速度快一点,16的移位将永远不会
    //在此应用程序中导致溢出。 但是、
    //请记住,这不是通用直流滤波器!
    *p +=(((((int32_t) x << 16)-*p)>> 14);
    x -=(* p >> 16);
    返回 x;

    但是,在这个过滤器中,我不知道 *p 是什么以及如何计算它的值。 X 是 ADC 计数。

    此致、

    微型

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

    我不确定。 但您可以使用原始信号- IIR 结果=交流信号