AD只能进0-5V,so把正负的正弦波抬高2.5V,可2.5V的中点如何校正?

[复制链接]
 楼主| snakeemail 发表于 2007-11-19 10:03 | 显示全部楼层 |阅读模式
现在我的AD是10bit,那么mcu认为的0v应该是512,-2.5V是0,+2.5V是1023,<br />则:&nbsp;实际电压&nbsp;=&nbsp;AD采样值&nbsp;-&nbsp;512.<br />问题是:把电压上抬的2.5v是不准的,例如在正半波513时,理想应该是513&nbsp;-&nbsp;512&nbsp;=&nbsp;1,可是如果抬高的-2.5V不准的话,采到的AD值为511,那么511&nbsp;-&nbsp;512&nbsp;=&nbsp;-1,符号完全反了。<br />解决的方法:现在的方法是开机时我就测0点,以后就用这个0点,而不是直接减512<br />请问还有什么方法<br /><br />
tjsheep 发表于 2007-11-19 10:25 | 显示全部楼层

-1也不要紧啊,也就是0点负漂移1,

如果+1就是正漂移1,不严重啊
 楼主| snakeemail 发表于 2007-11-19 13:43 | 显示全部楼层

511 - 512 = -1,而-1在mcu里表示为65535,而1表示为1呀

  
 楼主| snakeemail 发表于 2007-11-20 09:12 | 显示全部楼层

实际电压 = AD采样值 - 512,直接求它的绝对值

  
computer00 发表于 2007-11-20 09:36 | 显示全部楼层

如2楼所说,-1和1只是偏差一点而已,没关系的啊

楼主有个弯没饶过来。<br /><br />你最后的结果就是-1了,还管它在里面怎么表示做什么?
 楼主| snakeemail 发表于 2007-11-20 12:35 | 显示全部楼层

我现在想到了,算的时候就是按负数算,

  
tjsheep 发表于 2007-11-20 22:29 | 显示全部楼层

呵呵,补码,补码啊

  
hotpower 发表于 2007-11-20 22:31 | 显示全部楼层

取反加一

  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

547

主题

1910

帖子

8

粉丝
快速回复 在线客服 返回列表 返回顶部