打印

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

[复制链接]
2256|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
snakeemail|  楼主 | 2007-11-19 10:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现在我的AD是10bit,那么mcu认为的0v应该是512,-2.5V是0,+2.5V是1023,
则: 实际电压 = AD采样值 - 512.
问题是:把电压上抬的2.5v是不准的,例如在正半波513时,理想应该是513 - 512 = 1,可是如果抬高的-2.5V不准的话,采到的AD值为511,那么511 - 512 = -1,符号完全反了。
解决的方法:现在的方法是开机时我就测0点,以后就用这个0点,而不是直接减512
请问还有什么方法

相关帖子

沙发
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,直接求它的绝对值

使用特权

评论回复
5
computer00| | 2007-11-20 09:36 | 只看该作者

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

楼主有个弯没饶过来。

你最后的结果就是-1了,还管它在里面怎么表示做什么?

使用特权

评论回复
6
snakeemail|  楼主 | 2007-11-20 12:35 | 只看该作者

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

使用特权

评论回复
7
tjsheep| | 2007-11-20 22:29 | 只看该作者

呵呵,补码,补码啊

使用特权

评论回复
8
hotpower| | 2007-11-20 22:31 | 只看该作者

取反加一

使用特权

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

本版积分规则

547

主题

1910

帖子

8

粉丝