我想实现一个当电池电压低于一定值的时候,单片机就停止工作。
我试过两种接法都失败了。
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转换是完全没问题的。可以测得很近准的电压值。
啊啊啊 !!!求指教,这是什么原因造成的???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
如果单片机不是工作在稳定电压下,就需要选择内部参考电压或外加一个稳定的参考电压,有的片子有外部参考引脚,有的没有,没有外部参考电压引脚的,可以用一个AD口采集经稳压的值,与另一个口经电阻分压后的采集值作比较,反算出电池电压,用外部参考电压比较准,内部参考电压各个片子之间差距可能比较大。
STM8S003/STM8S103有没有这功能?
还是必须要自己外接一个参考源,当直接使用电池供电的时候?
查了一圈,好像ST的资料上面并没有明确说明这件事,都是小道消息再验证后得出的。
担心某天这个功能就没有了。
从值是1.22V来看,AIN7应该是连接到STM8内部的LDO上面的。
试过103K3有这个AIN7的,要没有固定电压用起来是太麻烦了,还得占用一路AD
一周热门 更多>