关于ADC实验例程中 ADC求平均值的问题

2019-07-21 04:35发布

//获取通道ch的转换值,取time次,然后平均
u16 Get_Adc_Average(u8 ch,u8 times)
{
        u32 temp_val=0;
        u8 t;
        for(t=0;t<times;t++)
        {
                temp_val+=Get_Adc(ch);
                delay_ms(5);
        }
        return temp_val/times;
}
main
{。。。//省略
while(1)
        {
                adcx=Get_Adc_Average(ADC_CH1,10);
                。。。。。//省略
}
。。。//省略
}
上面是源码,乍一看,似乎没有问题,
我的问题是实际中ADC采样时间没有代码执行的时间快,所以同一个AD转换值采了10次,然后除以10次平均,是不是就没有意义了?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
timpan
1楼-- · 2019-07-21 05:25
peng1554 发表于 2019-3-7 15:00
Get_Adc()是返回转换结束后的结果
et_Adc_Average()是返回x次结果取平均值后的结果
从这个角度来说ADC采 ...

原来如此,谢谢
peng1554
2楼-- · 2019-07-21 09:53
 精彩回答 2  元偷偷看……

一周热门 更多>