打印
[牛人杂谈]

RC充放电模拟ADC

[复制链接]
1482|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
如图 2-1的模型1所示,这是温度测量的常用方法。R1为固定电阻,R2为热敏电阻。当温度变化时,R2阻值发生变化,因而A点电压随之改变,利用AD功能可以测出A点电压,从而计算出R2的阻值,最终得到温度值。
本范例不使用AD功能,利用普通IO口对电容充放电来模拟AD功能,测出热敏电阻的阻值。如图 2-1的模型2所示,R3为热敏电阻,C1为充电电容,R4是放电时用作限流保护的小电阻。具体做法如下:
(1) IO1和IO2输出0,C1放电。
(2) IO1设置为输入,IO2输出高电平,开始充电,同时,计时器开始计时。
(3) 不断读取IO1的端口值,当其由0变为1时,计时器停止计时。
(4) 计算出充电时间。
热敏电阻的阻值随着温度不断变化,所以充电时间也随着阻值而改变,特定的阻值对应于特定的充电时间,因而我们可以根据充电时间得到热敏电阻的阻值,最终得到温度值。


沙发
yiyigirl2014|  楼主 | 2017-5-8 14:17 | 只看该作者
充电时间的理论计算
设芯片的高电平门限为U(约2.6V),充电电压为5V,热敏电阻在某一时刻阻值为R,充电电容为C,则电容C两端电压从0V充到U所用时间t的计算式为:

下面根据5k热敏电阻计算出的充电时间。其中充电电压为5V,IO口从“0”变为“1”的门限电压是2.6V。


使用特权

评论回复
板凳
yiyigirl2014|  楼主 | 2017-5-8 14:17 | 只看该作者
图 2-2是电阻和温度的曲线图,这是一个负温度系数的热敏电阻。图 2-3是充电时间和温度的曲线图,温度越高,充电时间越短。

使用特权

评论回复
地板
yiyigirl2014|  楼主 | 2017-5-8 14:19 | 只看该作者
电容的种类与选取
电容的种类有很多,可以从原理上分为:无极性可变电容、无极性固定电容、有极性电容等,从材料上可以分为:CBB电容(聚乙烯),涤纶电容、瓷片电容、云母电容、独石电容、电解电容、钽电容等。下表是各种电容的优缺点:


CBB电容的漏电流和温度的稳定性和精度较好,建议选取CBB电容。

使用特权

评论回复
5
734774645| | 2017-5-8 16:01 | 只看该作者
方法不错,学习了。

使用特权

评论回复
6
dongnanxibei| | 2017-5-8 17:21 | 只看该作者
如果是ADC不够用时候貌似可以这么玩。

使用特权

评论回复
7
heisexingqisi| | 2017-5-8 21:00 | 只看该作者
学习一下,这个精度不知道如何。

使用特权

评论回复
8
yiyigirl2014|  楼主 | 2017-5-14 14:57 | 只看该作者
计时器的应用好多啊,如果能会用,那一个定时器就能实现很多。

使用特权

评论回复
9
天灵灵地灵灵| | 2017-5-16 14:41 | 只看该作者
如何用三极管做USB给电池充电的指示灯电路,不用MCU的ADC。

使用特权

评论回复
10
捉虫天师| | 2017-5-16 16:23 | 只看该作者
只有温度会影响这个。

使用特权

评论回复
11
yiyigirl2014|  楼主 | 2017-5-20 18:47 | 只看该作者
在ADC不足的时候,要求又不高,就可以用过这个方式实现。

使用特权

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

本版积分规则

199

主题

3461

帖子

10

粉丝