[PIC®/AVR®/dsPIC®产品] ADC采集电源电压的问题

[复制链接]
 楼主| 1564564 发表于 2023-11-3 17:35 | 显示全部楼层 |阅读模式
我的目标是板子用电池3.7v供电,然后电池电量会降低嘛,当电池电压低于3.2v时就有提示,所以用adc进行采样;
看图一时我的adc初始化部分,图二是搜索大佬的回答,我使用的就是两个电阻分压的电路,但是现在采集到的数据一直是0;
下面是获取采样值的代码;
adc_result_t ADC_GetConversion(void)
{
    OSCCON = 0x68;
    // select the A/D channel
    ADCON0bits.CHS = 0x09;   

    // Turn on the ADC module
    ADCON0bits.ADON = 1;
    // Acquisition time delay
    __delay_us(ACQ_US_DELAY);

    // Start the conversion
    ADCON0bits.GO_nDONE = 1;

    // Wait for the conversion to finish
    while (ADCON0bits.GO_nDONE)
    {
    }
    // Conversion finished, return the result
    return ((ADRESH << 8) | ADRESL);
    OSCCON = 0x02;
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
zhuotuzi 发表于 2023-11-7 08:44 | 显示全部楼层
一般分压就可以。只要有个靠谱的参靠电压就行。
Undshing 发表于 2023-11-12 18:47 | 显示全部楼层
参考电压不好找啊
wutaosamuel 发表于 2023-11-13 10:35 | 显示全部楼层
MCU内部有固定参考电压(FVR),是不会随着VDD电压变化的
所以adc可以用内部的参考电压为基准,vdd作为输入端
Henryko 发表于 2023-11-14 10:39 来自手机 | 显示全部楼层
一直是0应该是程序写的问题吧
 楼主| 1564564 发表于 2023-11-16 16:12 | 显示全部楼层
Henryko 发表于 2023-11-14 10:39
一直是0应该是程序写的问题吧

以前是好的,现在就是不准
 楼主| 1564564 发表于 2023-11-16 16:14 | 显示全部楼层
谢谢各位大佬解答,现在不知道是电路的原因还是软件原因,能采集到数据了,但是误差很大,也可能是参考电压的问题。
forgot 发表于 2023-11-17 10:57 | 显示全部楼层
但是现在采集到的数据一直是0肯定不对,如果你电源电压不稳定采用分压进行参考电压设计肯定不行的
forgot 发表于 2023-11-17 10:57 | 显示全部楼层
你可以尝试用外接一个稳定电压源进行测试,确定是参考电压的问题之后再判断,如果是参考电压的问题就可以看看TL431
Jacquetry 发表于 2023-11-20 10:20 来自手机 | 显示全部楼层
用内部的基准电压就可以吧
AloneKaven 发表于 2023-11-21 10:02 来自手机 | 显示全部楼层
参考电压选哪个啊
Bowclad 发表于 2023-11-23 14:59 来自手机 | 显示全部楼层
误差大是不是没校准啊
MessageRing 发表于 2023-11-27 14:47 来自手机 | 显示全部楼层
内部的那个基准电压应该是校准过的
AloneKaven 发表于 2023-11-28 10:17 来自手机 | 显示全部楼层
不行的话就外接个参考源试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

114

帖子

0

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