A/D转换原理
模拟信号:模拟信号是指用连续变化的物理量所表达的信息,如温度、湿度、压力、长度、电流、电压等,故常称模拟信号为连续信号
数字信号:数字信号的取值是离散的、不连续的信号、
转换过程:
模拟信号由传感器转换为电信号,经过放大送入AD转换器转换为数字量

采样过程:采样–>保持–>量化–>编码

A/D转换性能指标:转换精度,转换速度
分辨率:是指一个ADC转换的精度,位数越高转换的精度则越高
转换时间:是指A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间
参考电压:模数转换器的参考电压是将模拟电压值转换为数字值的电压基准。由于数字信号本身不具有实际意义,仅仅表示一个相对大小,故任何一个模数转换器都需要一个参考模拟量作为转换的标准

A/D转换器和D/A转换器是模拟量输入和模拟量输出通路中的核心部件。在实际控制系统中,各种非电物理量需要由各种传感器把它们转换成模拟电流或电压信号后,才能加到A/D转换器转换成数字量。
一般来说,传感器的输出信号只有微伏或毫伏级,需要采用高输入阻抗的运算放大器将这些微弱的信号放大到一定的幅度,有时候还要进行信号滤波,去掉各种干扰和噪声,保留所需要的有用信号。送入A/D转换器的信号大小与A/D转换器的输入范围不一致时,还需进行信号预处理。

ADC
ADC精度:为12位
频率:ADC的输入时钟不得超过14MHz,其时钟频率由PCLK2分频产生。
电压范围:根据具体的参考电压,有1.8V,3.3V等具体看手册
触发源:1、直接配置寄存器触发(寄存器CR2的ADON位置1触发),2、通过内部定时器或外部IO触发转换(CR2寄存器控制)
采样保持:
所谓采样就是将一个时间上连续变化的模拟量转化为时间上离散变化的模拟量。将采样结果储存起来,直到下次采样,这个过程叫作保持。
量化和编码
模拟信号通过ADC转换成数字信号的这一过程称为量化,由于量化输出的数字信号位数有限,所以输出的数字信号和你采样得到的模拟信号会有一个误差,被称为量化误差,
分辨率
数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2n的比值。分辨率又成精度,通常以数字信号的位数来表示。
转换速率
转换速率是指A/D转换一次所需要时间的倒数,即单位时间内完成A/D转换的次数
采样速率
采样速率是两次采样(两次转换)的间隔时间的倒数,为了保证转换的正确完成,一般采样速率必须小于等于转换速率,即采样时间大于等于转换时
电压转换公式:
volt = 3.3* x / 4096
3.3为参考电压,x为寄存器输出的二进制 数值,4096为2^12(因为adc为12位)
Adc类型:
并联比较型ADC:采用各量级同时并行比较,各位输出码也是同时并行产生,所以转换速度快。并联比较型ADC的缺点是成本高、功耗大。

逐次逼近型ADC:它产生一系列比较电压VR,但它是逐个产生比较电压,逐次与输入电压分别比较,以逐渐逼近的方式进行模数转换的。它比并联比较型ADC的转换速度慢,比双分积型ADC要快得多,属于中速ADC器件。

双积分型ADC:它先对输入采样电压和基准电压进行两次积分,获得与采样电压平均值成正比的时间间隔,同时用计数器对标准时钟脉冲计数。它的优点是抗干扰能力强,稳定性好;主要缺点是转换速度低。

转换:
转换模式:单次、连续、扫描或间断执行
单次转换模式:在单次转换模式下,ADC只执行一次转换。该模式即可通过设置ADC_CR2寄存器的ADON位启动,也可通过外部触发启动,此时CONT位置0
连续转换模式:在连续转换模式中,当前面ADC转换一结束马上就启动另一次转换。此模式可通过外部触发启动或通过设置ADC_CR2寄存器上的ADON位启动,此时CONT位置1
扫描模式:通过ADC_CR1 寄存器设置,ADC扫描所有规则通过和注入通过所选择的通道。每个组的每个通道执行单次转换,直至最后一个通道上停止
转换时间:
1、 输入时钟:ADC得时钟是由PCLK2(72MHz)经过分频得到的,分频因子由 RCC 时钟配置寄存器RCC_CFGR,可以是 2/4/6/8 分频,一般配置分频因子为8,即8分频得到ADC的输入时钟频率为9MHz。
2、 采样周期:配置采样周期可以确定使用多少个ADC时钟周期来对电压进行采样,以寄存器ADC_SMPR1 或ADC_SMPR2 控制
3、 转换公式:
转换时间=采样时间+12.5个周期
12.5个周期是固定的,一般我们设置 PCLK2=72M,经过 ADC 预分频器能分频到最大的时钟只能是 12M,采样周期设置为 1.5 个周期,算出最短的转换时间为 1.17us。
转换顺序:
1、 规则通道中的转换顺序由SQR寄存器控制着转换通道的数目和转换顺序
2、 注入通道的转换由JSQR寄存器来控制

存储
存储:ADC转换的结果可以左对齐或右对齐储存在16位数据寄存器中
数据存储:转换完成后的数据就存放在数据寄存器中,1、规则通道数据存储于ADC_DR寄存器,2、注入通道转换的数据寄存器有4个,由于注入通道最多有4个,所以注入通道转换的数据都有固定的存放位置,不会跟规则寄存器那样产生数据覆盖的问题。 ADC_JDRx 是 32 位的,低 16 位有效,高 16 位保留
存储数据注意事项:
1、 ADC转换的精度是12位,而寄存器中有16个位来存放数据,所以要规定数据存放是左对齐还是右对齐,当使用多个通道转换数据时,会产生多个转换数据,然鹅数据寄存器只有一个,多个数据存放在一个寄存器中会覆盖数据导致ADC转换错误,所以我们经常在一个通道转换完成之后就立刻将数据取出来,方便下一个数据存放。一般开启DMA模式将转换的数据,传输在一个数组中,程序对数组读操作就可以得到转换的结果。

通道
通道:ADC的信号输入就是通过通道来实现的,信号通过通道输入到MCU中。每个ADC最多有16个外部通道。其中ADC1和ADC2都有16个外部通道,外部的16个通道在转换时又分为规则通道和注入通道,其中规则通道最多有16路,注入通道最多有4路,ADC3一般有8个外部通道,每个通道对应着不同的IO口
规则通道
规则通道顾名思义就是,最平常的通道、也是最常用的通道,平时的ADC转换都是用规则通道实现的。

注入通道
注入通道是相对于规则通道的,注入通道可以在规则通道转换时,强行插入转换,相当于一个“中断通道”吧。当有注入通道需要转换时,规则通道的转换会停止,优先执行注入通道的转换,当注入通道的转换执行完毕后,再回到之前规则通道进行转换。

物联沃分享整理
物联沃-IOTWORD物联网 » ADC总结

发表评论