【求助】AD转换:输入模拟电压2.5V,转换后的数字数值是多少?

AD的基准电压时3V,位数是10bit。如果读出是数字是500,则模拟的输入电压又是多少?
Notice:如方便,请最好说明解题的方法,授人以渔,谢谢。。。

AD转换结果,除了与输入电压有关,还与所选用的AD的位数有关,与所选用的基准电压也有关系。

已知输入电压是2.5V,假设,选用的AD是10位的,基准电压是5V。理论上,2的10次方是1024,2.5V是5V的一半,所以,得到的结果是512左右。反之,如果知道基准电压是5V,10位AD的结果是512,可以推出输入电压是 5V * ( 512 / 1024 ) =2.5V。

 

这里还有几个问题要说明一下

 

    当输入电压达到基准电压时,AD的输出结果应该是1023,不可能出现1024,因为1024用二进制表示是11位数字。但计算的时候,用1024计算比较方便。

    有些AD为了兼容性的考虑,对转换结果进行了一些处理,比如左对齐到16位处理,这样在使用的时候可以让10位AD与12位、16位AD的结果一致,可以使用同样的程序。

    还有的AD,可以输入的电压范围不是从0V开始的,比如输入范围是-5V到+5V,这个时候尤其需要搞明白输出的格式。通常,可以使用补码表示转换结果,用负数表示负电压,用正数表示正电压。但还有的使用移码,用0表示负电压,用中值表示0电压。

 

回到问题,AD输入的电压,与输出的数字之间必然有一个转换规律,通常可以用这种形式表示:

输出数字=(量程最大值-量程最小值)* [ (输入电压-电压最小值)/ (电压最大值-电压最小值)]

如果最小值是0,电压最大值是基准电压,式子可以简化:

输出数字=量程最大值 *  (输入电压 / 基准电压)

其中,量程最大值通常由AD位数决定,假设有AD位数为N,最大值就是(2的N次方减1),但一般可以使用2的N次方进行计算时,程序效率会高一些。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-04
10位AD的话,满量程为1024,即输入3V输出1024;所以输出500时电压为500*3/1024=1.465V本回答被提问者采纳
第2个回答  2015-11-05
不知道你这是几位的AD,比如你是8位的AD,参考电压是5v,要测试5v转换后的数字就是2进制的11111111,同样的2.5v就是这2进制的一半
相似回答