OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2099|回复: 11

各位老前辈,我需要实现一个功能就是读取单片机目前的供电电压,我要如何实现,目前学的AB盘还没相应的库函数可以调用。

[复制链接]

31

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
133
金钱
133
注册时间
2018-4-22
在线时间
17 小时
发表于 2018-5-2 11:20:31 | 显示全部楼层 |阅读模式
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

756

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4163
金钱
4163
注册时间
2017-10-24
在线时间
251 小时
发表于 2018-5-2 11:20:32 | 显示全部楼层
要求不高的话(<1mV),可以直接在单片机的VCC和GND端串联两个阻值相同(当然不相同也可以,但是相同的话好算)的大电阻,然后从两个电阻中间抽根线接到单片机的AD转换引脚上。
这样如果单片机的Vref也就是基准电压设置为2.5V的话,如果单片机电源电压是3.3V,那么AD端测量的是1.65V,大约是AD转换量程的0.66;如果电源电压降到3.0V,那么AD端的电压就是1.5V,大约是AD转换量程的0.6。根据这个比例关系 ,就可以反算出供电电压。

也正如上面讨论的,注意单片机的Vref不要接电源电压,否则永远都只是AD量程的0.5.
这种方式硬件上比较简单,程序上实现也比较方便,就是精度一般,误差主要来源于那两颗分压电阻的误差以及单片机自带AD转换器的转换误差。如果有较高的精度要求,可以使用专门的电压测量芯片。
十六进制带我飞。
回复

使用道具 举报

49

主题

341

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5265
金钱
5265
注册时间
2012-8-25
在线时间
1025 小时
发表于 2018-5-2 15:36:47 | 显示全部楼层
测量基准源,比如用2.5V基准电压(前提低于供电电压), ad得到一个值 ,然后反算出ref就是你的供电电压
回复

使用道具 举报

2

主题

123

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1472
金钱
1472
注册时间
2014-4-8
在线时间
172 小时
发表于 2018-5-2 15:43:06 | 显示全部楼层
两个10K电阻串联,分供电电压,入AD,不就出来了吗
回复

使用道具 举报

49

主题

341

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5265
金钱
5265
注册时间
2012-8-25
在线时间
1025 小时
发表于 2018-5-2 15:45:46 | 显示全部楼层
jackielau 发表于 2018-5-2 15:43
两个10K电阻串联,分供电电压,入AD,不就出来了吗

你这样测量出来ad值永远是量程的一半,
回复

使用道具 举报

31

主题

71

帖子

0

精华

初级会员

Rank: 2

积分
133
金钱
133
注册时间
2018-4-22
在线时间
17 小时
 楼主| 发表于 2018-5-2 15:57:20 来自手机 | 显示全部楼层
gotofly21 发表于 2018-5-2 15:36
测量基准源,比如用2.5V基准电压(前提低于供电电压), ad得到一个值 ,然后反算出ref就是你的供电电压

我有点不太明白具体的操作方法,ad得到一个值是什么意思?反算出ref是什么意思?可以讲解下吗?大二要我们提前用32,但是单片机是大三教的,所以现在有点懵逼,刚自学没多久
回复

使用道具 举报

49

主题

341

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5265
金钱
5265
注册时间
2012-8-25
在线时间
1025 小时
发表于 2018-5-2 16:01:02 | 显示全部楼层
lululu123 发表于 2018-5-2 15:57
我有点不太明白具体的操作方法,ad得到一个值是什么意思?反算出ref是什么意思?可以讲解下吗?大二要我 ...

无能为力。去百度 ad转换 吧
回复

使用道具 举报

2

主题

123

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1472
金钱
1472
注册时间
2014-4-8
在线时间
172 小时
发表于 2018-5-3 10:46:59 | 显示全部楼层
gotofly21 发表于 2018-5-2 15:45
你这样测量出来ad值永远是量程的一半,

基准是固定的,怎么永远是一般呢??
回复

使用道具 举报

17

主题

119

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
466
金钱
466
注册时间
2018-4-26
在线时间
78 小时
发表于 2018-5-3 13:20:43 | 显示全部楼层
AD转换啊,如果有引脚专门测电压的直接AD 测出来在计算一波就好了
回复

使用道具 举报

49

主题

341

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5265
金钱
5265
注册时间
2012-8-25
在线时间
1025 小时
发表于 2018-5-3 13:56:34 | 显示全部楼层
本帖最后由 gotofly21 于 2018-5-3 13:59 编辑
jackielau 发表于 2018-5-3 10:46
基准是固定的,怎么永远是一般呢??

基准固定?请问基准是多少呢?基准就是供电电压啊,你3v供电 分压出来1.5v  ad值 12位   4095*1.5/3  ,一半。2v供电  分压出来1v  ad值 12位   4095*1/2 . 请供电电压是多少呢
回复

使用道具 举报

2

主题

123

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1472
金钱
1472
注册时间
2014-4-8
在线时间
172 小时
发表于 2018-5-5 10:12:37 | 显示全部楼层
单片机AD有的需要单独基准,有的就用VDD,我说的方法对于前者,如果是后者你可以将AD的一个通道或者串联电阻接在基准上,这样也就变相的测量了VCC了
回复

使用道具 举报

2

主题

123

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1472
金钱
1472
注册时间
2014-4-8
在线时间
172 小时
发表于 2018-5-5 10:12:57 | 显示全部楼层
无基准无测量
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-7 14:42

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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