TIM5_CH2通道测电容遇到的问题

2019-08-17 04:05发布

最近在看原子哥写的电容触摸按键的实验,按照实验例程实现了Tpad功能。但是看文章开始的介绍,可以利用这个功能实现一个电容计,于是开始倒腾了一下。
      首先把TPAD和ADC口的跳线帽去掉,相当于TPAD不用了,在ADC和GND之间接一个电容,然后每次程序复位,会得到一个tpad_default_val,即捕获时间t。然后想根据公式Vc=V0*(1-e^(-t/RC))来计算出电容C。电阻R已知,为5.1M。但是根据文章的介绍Vc为电容电压,V0为充电电压,那这两个电压分别是多少呢?
      我个人理解这两个电压都为3.3V,那么带入公式3.3=3.3*(1-e^(-t/RC)),那e^(-t/RC)岂不是等于0了?这样怎么计算呢?我按照文章结尾给出的一组数据,tpad_default_val为70,Cs为27pF,计算的结果为Vc=V0*0.399。

    还望各位大神点拨点拨啊。


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
正点原子
1楼-- · 2019-08-17 09:52
V0是充电电压,就是3.3V
Vc是达到STM32 IO口能认为是高电平的最小电压,查STM32的数据手册,可知,是:2V
然后你可以通过定时器测得时间,然后还知道电阻,自然可以求出电容C。
盲流
2楼-- · 2019-08-17 14:07
那个公式是电容充电公式,可以从网上找到详细解释;充电电压与电容电压是不等的。。充电电压随你充电时间变化而变化;你现在的充电时间才70us,这个时候肯定充电电压不会与电容电压相等;所以UC才只有0.399U0;个人见解,不知道是不是对;
guo6339419
3楼-- · 2019-08-17 15:18
 精彩回答 2  元偷偷看……

一周热门 更多>