找回密码
 立即注册
楼主: fekcivws

求助,不同AD时钟分频,ADC采集结果不同

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-03-05 16:29:46
已绑定手机

1

主题

10

回帖

25

积分

新手上路

积分
25
发表于 昨天 18:13 | 显示全部楼层
adc转换是连续采,达到数量停止采集,在由定期器开启下一周期采集,中断代码如下

void ADC_Isr(void) interrupt 5
{
        u16 tempdat = 0;
        //adc_val[adc_idx] = 0;
       
        tempdat = (u16)ADC_RES;
       
        tempdat <<= 8;
        tempdat += ADC_RESL;
        ADC_RES = 0;
        ADC_RESL = 0;
       
        if(tempdat >= AVAILBL_DATA)
        {
                adc_val[adc_idx] += tempdat;
                adc_val[adc_idx] >>= 1;
                adc_idx++;
        }
       
//        adc_val[adc_idx] = tempdat;
//        adc_idx++;
       
        ADC_CONTR &= ~ADC_FLAG;
       
        if(adc_idx >= BUFF_SIZE)
        {
                set_ADC_stop();
        }
        else if(adc_state_on == 1 )
        {//继续转换
                ADC_STAR;
        }
}
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-03-05 16:29:46
已绑定手机

1

主题

10

回帖

25

积分

新手上路

积分
25
发表于 昨天 18:28 | 显示全部楼层
电源不稳定的话,同一AD采集频率下稳定,使用相同分频值能保证稳定复现
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-03-05 16:29:46
已绑定手机

1

主题

10

回帖

25

积分

新手上路

积分
25
发表于 昨天 18:29 | 显示全部楼层
而且上面的表格显示竟然还有些规律
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-03-05 16:29:46
已绑定手机

1

主题

10

回帖

25

积分

新手上路

积分
25
发表于 昨天 19:05 | 显示全部楼层
电源是稳定的,而且使用相同时钟数采集结果一样,根据表格看,时钟数还有一定的规律
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:140
  • 最近打卡:2026-03-05 20:06:44

6

主题

80

回帖

980

积分

高级会员

积分
980
发表于 昨天 20:06 | 显示全部楼层
检查一下是不是有代码重入了,编译时有没有警告。
有时候代码重入了会覆盖局部变量,导致运算出错。
尝试一下不使用中断去读取是否正常。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:556
  • 最近打卡:2026-03-05 08:07:09

0

主题

74

回帖

2370

积分

金牌会员

积分
2370
发表于 昨天 22:24 | 显示全部楼层
文档里是这么写的
极速截图202603052221.png
极速截图202603052222.png
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-3-6 05:11 , Processed in 0.104824 second(s), 60 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表