找回密码
 立即注册
楼主: 9805***

单片机唤醒后ADC首次读取电池电压不准确

[复制链接]
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 15:38:31 | 显示全部楼层
    神农鼎 发表于 2023-3-8 14:38
    大家好,外部中断触发单片机从掉电模式唤醒后,为什么首次读取电池电压不准确呢
    ====是主电源稳定的情况下 ...

    1.png
    2.png

    3.png
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 15:40:19 | 显示全部楼层
    神农鼎 发表于 2023-3-8 14:38
    大家好,外部中断触发单片机从掉电模式唤醒后,为什么首次读取电池电压不准确呢
    ====是主电源稳定的情况下 ...

    原理图已截图贴上,麻烦帮忙看看,谢谢

    该用户从未签到

    549

    主题

    9198

    回帖

    1万

    积分

    管理员

    积分
    13999
    发表于 2023-3-8 15:44:41 | 显示全部楼层
    1.png

    2.png

    该用户从未签到

    549

    主题

    9198

    回帖

    1万

    积分

    管理员

    积分
    13999
    发表于 2023-3-8 15:49:21 | 显示全部楼层
    就是 P10/ADC0 测量 C7/0.1uF的电位:
    1, ADC电源打开后,你延时200uS到1mS
    2, 将ADC采样时间先设置到最长,然后再改短
    1.png
    2.png

    该用户从未签到

    549

    主题

    9198

    回帖

    1万

    积分

    管理员

    积分
    13999
    发表于 2023-3-8 15:53:04 | 显示全部楼层
    上原理图的PDF为好,下图稳压管为何未串限流电阻
    1.png

    2.png

    3.png
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 16:06:43 | 显示全部楼层

    假定C25取0.1uF,R108可以是0欧姆吗,如果不是0欧姆,那取值多少合适呢?此时采样时间怎么计算,谢谢。

    该用户从未签到

    45

    主题

    2898

    回帖

    6512

    积分

    超级版主

    积分
    6512
    发表于 2023-3-8 16:08:28 | 显示全部楼层
    电话里我不是说得很清楚了吗?

    ADC_CONTR &= ~0x80;  //关闭ADC
    PCON |= 0x02;
    NOP(5);    //至少3个NOP
    ADC_CONTR |= 0x80;
    Delay10ms;   //至少延时1ms,推荐10ms, 模拟电路与数字电路不同,需要时间稳定。
    做ADC
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 16:19:24 | 显示全部楼层
    梁工 发表于 2023-3-8 16:08
    电话里我不是说得很清楚了吗?

    ADC_CONTR &= ~0x80;  //关闭ADC

    梁工,你好,要延时200mS才可以,延时10mS ADC读到的数据不等于电池电压(相差很大),如果延时再大一点ADC转换结果更加接近被测的电池电压,目前原因不详。可能是神龙鼎那样说的单片机片内外电容电压不相等我转换ADC了,采样时间不够,按照龙哥的意思我把采样时间加长试试。
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 16:23:53 | 显示全部楼层
    梁工 发表于 2023-3-8 16:08
    电话里我不是说得很清楚了吗?

    ADC_CONTR &= ~0x80;  //关闭ADC

            ADC_CONTR=ADC_CONTR&0x7f;
            PCON=PCON|0x02;
             _nop_();
             _nop_();
            _nop_();
            gpio_init();
            ADC_CONTR=ADC_CONTR|0x80;
            Delay200ms();
  • TA的每日心情

    2023-12-25 15:38
  • 签到天数: 1 天

    [LV.1]初来乍到

    39

    主题

    204

    回帖

    651

    积分

    高级会员

    积分
    651
     楼主| 发表于 2023-3-8 16:29:36 | 显示全部楼层
    神农鼎 发表于 2023-3-8 15:53
    上原理图的PDF为好,下图稳压管为何未穿限流电阻

    因为水平有限,我优化设计线路,谢谢指点。另外我不知道怎么上传PDF,找不到入口,所以截图上去了。ADC采样线路和MCU供电电源的线路设计有没有问题,谢谢。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

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

    GMT+8, 2024-4-25 02:00 , Processed in 0.068023 second(s), 65 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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