使用24位ADC差分测量多次,如何计算平均值

2019-12-16 22:37发布

24位ADC输出是2进制补码。当负端电平高于正端时,ADC输出的最高位是1,此时如何计算多次测量结果的平均值?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
66条回答
lklhzu
2019-12-24 07:37
gamalot 发表于 2016-1-31 23:16
做个判断就行了,假设是24位ADC

你好,对于楼主的疑问“当负端电平高于正端时,ADC输出的最高位是1,此时如何计算多次测量结果的平均值?”,此时不是应该把得到的补码数据转换成原码再参与计算吗?
按照你给出的这个公式,假如code = Adc_read_data();读到的数据是code=0x812345,那么执行
if ((code & 0x800000) != 0)
{
  code -= 0x1000000;
}
后得出code=0xFF812345;不等于0x812345的原码啊?请问是我哪里理解的不对吗?还请指教!

一周热门 更多>