基于C8051F060内置高精度模/数转换器的使用方法

发布时间:2023-10-30  

1 引言

在混合信号单片机中,美国Cygnal公司新推出的C8051F06X系列高集成度混合信号单片机可谓一枝独秀。C8051F06X是高度集成的片上系统单片机,它有多达59个数字I/O口,采用与8051兼容的内核CIP-51,速度高达25MI/s。该系列单片机有C8051F060/2型和C8051F061/3型,与同家族的其他单片机相比,其模拟外设性能优异,除有一个带可编程放大器和多路选择器的8路10位ADC外,还有两路采样速度可达1 MS/s的16位ADC,两路12位DAC,3个电压比较器,1个片内温度传感器和参考电压源等。本文仅以C8051F060型为例,着重介绍其高速、高精度模/数转换器的使用方法。

2 高精度模/数转换器

模/数转换接口由2路16位逐次逼近式ADC、集成采样保持器、一个可编程窗口检测器、一个DMA接口组成。ADC0/ADC1可配置成单端或差分输入方式。模/数转换的工作方式,窗口检测器和DMA接口均可通过特殊功能寄存器由软件控制,模/数转换器及其采样保持电路也可通过特殊功能寄存器单独设置,如图1所示。显然,转换启动方式灵活,软件事件、外部硬件信号和周期性的定时溢出都能用作触发信号,转换结束后,16位的结果锁存在SFR中,可由DMA接口将其存入片内或片外RAM。

2.1 单端/差分输入方式

ADCO和ADC1既可编程为单端输入方式独立工作,也可以设置为互相配合接收差分输入信号。采用单端输入方式时,ADC可配置为同步采样,或采用不同的转换速度。采用差分输入时,ADC1服从于ADC0,除零点和增益校准外,它的配置均基于ADC0。通道选择寄存器AMXOSL的DIFFSEL位用于选择单端和差分输入方式。差分输入时,输入到ADC的是一个伪差分信号,每个ADC的实际测量电压等于引脚AIN和引脚AINDG之间的电压。AINDG必须在-0.2V~0.6V之间,在大多数系统中,AINDG接到AGND,否则,AINDG信号会产生一个微小的负向偏置,建议用内部的校准功能解决。AINOG和AIN1G要可靠连接在一起,为了得到精确的转换结果,在两种方式下,AINn电位均应高于AINnG。


2.2 参考电压

ADC0和ADC1可以配置不同的参考电压电路,既可以使用片内精密参考电压源,也可以使用片外参考电压源。片内参考电压源电路由一个独立的温度稳定式带隙参考电压发生器产生1.25 V电压,再由一个缓冲放大器将其放大2倍,其最大负载电流不能大于100μA,建议在VREF端和VRGND端外接0.1μF和47 μF的旁路电容器。每个参考电压电路可由参考电压控制寄存器(REFnCN)分别控制,其中,BIASEn位控制参考电压发生器的使能,REFBEn位控制乘2缓冲器的使能。当禁止时,内部参考电压电路的耗电量为1μA,缓冲放大器呈高阻抗状态;当使用内部参考电压源时,这两个控制位均须置l;当使用外部参考电压源时,控制位REFBEn应置0。应该注意,不论使用何种参考电压源,当使用模/数转换器时,BIASEn位必须置1,不使用模/数转换器时,BIASEn位置0,以有利于降低能耗。

2.3 工作方式

ADC0和ADC1的最大转换速度为1 MS/s,转换时钟由系统时钟分频产生,并由ADCnCF型寄存器的ADCnSC位设定。

2.3.1 转换启动方式

对于ADC0,模/数转换的启动方法有4种,由ADC0CN型寄存器中的转换启动方式位AD0CMl/AD0CM0决定,这4种方式分别是给ADC0CN的AD0BUSY位写1;定时器2的溢出;定时器3的溢出;检测到外部ADC转换启动信号CNVSTR0的上跳沿。对于ADC1,模/数转换的启动方法有5种,由寄存器ADC1CN中的转换启动方式位AdlCM12-AD1CM0决定,这5种方式分别是给ADC1CN的AD1BUSY位写l;定时器2的溢出;定时器3的溢出;检测到外部ADC转换启动信号CNVSTR的上跳沿;给ADC0CN的AD0BUSY位写1。

在模/数转换过程中,ADnBUSY位被置1,转换结束后,该位被清零,如果允许中断,ADnBUSY信号的下降沿将触发中断,并置位ADnINT的中断标志位ADCnON.5。在单端方式,模/数转换的结果数据存放在ADCnH和ADCnL中;在差分方式,模/数转换的结果数据是ADC0与ADC1之和,存放在ADC0H和ADC0L中。当用给ADC0CN的AD0BUSY位写1的方法启动模/数转换时,应该查询ADnINT位,以便确定模/数转换何时完成,建议查询步骤为给ADnINT写0;给ADnBUSY写1;查询ADnINT位是否为l;处理ADC数据,当在差分方式且以外部信号启动模/数转换时,应将引脚CNVSTR0和引脚CNVSTR1连接起来。

2.3.2 采样保持方式

模/数转换的采样保持方式由ADCnCN型寄存器的ADCnTM位控制,一旦ADCn被启动,其输入将被连续采样,而这时转换尚未开始,当AdnTM位为1,转换开始进行,一个采样周期由18个SAR时钟组成。当用CNVSTRn信号启动转换时,ADC一直采样,直到引脚CNVSTRn上出现一个上跳沿为止。将AdnTM位置为1,就能保证在模拟输入端接外部多路选择器时,满足必要的建立时间。

2.3.3 建立时间

如果ADC的输入为高速快变信号,如外部多路选择器的切换或其他跳变信号,则在进行转换之前需要一个最小跟随时间,这个时间取决于ADC的输入电阻,采样电容,外部等效电阻及所期望的转换精度,等效时间常数对单端输入和差分输入都是一样的,给定精度所需要的建立时间可由下式来估算:



其中A为所需精度,取LSB的小数部分;t为所需的建立时间(秒);n为ADC的位数
(16);RT为ADC的输入电阻和外部等效电阻的总和;Cs为采样电容。

2.4 校准

模/数转换器在生产厂已经通过非线性、零点偏移和增益误差校准,但也能在系统中单独对ADC0和ADC1的这些参数分别进行校准。校准是通过ADC0型和ADC1型配置寄存器的相应位来进行的,校准参数可用ADC校准指示寄存器(ADC0CPT)和ADC校准参数寄存器(ADC0CCF)读写,ADC0CFF的CPTR位用于ADC0CCF读写特定的校准参数。

一般情况下,不必再进行非线性校正,若要进行这种校正,将ADCnLCAL位置1即可启动,校正完成后,由硬件对ADCnLCAL位置0 ,校正参数存放在修正单元中。进行零点和增益校准时,可以使用内部或外部的电压源作为校准源,由ADCnSCAL位来设定。为了保证精度,建议先进行零点校准,后进行增益校准,零点校准可由ADCnOCAL位的置1采启动,校准完成后,由硬件对ADCnOCAL位置0,零点校准可以补偿的偏移误差为满量程的±3.125%,偏移值在ADC的数字化之前加到AINnG输入中;增益校准可通过将ADCnGCAL位的置l来启动,校准完成后,由硬件对ADCnGCAL位置0,增益校准可以补偿的非线性误差约为±3.125%,增益值加到ADC的VREF通路中,用以改变转换器传递函数的斜率。

2.5 可编程窗口检测器

ADC0有一个可编程窗口检测器,它能连续地将ADC0的输出与用户设定的限位值进行比较,并监测系统的超值条件是否满足。这一点在中断触发系统中特别有用,既可以节约代码空间和CPU的占用带宽,又能提供快速的响应时间。窗口检测器的中断标志也可用于查询方式,该标志即特殊功能寄存器(ADC0CN)中的AD0INT位。参考字的高低字节被分别装入ADC下限(大于)和上限(小于)寄存器(ADC0GTH/ADC0GTL和ADC0LTH/ADC0LTL)中。单端和差分方式都可以使用窗口检测器,在单端方式中,窗口检测器对寄存器(ADC0GTx/ADC0LTx)与ADC0的输出进行比较,而差分方式是将ADC0和ADC1的组合输出用于比较。应该注意,窗口检测器标志可以在监测到数据落在设定的限位值之内或之外时置位或复位,这取决于对寄存器(ADC0GTx和ADC0LTx)的编程。

3 应用举例

图2所示是一个微型弹簧自动测试分选系统的原理框图,单片机(C8051F060)是该系统的控制中心,通过12位DAC的输出产生一个直流电压,送到加力器,加力器将使弹簧产生变形位移,由位移传感器测出位移量,传感器的输出电压送到Ain输入端,经过16位A/D转换得到位移量,根据物理学胡克定理公式:F=-kS,单片机即可计算出弹簧的弹性系数k值。图中,LED阵列用于不同k值的指示,由于C8051F060型单片机有多达59个数字I/O口,所以,液晶显示LCD接口。LED指示矩阵接口及键盘扫描接口等,均不需要太多的外扩电路,简化了系统,提高了可靠性。




4 结束语

近年来,随着大规模集成电路制造技术的不断发展,混合信号单片机的模拟接口性能进一步提高,特别是ADC的功能更加完善,精度从10位、12位、直到16位甚至24位,但综合考虑采样速度等因素,C8051F06X系列单片机以16位精度和1 MS/s的采样速度,以及其他灵活多样的可配置功能,成为目前屈指可数的片上系统混合信号单片机。可以预见,该系列单片机必将在数据采集及智能化仪器仪表等方面得到广泛的应用。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    公式3不是比例关系。Honeywell公司的MLxxx-R5系列压力传感器就是非比例传感器。当在7V和35V之间的任何电源电压下工作时,失调都是1V,满量程输出为6V。 模数转换器(ADC)与阻......
    Touch_Sensor = A5;  整数 LED = 13; 诠释继电器 = A4; 定义引脚模式,即引脚功能应该是输入还是输出。此处输入触摸传感器。继电器和 LED 引脚输出。 /*  * 引脚......
    仪器必须具有很好的可靠性及精确度,否则,就有可能给航行在测点附近海域的船舶提供不准确的海洋环境参数,在灯船水文气象实测数据自动显示助航系统水下分机的设计中,成功应用了具有增强型8051内核微控制器和闪存的精密模数转换器......
    中运用到了微分思想。如下图所示: 将连续的信号转换成一系列接近的离散的值,分割的越窄,就能表现得越精确。 数模转换(D/A转换)与模数转换的效果相反,是输入控制的数字量,经过D/A转换器输出......
    .5~2.5 V电压信号即可。 1.4放大器及模数转换器应用 本温湿度显示仪模拟信号变换采用TI公司的轨对轨运放TLC2252,该放大器最大的特点一是输出可达电源满幅,二是失调电压较小,0.5 mV......
    3所示。他将被测网络的输出信号峰值检出来(代表网络幅频规律),送往8位ADC0809模数转换器,数字化后再送单片机AT89C51进行处理。 幅频特征测试中常用的检波方式有峰值检波和有效值检波。但由......
    的电压。而模拟电源输入的电压是用在模数转换器(ADC)、RC振荡器和PLL 倍频等模拟电路上的。这两部分电源输入在引脚较多(64 脚以上)的单片机上是分开的。而在引脚较少的单片机上,逻辑......
    PLC中模拟量和数字量的区别; 众所周知,在PLC控制系统中有两个常见的术语“ 模拟量”和“ 开关量”。不论输入还是输出,一个参数要么是模拟量,要么是开关量。 那么......
    通过软件去控制。 在大多数的时候,我们将IO口可以看为一个电子开关,通过向IO寄存器中写入相应的值,其输出的电平就随着寄存器的变化而变化,这是IO口的输出,在大多数的单片机中,需要去配置单片机的IO模式,是输入还是输出......
    界面)的设计。 1、开关量 开关量是最简单的,两种状态,ON和OFF,PLC的基本单元就是开关量控制无论是输入还是输出输入按照开关频率可分为低频和高频输入开关,低频开关→各类开关按如钮、旋钮、行程......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>