模拟技术
大家好,我是电子干货。
今天给大家简单介绍一下ADC器件的常识。ADC,模数转换器,功能是把模拟电压转换成数字量。
概念听的模糊,说点实际的吧:把你要测的电压那条线,连接到ADC的用来测试电压的引脚上,ADC模块就会检测到这个电压,并且自动转换成一个数字,我们读出这个数字,然后知道这个数字和电压的对应关系,就可以知道现在的电压是多大了。
有些单片机内部有ADC模块,在单片机外部引出测试用的ADC引脚。有些单片机内部没有ADC模块,可以用单独的ADC芯片,单独的ADC芯片一般留有与单片机通信的接口,常见的是8位并口、I2C口、SPI口。单片机通过通信接口与外部ADC模块连接读取ADC芯片的转化值。
分辨率
不管是单片机内部的ADC,还是独立的ADC芯片,都有一个分辨率指标。一般的分辨率有8位、10位、12位、16位、24位。先要知道,位就是bit,就是计算机界最小的单位,8个位是1个字节。
为什么“位”可以表示分辨率?
假设一个我们要测一个0~5V的电压信号。
用8位分辨率的ADC测,输入电压是0V时,得到的数字是0,输入电压是5V时,得到的数字是255。
用12位分辨率的ADC测,输入电压是0V时,得到的数字是0,输入电压是5V时,得到的数字是4095。
8位的ADC,得到的数字每增加1,实际上电压增加5/256=0.0195V。
12位的ADC,得到的数字每增加1,实际上电压增加5/4096=0.0012V。
假设,现在要测一个0.015V的电压,8位的ADC得到的数字,就是1,当你得到1的时候,只能认为是1*5/256=0.0195V的电压。
那如果用12位的ADC测0.015V的电压的话,得到的数字就是12或者13,如果是12的话,我们转化一下,就会认为是:
12*5/4096=0.0147V
如果得到的数字是13的话,我们转一下,就会认为是:
13*5/4095=0.0159V
对比一下数字,就可以看出来,位数越高的分辨率,就可以测得更精确的电压。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !