1425|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

单片机如何通过ADC模块采集模拟信号 [复制链接]

单片机的ADC接口属于模数转换接口,将外部的模拟量信号转化为数字信号,单片机属于数字器件,需将模拟信号转化为数字信号才能够为单片机处理。目前市场的很多单片机都自带ADC转换接口,若无ADC转换接口,可以使用ADC数模转换芯片外扩。


  ADC模块是将模拟信号转化位数字信号,数字信号用0和1表示,ADC模块有参考电压,假设给的参考电压是5V,ADC是12位的(几位表示用二进制几位数存储模拟量转化后的数字量,12位的ADC则可储存数字量范围为:(二进制)000000000000~111111111111,转换为十进制数字范围为0~2^12即0~4095。
  也就是说把参考电压分为2^12份即4096份,最小分辨率为VREF/4096。


  也就是说二进制的000000000000代表输入模拟量0V,而111111111111代表最大值VREF。
  下面以上图C8051单片机为例子,如原理图所示,该单片机工作电源为3.3V,参考电压为2.048V,所以模拟量的输入范围为0~2.048V。若所需采集的电压范围大于参考电压值时,可以使用电阻分压进行降压或者使用运放进行缩小等。
  该单片机ADC为12位的。也就是说输入电压为0时,单片机转换后的数字量结果为000000000000(二进制),当输入电压为2.048V时,单片机转换后的数字量结果为111111111111(二进制),十进制为4095。
  也就是说,输入电压的值V=2.048×ADC采集到的数字量÷4095。
  比如我们要采集一个0~10V范围的模拟量电压进行显示,那么,可以先将0~10V的电压缩小5倍,可以使用电阻分压,也可以采用运放缩小等方式,然后接入单片机的ADC采样口,可以接入上图的P2.2口。
  最后换算公式为:V = result * 2.048/ 4095 * 5;其中 result为单片机采集到的数字量。

 
点赞 关注

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表