RT-Thread设备框架使用指南——ADC 设备

ADC 简介


ADC(Analog-to-Digital Converter) 指模数转换器。是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。模数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影。与之相对应的 DAC(Digital-to-Analog Converter),它是 ADC 模数转换的逆向过程。ADC 最早用于对无线信号向数字信号转换。如电视信号,长短播电台发接收等。

转换过程

如下图所示模数转换一般要经过采样、保持和量化、编码这几个步骤。在实际电路中,有些过程是合并进行的,如采样和保持,量化和编码在转换过程中是同时实现的。

ADC 转换过程

采样是将时间上连续变化的模拟信号转换为时间上离散的模拟信号。采样取得的模拟信号转换为数字信号都需要一定时间,为了给后续的量化编码过程提供一个稳定的值,在采样电路后要求将所采样的模拟信号保持一段时间。

将数值连续的模拟量转换为数字量的过程称为量化。数字信号在数值上是离散的。采样保持电路的输出电压还需要按照某种近似方式归化到与之相应的离散电平上,任何数字量只能是某个最小数量单位的整数倍。量化后的数值最后还需要编码过程,也就是 A/D 转换器输出的数字量。

分辨率与量化误差

分辨率是衡量 A/D 转化器分辨输入模拟量最小变化程度的指标。分辨率以输出二进制(或十进制)数的位数来表示,它说明模数转换器对输入信号的分辨能力,一般有8位、10位、12位、16位等。在最大输入电压(参考电压)一定时,输出位数愈多,分辨率愈高。例如模数转换器输出为 8 位二进制数,输入信号最大值为 5V,那么这个转换器应能区分出输入信号的最小电压为 19.53mV(1 LSB),计算方法为:5/256 = 19.53mV。也就是低于 19.53mV 的输入电压的输出值都为0。如果模数转换器输出为 12 位二进制数,则输入信号最大值为 5V 对应的能区分的最小电压为:5/4096 = 1.22mV(1 LSB)。从 2 个最小电压来看位数越高能采集到更小的电压。

量化误差是由 A/D 转换器有限字长数字量对输入模拟量进行离散取样(量化)引起的误差。其大小在理论上为一个单位(1 LSB)。提高分辨率可以减小量化误差。

转换速率

转换速率是指 A/D 转换器在每秒钟能完成的转换次数。转换时间为 A/D 转换从启动到结束所需的时间,转换时间和转换速率互为倒数。例如,某 A/D 转换器的转换速率为 1MHz,则转换时间为 1 微秒。

访问 ADC 设备

应用程序通过 RT-Thread 提供的 ADC 设备管理接口来访问 ADC 硬件,相关接口如下所示:

函数原型
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值