ADC0809输入端接地,转换结果吧为0,怎么回事,该怎么解决?

如题所述

地分数字地和模拟地,你0809的输入端肯定是模拟信号,你接模拟地,模拟地必须和数字地之间有隔离,否则会受到数字地干扰,电压就不是零了,这样你的0809输出肯定不是零,你最好在硬件电路上将数字地和模拟地隔离,否则你就要进行补偿,当然软件补偿要方便得多。就跟秤一样,你现在模拟地有了一定的电位,就相当于一个电子秤上有了托盘,你要把它的重量减去,作为零基准,才能知道被测量的真实值。你看接模拟地每次输出的值是多少,如果基本固定,就用软件在转换结果上减去这个值,就实现了补偿修正。追问

结果很稳定,数值为41(十进制),数字地和模拟地怎么隔离?

追答

0Ω电阻,磁珠,小电感,不过我以前还是用0Ω电阻多,你可以上百度搜一下关于数字地和模拟地的隔离,总之,一个电路,所有的模拟地接一起,所有的数字地接一起,然后模拟地和数字地经由一点连接,既然是41,那你就在0809的转换结果里减去00101001就行。不过这两种方法应配合使用,模拟地与数字地分开是硬件抗干扰,而我给你说的这个方法是软件抗干扰,养成这种意识就好了。

追问

还要麻烦这位大侠,现在电路改进了,模拟输入端接地,显示20,模拟输入端接最高参考电压,显示255,现在的问题是,模拟输入端电压从0缓慢变到最高参考电压,中间显示数据不是连续的,好像中间数据有卡点一样,比如卡在85,改变模拟量电压,显示不变化,模拟量继续变化到最高参考电压时,显示一下跳跃到255,不知道怎么回事?

追答

正常情况下应该不会出现你说的这种问题的,所以我怀疑你的程序有问题,你用的51单片机吗?你不行改变一次电压,复位一次单片机,再看数据对不对,我好久没搞这些了,我记得AD,DA使能端,时钟这些配合很重要,是上升沿触发采样还是高电平采样我都记不住了,你好好看看时钟逻辑,先写最简单的程序,就读一次数进行显示,然后你每调一次电压,就执行一遍程序,如果没问题,再扩展你的程序,保证调整时是单一变量,这样才能找到问题究竟出在哪里,你刚开始先要建立这种意识,如果一开始就做的太复杂,出了问题你会找不到突破口的,不管是程序还是电路,都要先化整为零,再进行组合,这种意识一定要有,学武功学了招式还要学心法不是?有点废话了,不过希望我的经验能帮助到你。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-09-25
这个不为零的结果是多少呢?是不是稳定?结果不为零应该还是挺正常的,因为地上的电平有干扰。只要结果稳定就好。追问

结果很稳定,数值为41(十进制),数字地和模拟地怎么隔离?

第2个回答  2020-01-18
我想要比较完整的程序,程序包刮“启动a/d转换”----“数据扩展”----“二进制数值转换成bcd码”---最后用“液晶显示子程序”。请高手能给我比较完整的程序。器件就是adc0809
,8259,62256.不要用单片机器件。谢谢了啦!!!!
第3个回答  2012-09-25
发生了什么情况?
相似回答