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.

[参考译文] MSP430F427:为什么在 ADC ISR 中累积4096个样本(用于计量目的)、为什么不累积5000或450或任何此类值。

Guru**** 2587365 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/622531/msp430f427-why-4096-samples-accumulated-in-adc-isr-for-metering-purpose-why-not-5000-or-450-or-any-such-value

器件型号:MSP430F427

尊敬的所有人:

我一直看到、包括我在内的计量行业的大约所有编程人员都使用了4096个 ADC 样本、然后取平均值。

即使我使用来累加4096个样本(我刚刚被接受为标准)、然后取其平均值、但我仍然不确定为什么会有4096个样本。

我从未见过、即使采集5000个样本甚至450个样本、精度也没有任何差异。

但我在标准程序中看到、该值始终为4096。

请清除我的好奇心。 如果存在某种逻辑或只是一种标准做法。

提前感谢。

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因为它使除法更加容易-位移而不是除法。 此外、编程器也具有二的幂等功能。 ^μ A)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这是唯一的原因吗? 或者有一些很强的理由,有没有?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这是唯一的原因-更容易被位移位除法的速度更快并且生成的代码更少。 如果编译器检测到除以第二个幂、它将(至少应该)用位移替换 diivionon。

    102400/4096

    与相同

    102400 >> 12.

    Dennis