打印
[技术问答]

求助!新唐单片机代码N76E003怎么进行多次ADC采样取平均值?

[复制链接]
2115|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kongabc|  楼主 | 2019-1-30 15:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我需要在串口助手中显示,怎么修改采样3次取平均值发送到串口。谢谢大家

void main (void)

{   int i;
         u16 Voltage;
                P00_PushPull_Mode;                                                                                                                             
                P04_Input_Mode;          
        InitialUART0_Timer1(115200);
                Enable_ADC_AIN5;                                                                                                             
                while(1)
    {
                        clr_ADCF;                                      
                        set_ADCS;                                                                                                                                             
      while(ADCF == 0);                              
                          
                        Voltage=(ADCRH<<4) + ADCRL;

                        printf ("\n ADC_RH = 0x%bx",ADCRH);
                        printf ("\n ADC_RL = 0x%bx",ADCRL);
                        printf ("\n Voltage = 0x%x",Voltage);
                        LED2=0;
                        Timer0_Delay1ms(100);
                        LED2=1;
    }
}



沙发
kongabc|  楼主 | 2019-1-30 15:31 | 只看该作者
最后一位数有跳动    Voltage = 0x4e9
ADC_RH = 0x4e
ADC_RL = 0x7
Voltage = 0x4e7
ADC_RH = 0x4e
ADC_RL = 0x5
Voltage = 0x4e5
ADC_RH = 0x4e
ADC_RL = 0x8
Voltage = 0x4e8
ADC_RH = 0x4e
ADC_RL = 0x8
Voltage = 0x4e8
ADC_RH = 0x4e
ADC_RL = 0x3
Voltage = 0x4e3
ADC_RH = 0x4e
ADC_RL = 0x5
Voltage = 0x4e5
ADC_RH = 0x4e
ADC_RL = 0x7
Voltage = 0x4e7
ADC_RH = 0x4e
ADC_RL = 0x2
Voltage = 0x4e2

使用特权

评论回复
板凳
734774645| | 2019-1-30 20:18 | 只看该作者
一共12位的数据,可以丢弃最后2位,这样就稳定度提高了。你可以试试,就是当10位的ADC用,也可以当8BIT的使用,直接舍弃最后4BIT。

使用特权

评论回复
地板
heisexingqisi| | 2019-1-30 21:09 | 只看该作者
你建立个函数,每次获取的数据进入这个函数,与前两次的数据求平均返回就行了。进来后总是保留最新的3次数据求平均。

使用特权

评论回复
5
稳稳の幸福| | 2019-1-30 22:17 | 只看该作者
按上面方法试试。另外示波器观察一下波形是否稳定

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

31

帖子

1

粉丝