求助,STM8S的电池电压如何采集

2020-01-01 17:51发布

我想实现一个当电池电压低于一定值的时候,单片机就停止工作。
我试过两种接法都失败了。
1》4V的电源直接接到单片机的AD引脚上,但AD转换得到的值一直到都是4.9V.        如果把电源换成3.3V的,AD转换的结果还是4.9V。        用万用表测AD引脚电压是跟电源一样的

2》4V电源串一个100欧姆的电阻接到单片机的AD引脚上,然后AD引脚再下拉一个100欧姆的电阻接地分压,这时候万用表测AD引脚的值是2V的,AD转换的值是2.5V。                  换成3.3V的电池,AD转换结果还是2.5V,万用表测得是                    1.6V。

但是我接一个电位器的时候的AD转换是完全没问题的。可以测得很近准的电压值。
啊啊啊 !!!求指教,这是什么原因造成的???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
28条回答
WATS
1楼-- · 2020-01-02 15:01
 精彩回答 2  元偷偷看……
hdxet
2楼-- · 2020-01-02 16:56
WATS 发表于 2016-7-28 10:05
单片机的工作电压在3V~5.5V

如果单片机不是工作在稳定电压下,就需要选择内部参考电压或外加一个稳定的参考电压,有的片子有外部参考引脚,有的没有,没有外部参考电压引脚的,可以用一个AD口采集经稳压的值,与另一个口经电阻分压后的采集值作比较,反算出电池电压,用外部参考电压比较准,内部参考电压各个片子之间差距可能比较大。
ayumi8
3楼-- · 2020-01-02 22:42
ldo 3.3  给 MCU 供电      然后  电池 用电阻分压  锂电4.2V 时候、 电阻分压要低于  3.3v  然后 AD 检测
aozima
4楼-- · 2020-01-03 04:16
本帖最后由 aozima 于 2016-7-28 10:56 编辑
little_Monkey 发表于 2016-7-28 09:57
AIN7是内部的,没有引出来,所以说不占用AD引脚,你换到7通道试试吧,换算一下是不是固定的1.22V ...


STM8S003/STM8S103有没有这功能?
还是必须要自己外接一个参考源,当直接使用电池供电的时候?

查了一圈,好像ST的资料上面并没有明确说明这件事,都是小道消息再验证后得出的。
担心某天这个功能就没有了。

从值是1.22V来看,AIN7应该是连接到STM8内部的LDO上面的。
little_Monkey
5楼-- · 2020-01-03 08:58
aozima 发表于 2016-7-28 10:50
STM8S003/STM8S103有没有这功能?
还是必须要自己外接一个参考源,当直接使用电池供电的时候?

试过103K3有这个AIN7的,要没有固定电压用起来是太麻烦了,还得占用一路AD
aozima
6楼-- · 2020-01-03 10:45
 精彩回答 2  元偷偷看……

一周热门 更多>