打印

低成本单IO口的电池电压检测方案

[复制链接]
8548|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
awey|  楼主 | 2007-9-8 23:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
先声明一下:本检测方法精度很低,只能用于要求不高的场合。

电路只要一个电阻和一个电容,和占用一个IO口,电路如下:

方法:
1、先将IO口设为输出并置成低电平,对电容C放电;
2、再将IO口设为输入,同时启动MCU内部的计数器;
3、电池电压Vbat将通过电阻R对C充电,同时MCU检测IO口的状态;
4、当检测到IO口为高时,停止计数;
5、将IO口重新设为输出0;
6、此时计数值与Vbat的值相对应。

Vbat的计算方法:可以通过查表加插值方法计算出电压值,表的制作方法是:用一组已知的电压测出对应的计数值,写入到程序里。

如果要提高检测的精度,可以单独对每个产品独立调校,将得到的表格数据写入到EEPROM内。

本方案可以用于无AD的MCU,又需要电池电压检测的低成本的应用中。

相关帖子

沙发
coldra| | 2007-9-8 23:42 | 只看该作者

见过这样用的,不错

使用特权

评论回复
板凳
gyt| | 2007-9-9 11:31 | 只看该作者

行啊

这就是最简单的A/D转换方案嘛。可行!

使用特权

评论回复
地板
qjy_dali| | 2007-9-9 22:04 | 只看该作者

没错,低成本的情况下,可以这么做

但我觉得现在带ADC的MCU已经够便宜了

使用特权

评论回复
5
ayb_ice| | 2007-9-10 07:51 | 只看该作者

VBAT一般都大于VCC,这样能行吗?

使用特权

评论回复
6
awey|  楼主 | 2007-9-10 08:05 | 只看该作者

没问题,1、R很大 2、IO口有保护二极管 3、常态是IO口置零

使用特权

评论回复
7
mqy1977| | 2007-9-10 12:17 | 只看该作者

顶上一份<使用一个I/O 口实现A/D 转换输入>

http://www.holtek.com.cn/china/tech/appnote/uc/pdf/ha0128s.pdf

使用特权

评论回复
8
wjy1107| | 2007-9-10 13:02 | 只看该作者

学习了。

使用特权

评论回复
9
zhf0964| | 2007-9-10 14:11 | 只看该作者

是个不错的方法

如果C采用钽电解电容,
R上串接一个多圈电位器,
可能效果更好一些,也更
便于调试。

使用特权

评论回复
10
古道热肠| | 2007-9-10 15:50 | 只看该作者

IO口输入的高电平下限有离散性

  一致性恐怕不好,用单片机内部的比较器作AD检测倒是很实用,AT89C2051就有电压比较器,也有对应的例程。

使用特权

评论回复
11
awey|  楼主 | 2007-9-10 15:59 | 只看该作者

这是我们以前一个产品上用的

不带AD、比较器等的台湾【十速】的4位廉价的单片机,要在LCD上显示电池的电压
(图示的),考虑到成本,用了此方法。对精度要求不高,重点在廉价上,因单片机
才2元多。

IO口的高低电平一致性是很差,而且随温度而变,但是可以通过单点的调校(EEPROM
保存)来提高精度,可以做到0.1V左右。

使用特权

评论回复
12
awey|  楼主 | 2007-9-10 16:04 | 只看该作者

发此贴的目的只是告诉大家一个实践证明的廉价而可行的方

使用特权

评论回复
13
dadodo| | 2007-9-10 16:30 | 只看该作者

没办法的情况下确实有用

不过这年头带AD的单片机只卖2.5了。

使用特权

评论回复
14
郝英俊| | 2015-7-31 17:20 | 只看该作者
为什么我这样使用就是不可以?可以留个QQ吗?方便交流

使用特权

评论回复
15
奔牛滚滚| | 2015-8-1 08:59 | 只看该作者
然并卵,这个绝对是个高成本的方案

使用特权

评论回复
16
lio_lai| | 2015-8-19 13:19 | 只看该作者
电容需要用【独石电容】,电动车的电量显示,4个灯显示电量,就是这个方法,单片机用国产153,PCBA成本大约是1元。

使用特权

评论回复
17
457344370| | 2015-8-20 12:13 | 只看该作者
stm8可以用内部电压基准算电池电压

使用特权

评论回复
18
JerryWu75| | 2015-8-21 09:15 | 只看该作者
MC97F1204S,1.24元, 16pin,最多13路AD,去年用过.

使用特权

评论回复
19
autolog| | 2015-8-23 09:57 | 只看该作者
普通IO实现ADC,这可是07年的老帖啊

使用特权

评论回复
20
zzh866| | 2015-9-5 09:39 | 只看该作者
你好,我现在也正在学习STM8的单片机,能跟我讲讲是怎么用内部的电压基准算电池电压吗?我的邮箱是zzh866@sina.com。谢谢!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

208

主题

8718

帖子

9

粉丝