普通单片机IO实现多路低成本AD方法,大家可以考虑一下,用软件如何实现???
http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_194494.jpg 原理图设计有疑问和问题请联系13811129591 Email:heciang@126.com QQ:176780142,另外有更低成本的8位AD实现方法,需要资料请跟贴. up 想听听你的方法 1.VD1,VD2,R2,V2,R3 组成一个恒流源用于对C1电容充电
2.V2 是电容放电控制
程序流程:
打开V2,放电C1,首先4051切到Vref,关闭V2,定时器清零,开定时器,充电计时直到比较器翻转,记下定时器的时间 为T1;
打开V2,放电C1,4051 切到某一路电压上,关V2,定时器清零,开定时器,。。。。。。。。,记下定时器的时间为T2;
然后有
Vref/Vx = T1/T2;
估计原理就是这样的吧。
不过那个三极管做的恒流源的线性度不会很好,很影响测量精度,改成运放来做比较合适。 我的问题是:既然有基准电源,何不串一个电阻做恒流源?是不精确吗?还是TL431功率不够? 基准电压串电阻能做恒流源? 啥理论啊? 就是电压一定,流过这个电阻的电流也一定呀,请指教。 C1上的电压不是恒定的,是一点一点上升的,因为在充电,(Vref-Vc1)/R能恒定吗? 单片机带的AD的成本已经不高了,差不多比上述电路还便宜。而精度有比上述电路好多了。。。 谢谢,明白了。我提这个问题的原因是: 想尽量简化电路,有两个电路可以参考。
1:“极简单的测温电路”
2:“LED Sensor”
只是个人想法。 其实这就是自己实现一个双积分的A/D,恒流源和比较器可以用LM358或LM324一片完成。我做过一个,线性度不是很好,可以做了7,8bit吧,当然如果再配合软件校准,差不多可以做到10bit。 对于没有ad的51还可以,对avr 的确没什么用,mega48才6块钱,啥都有了。 极简单的测温电阻只要三个电阻和一个电容~~~其中一个是热敏电阻
http://cache.amobbs.com/bbs_upload782111/files_9/ourdev_194532.JPG 用运放应该精度会比较高的 这什么不用sigma-delta 楼主的方法不可取,这个恒流电路受温度变化特别大。
12楼的方法可取,但必须要注意,这个单片机的IO口必须是MOS驱动输出和内部不带有上拉电阻。 这样很准确的
页:
[1]