使用IO口检测电源电压的转换逻辑

使用IO口检测电源电压主要是用于大功耗产品,电池电压会随着功耗的增大而变化,这个时候就要使用IO口来检测电压的变化。

我们能够得到的是芯片IO口检测到电压的数字值,需要将其转换为实际的电压值方法如下:
V为IO口检测到的实际电压(模拟值),vbat 为IO口电压换算之后的值,3.3是设置芯片IO口输入或者的最大电压值(实际可能会有偏差),255是软件储存电压变量的最大值,能够得到一个算式:3.3/255=V/Vbat,转换之后:V = ( 3.3 * Vbat ) / 255。V为一个模拟值,并不是我们计算需要的元素,所以需要将其消除,因此需要另外一个算式。
另外一个算式需要根据硬件计算,硬件连接如下:
在这里插入图片描述
Vdd为电池电压,V为IO口检测的电压,R1和R2为硬件所接的电阻,换算方法:VDD / V = ( R1 + R2 ) / R2,变形之后得到:V = ( R2 * Vdd ) / ( R1 + R2 )。

上面两个算式左边的意义相同,所以能够将无用的元素V去掉,右边相等,得到:( 3.3 * Vbat ) / 255 =( R2 * Vdd ) / ( R1 + R2 ) ,变形之后得到:Vdd = ( 3.3 * ( R1 + R2 ) * Vbat ) / ( 255 * R2 ),这样我们就将软件和硬件结合起来了,也可以根据需要修改电阻大小。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值