算算看,有点意思!很有意思!!
如图,三个电阻R1、R2、R3串联,R1接电源,R3接地,从R2、R3的连接点分压到单片机做模数转换.问题:三个电阻要怎样取值,当三个电阻分别短路和都不短路四种状态,使单片机最容易分辩?看起来简单,做起来复杂哟!!!,不信你试试.https://bbs.21ic.com/upfiles/img/20078/200783184718960.jpg你这接法太差劲,可以有8种状态的哦
to xwj
8种?没有必要.只需要三个电阻分别短路和都不短路共四种状态就行了,一种特殊场合只能这样用.这已经够你算了.算起来真的很复杂.我们几个人一直没有找到答案.这还有难度啊,取这样的标题,该被骂
理论上上面二个电阻只要不是相同的阻值随便怎么取值都可以分辨出你说的四种状态下的不同电压值.这个还有疑问还算是搞电子的???!!
设 R2=2R1,R3=R1,则:<br />R1短路, Vadc=Vcc/3R1*R1=Vcc/3<br />R2短路, Vadc=Vcc/2R1*R1=Vcc/2<br />R3短路, Vadc=GND<br />都不短路,Vadc=Vcc/4R1*R1=Vcc/4<br /><br />to linxinchun 东尧
4楼请看懂我的意思.不懂还要骂人.随便选取在个电阻,用一个无限位的ADC当然可以做到.我是说用最小位的ADC,比如8位ADC,精度只有1/32,就分不出来了.<br />理论上,分成0,Vcc/4,2Vcc/4,3Vcc/4效果最好,每级差VCC/4,变成用2位ADC就可以了.但你不可能分压得到这个理想值.<br />按东尧的阻值方案,通分后成:0, 3/12, 4/12, 6/12。在3/12, 4/12之间,只差1/12,差别太小,而在6/12以上则浪费没有用到。所以明显不是最好的方案。举例:R1=R;R2=2R;R3=3R时(0,3/4,2/5,1/2),差别最小一级是1/10,这个的效果也比你的都好。<br />肯定还有更好的方案,不知最终正确的答案是多少????LZ还叫板了,呵呵!
从上向下数,4个触点分别为1、2、3、4<br />1)1--3 Vadc=Vcc=5V<br />2)3--4 Vadc=Gnd=0V<br />3)1--2 Vadc=(R3/(R2+R3))Vcc=2/3Vcc<br />4)2--3 Vadc=(R3/(R1+R3))Vcc=1/3Vcc<br />取值:<br />R1=2*R3<br />R3=2*R2说你还不服,8位的ADC精度是1/32啊?
比8位更小的几乎找不到了,电阻随便凑也够你用的,折腾什么啊.to conwh
我说的是,三个电阻分别短路三种情况(每次只短路一个)加上都开路一种情况.即1-2,2-3,3-4,OFF,没有1-3一次短路两个电阻的情况,所以,你的不是我要的答案.否则太简单了.TO 8楼
是我写错了,8位ADC精度是1/256.我是说,实际应用当然可以挑选电阻值,做到能用.但如果电阻没有选好,加上电阻的误差,还是比较容易误判.所以理论上一定有一个最佳答案.就当这是一个数学题.我们现在探讨的就是这个问题.我怎麽沒看出來? - -#
yun men
郁闷,一键飞梭,<br />唉现在的人啊,九条牛都拉不回来.......,牛得再也不能牛了,可能是.....唉,要说的话给楼上抢先了
xjz2000 发表于 2007-8-7 10:11 电路欣赏 ←返回版面 <br /><br />10楼: TO 8楼 <br /><br />我是说,实际应用当然可以挑选电阻值,做到能用.但如果电阻没有选好,加上电阻的误差,还是比较容易误判.所以理论上一定有一个最佳答案.就当这是一个数学题.我们现在探讨的就是这个问题.<br /> <br />--------------------------------<br />就算当数学题也无意义,按楼上几位说的动手实验看看再说。同意13楼
咱是搞工程的,就不必死抠数学啦。因为理论与实际永远存在差异,你算得再好做不出来还是一场空,能做出来就不管它是否合理论值了。就没有一个会算出答案的吗?
我已经说过,这是一个特殊环境,容易受到干扰。当然要选取四种状态尽可能电压差别大的,能抗100V的干扰与抗1000V就是不一样.搞工程就是要精益求精。什么叫死抠数学,理论不会计算就去实验那叫蛮干。我承认理论与实际存在差异,但这个简单的电阻的串联,理论与实际差异可以忽略不计.晕...这种东西还需要专门来计算...
不知道对不?
设电阻分别为X Y Z,电压为z/(x+y+z)、z/(z+y)、z/(x+z)它们的值接近1/4、2/4、3/4,设min为它们对应相减的绝对值之和,当min值最小时应该就是最优解,可解得当x:y:z的比为1:3:3时min最小。<br />要完全达到1/4、2/4、3/4是不可能的,方程此时无解。不好意思
上面的有点错,min最小不一定是最优解顶一下
我不会用MATLAB呀,不然画个三维曲面图应该可以找到最佳点怎么没人说话了
我证明了一下,不可能同时满足三个差值都大于1/5,即z/(x+y+z)、<br />z/(z+y)-z/(x+y+z)、z/(x+z)-z/(z+y)不可能同时满足大于1/5.<br />我写了个程序在一百内取整数,最大为0.12,即X=97,Y=60,Z=96,能得到差分别为(0.38,0.12,0.12)*5,三个压值依次为0.6V,1.2V,3.2V,它接近1/8不知道这个值够用不?
页:
[1]
2