基于MSP430自动增益控制_第1页
基于MSP430自动增益控制_第2页
基于MSP430自动增益控制_第3页
基于MSP430自动增益控制_第4页
基于MSP430自动增益控制_第5页
已阅读5页,还剩17页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录摘要IABSTRACTII引言11方案论证211总体方案22系统设计43MSP430概述531TI公司的MSP430介绍532MSP430F169633最小系统复位电路64单元模块电路841信号峰峰值检测电路842显示电路介绍1043模数转换电路14431模数转换器ADC1214432ADC12相关寄存器介绍1644数模转换电路19441数模转换器DAC1219442数模转换DAC12寄存器2145程控芯片VCA822简介245测试数据及测量结果分析266总结28致谢28参考文献29附件29基于MSP430系列微控制器的自动增益控制电路的实现I摘要在现代电子设备中,最常用的电路结构就是放大器。电子技术基础学习过程中我们知道,由于在高频状态下放大器内部结构,即极间电容的存在,会影响放大器的增益大小,进而导致输出信号幅度变化,使得输出的信号幅度值不能在高频时满足要求。所以用本设计可以自动调节放大器增益的大小,使输出信号幅度保持不变,又称作自动增益控制放大器设计。本课题采用数字电路控制放大器的增益,通过闭环操作,使用MSP430为开发平台,通过采用对信号幅度补偿的技术,解决由于输入频率变化而引起的放大器输出幅度的变化,实现增益的自动调整,从而实现获得稳定输入幅度的设计。由于放大器的内部元件的影响使得它的可用性有一定的频率范围,所以本设计就是在保证放大器正常工作的情况下对原输出有损信号进行校准。AGC电路由可控增益电路,数模转换,模数转换,峰值监测电路和显示电路五部分组成。本课题所要介绍的内容有自动控制增益的原理,MSP430的掌握,以及自动增益电路各部分的工作原理。最后对系统中ADC电路和DAC电路测量并对测试结果和实际中的问题做一定的分析。关键字自动控制增益放大器MSP430补偿基于MSP430系列微控制器的自动增益控制电路的实现IIABSTRACTINTHEMODERNELECTRONICEQUIPMENT,THEMOSTCOMMONCIRCUITSTRUCTUREISAMPLIFIERINTHEPROCESSOFLEARNINGELECTRONICTECHNOLOGYBASICWEKNOW,AMPLIFIERINTERNALSTRUCTURETHATISTHEEXISTENCEOFTHECAPACITANCEWILLAFFECTTHEAMPLIFIERSGAINWHENAMPLIFIERISINTHEHIGHFREQUENCYSTATELEADTOTHEOUTPUTSIGNALAMPLITUDEVARIATION,MAKETHEOUTPUTSIGNALAMPLITUDEVALUECANNOTMEETTHEREQUIREMENTSWHENINHIGHFREQUENCYSOTHISDESIGNCANUSETOAUTOMATICALLYADJUSTTOTHESIZEOFTHEAMPLIFIEROUTPUTSIGNALANDAMPLITUDEREMAINSTHESAME,NAMELYTHEAUTOMATICGAINCONTROLAMPLIFIERDESIGNTHISSUBJECTADOPTSDIGITALCONTROLCIRCUITSTOCONTROLTHEAMPLIFIERGAINWITHTHECLOSEDLOOPOPERATION,USINGMSP430FORDEVELOPMENTPLATFORMANDTHROUGHMAKINGUSEOFAMPLITUDECOMPENSATIONTECHNOLOGYROSOLVETHEAMPLIFIEROUTPUTAMPLITUDECHANGINGOWINGTOTHEINPUTFREQUENCYSVARIATIONFINALLYITWILLREALIZETHEAUTOMATICADJUSTMENTGAIN,SOASTOACHIEVEASTABLEINPUTTHEAMPLITUDEOFTHEDESIGNAMPLIFIERHASITSAVAILABILITYHASCERTAINFREQUENCYRANGEDUETOTHEINFLUENCEOFTHEINTERNALCOMPONENTSOFTHEAMPLIFIERSOTHISDESIGNISTHATOUTPUTSIGNALOFTHEORIGINALWILLBEADJUSTEDINTHENORMALWORKOFTHEAMPLIFIERAGCCIRCUITCONSISTOFCONTROLLABLEGAINCIRCUITS,ANALOGTODIGITALCONVERSION,DIGITALTOANALOGCONVERSION,PEAKMONITORINGCIRCUITANDDISPLAYCIRCUITFIVEPARTSTHISTOPICTOBEPRESENTEDARETHECONTENTSOFTHEPRINCIPLEOFAUTOMATICCONTROLGAIN,HAVINGACOMMANDOFMSP430,ASWELLASTHECIRCUITPRINCIPLEOFTHEAUTOMATICGAINCIRCUITEACHPARTINTHEEND,INTHESYSTEMADCANDDACCIRCUITWILLBEINMEASUREANDDOSOMEANALYSISTOTHERESULTOFTHETESTANDTHEACTUALPROBLEMSKEYWORDAUTOMATICCONTROLGAINAMPLIFIERMSP430COMPENSATION基于MSP430系列微控制器的自动增益控制电路的实现III基于MSP430系列微控制器的自动增益控制电路的实现4引言在现代通信系统和电子设备中,为了提高技术性能指标,或者实现某些特定的要求,广泛的采用自动控制电路。自动增益控制电路的使用具有重要的实际意义。因为在各种通信系统中,由于受放大器内部结构,尤其是极间电容的影响,当放大器工作频率太高或太低时所输出的信号也会改变,使信号传输受损。如果接收机增益不变,则信号太强时会造成饱和和阻塞,而信号太弱时又可能丢失。我们希望放大器的增益能随输入信号的强弱而变化,信号强时,则增益低;信号弱时,则增益高。因此对于强弱经常变化的信号采用自动增益控制,不失为一种很好的选择。自动增益控制放大电路(AGC电路)其主要功能是根据输出信号电平的大小,调整放大器的增益,从而使输出信号电平保持稳定。对于自己,以前用做运算放放大实验时发现,当输入的信号频率高到一定程度时,输出信号波形幅度有所变化,即放大倍数小于理论算出的增益大小,而且频率越高,增益越小,当时觉得应该是自己搭电路时不规范所致,没有太在意,但是随着学习的深入我逐渐的了解到,放大器放大倍数减小并不是偶然因素引起而是由于放大器内部结构即极间电容导致了这中现象。总有理论的学习还不能让我有多大深入了解,正好毕业设计的这个题目给了我这个验证并扩展的机会。所以本设计就是基于放大器在高频时的这种增益减小现象为课题来展开分析。自动增益控制电路包括放大器输出信号幅度检测电路、模拟/数字转换电路、幅度比较模块以及电压控制增益电路。在对增益控制的速度要求不高的情况下,使用微控制器是一种合适地选择,因为它支持C语言开发。TI公司的MSP430系列芯片具有的片内模拟/数字转换器、硬件乘法器以及低功耗特点使其能够方便地实现自动增益控制电路的设计。总体来说本设计是采用数字的方法实现模拟信号的调节。将模拟量采样转换为数字量,虽然采样值与实际值有所误差,但数字处理方法的也可以达到很高的精度,并且相对于模拟信号出来来说,大大减小了干扰量,即数字信号差错可控。基于MSP430系列微控制器的自动增益控制电路的实现51方案论证按照被处理信号所具有的特点,应用系统可以被划分为数字系统和模拟系统。因此实现本设计的方法可以有数字和模拟两种方法。数字方法又分组合逻辑电路的实现和软件编程实现。数字系统具有容易设计、整个系统的准确度以及精度容易保持一致、信息存储方便、抗干扰能力强等优点。模拟系统的实时性能好,而且自然界的大多数信号是模拟信号,系统的逼真度好。本章首先对当前用于设计数字电路和系统的主要器件的特点进行讨论;接着对在数字电路逻辑设计课程中学习的由标准逻辑器件组成的数字电路分析和设计方法进行回顾;然后介绍解决基于标准逻辑器件设计电路所具有的电路可靠性低、修改电路设计困难的方法采用可编程逻辑器件进行讨论,最后给出本设计中所采用的器件。11总体方案方案一模拟电路实现。在电子技术基础学习课程中我们知道负反馈的原理可以稳定放大电路的工作点,此外,还可以增加增益的恒定性,减小非线性失真,扩展频带以及控制输入输出阻抗等。虽然从负反馈的作用来看,可以减小非线性失真与扩展频带,但是这种稳定也是基于放大电路在可工作频率范围,同样避免不了在高频时极间电容对电路的影响。所以采用负反馈的方法只能对本设计有所改善但不能很好的完成设计。放大电路的反馈方框图如下11所示放大电路A反馈网络F1AB11反馈方框图基于MSP430系列微控制器的自动增益控制电路的实现6方案二数字电路实现从数字信号的处理方法实际应用情况,数字信号处理的实现方法分成两类,一类是软件实现,一类是硬件实现。在工作原理方面,数字电路又可以被划分为标准逻辑器件、微处理器。这两种方法的具体阐述如下标准逻辑器件它的实现一般按照以下步骤进行1)列真值表2)画卡诺图3)化简逻辑表达式4)根据表达式选取相应的逻辑器件连线微处理器微型计算机(PC)是最常见的计算机,它由一些数字集成电路芯片组成,这些芯片包括微处理器芯片、存储器芯片以及输入/输出接口芯片等。实际中,计算机可以完成人类所能完成的大部分东西,而且还可以更快更精确,所以它的高速让人们有了很大的应用。计算机依靠所运行的软件(程序)来完成工作。这个软件是人们给计算机的一组完整的指令,指令告诉计算机其操作的每一步应该干什么。这些指令以二进制代码的形式存储在计算机的存储器中,计算机从存储器中一次读取一条指令代码,并完成由指令代码指定的操作。通过编写软件可以控制计算机完成不同的工作,这个特点使得设计灵活性得到提高。当修改系统设计时,设计者只需要改变软件,不需要或者较少需要修改电路连线。由于计算机一次只能执行一条指令,因此它的主要局限性是工作速度。采用硬件方案设计的数字系统总是比软件方案的数字系统的工作速度快。集成电路制造工艺的发展使得在一个芯片上制造大量的数字电路成为可能,这也促进了计算机技术的发展。把计算机中的微处理器芯片、存储器芯片以及输入/输出接口芯片等做在一块芯片上就形成单片机,有的文献上它也被称作为微控制器。综述通过方案论证比较,以及几种方案对本设计的实现性的难易程度来讲,我们采用软件微处理器的方法即采用MSP430来实现本次课题的要求。基于MSP430系列微控制器的自动增益控制电路的实现72系统设计本设计的系统原理框图如图21所示。该系统中包括数字和模拟两部分。数字部分有ADC,DAC模块。模拟部分有放大电路和显示电路。设计采用闭环操作,首先向放大器中输入幅度恒定的正弦信号,从VCA822放大器输出端的信号分两路,一路信号输出送入示波器观察输出信号峰值是否满足设计要求,另一路信号输出送到MSP430进行采样模数转换,由于要使信号输出幅度值恒定,而且采样补偿的方法,也就是实际信号与参考值进行比较,所以CPU内部应该设定这个要求的参考值。CPU的操作就是将采样得到的数字信号和要求的信号峰值比较(当然也转换成数字量才可以比较),如果采样峰值和参考值一样不做处理,如果采样峰值比参考值小,则输出信号需要放大,经运算就可以算出需要放大器放大的差值大小,同理也可以算出采样值比参考值大时需要放大器减小的差值大小,当这个差值算出来后,就把这个值通过模数转换再次送到VCA822程控芯片,通过用这个值转换为电压去控制芯片,也就是控制放器的增益大小,依次反复比较与调整,直到输出信号的幅度趋于恒定。信号输入VCA822CPU数码管显示AD转换DA转换输出模拟信号示波器图21系统原理框图另外需要说明的是,如果将原始输入信号和经过修正后的信号同时加到VCA822芯片,这两路信号会相互影响,带来很大的误差,甚至不能测量,所以必须在他们的前级各加一级隔离电路,即跟随器。对VCA822调整是对电压VG做处理,从AD输出的电压值不可以直接送到该芯片,还得通过一个反相基于MSP430系列微控制器的自动增益控制电路的实现8器才可以,以上的原理框图中没有画出,但实际中需要注意。3MSP430概述31TI公司的MSP430介绍32MSP430F16933最小系统复位电路4单元模块电路41信号峰峰值检测电路方案一在通信原理的学习中,我们知道对信号的检测可以用检波电路实现,检波电路是由二极管,电容和电阻组成。这个检波电路是根据电容充放电的原理实现。原理图如下所示由于负载电容C的高频阻抗很小,因此高频电压大部分加到二极管D上。在信号正半轴,二极管导电,并对电容充电,由于二极管导通后的内阻很小,所以充电电流I很大,是电容上的电压在很短时间内就接近最大值。这时二极管导通与否,由电容上的电压和输入信号共同决定。当信号电压下降到小于电容上的电压时,二极管截止,点头就会通过负载电阻R放电。当电容上的电压下降不多是,第二个正半周期的电压又超过二极管上的负压使二极管又导通,就这样不断循环反复,就可以得到信号波形,进而得到峰峰值。但是这个检波电路适合高频信号的应用,本此设计中的信号频率时变化的,从低频一直加到高频。所以当输入信号频率低时,不能完成测量。41检波电路方案二采用AD536芯片。该芯片的作用是将输入正弦信号的峰峰值转换为有效值。采用本芯片将转换为的有效值输入到MSP430,利用AD进行多次采样,基于MSP430系列微控制器的自动增益控制电路的实现9求平均值,并利用交流信号有效值计算的方法得出信号峰峰值,然后和已知幅度对比再做一定的处理,就可以完成满足要求的设计。但是AD536的转换速度相对较慢,经过测量大致需要1S才可以完成转换。所以采用它比较耗时。方案三直接用软件进行测量。具体如下采用MSP430,直接对输入信号在一个周期内进行多次采样,通过软件编程即比较可以得到采样信号的最大值与最小值,两者相减得到的就是信号的峰峰值,当然对信号一个周期采样所得到的信号幅度大小也是不稳定的,所以可以对信号N个周期重复采样得到N个峰峰值,对这几个值求平均,就可以得到相对稳定准确的幅度值。这样做的测量速度远远快于采用AD536芯片的转换速度。综上所述直接采样求最大值与最小值不仅节约资源而且处理速度也加快。基于此,本设计不用AD536,而直接用采样,即MSP430。这部分主要讲解设计中各个模块的介绍,包括四部分数模转换电路,模数转换电路,放大电路VCA822和显示模块。则峰峰值检测电路的代码如下INTVPPVOIDUNSIGNEDCHART,KFORT0TCMP1CMP1RAM_DATAKIFRAM_DATAKCHAJUT1CHAJUT1CHAJUTCHAJU10SUM/10/基于MSP430系列微控制器的自动增益控制电路的实现10RETURNCHAJU942显示电路介绍43模数转换电路431模数转换器ADC12MSP430F169芯片内包含大量外围模块。其他系列单片机或多或少需要外部扩展器件才能实现功能,如RAM,ROM,A/D转换,D/A转换等MSP430系列单片机内部就可以完成。这样省去了大量硬件的开发调试工作,提高了工作效率,系统可靠性,抗干扰能力也得到显著改,并且可使系统体积进一步小型化。本设计中需要对输入信号采样,所以用到ADC,MSP430F169自带模数转换与数模转换模块,接下来就模数模块做基本介绍。ADC12支持12位高速模数转换,ADC12模块主要由SAR核,采样时钟电路,参考电压发生器,采样保持电路以及采样时间定时电路,多路模拟信号选择器,转换结果存储控制器等。(1)参考模块所有模数转换器和数模转换器都需要一个基准信号,通常为电压基准。从图中我们可以看到,ADC126中可编程选择,有内部基准15V或25V电压,这两个电压的选取可以由位REFON和INCH的组合来决定;也有外部基准,VEREF、VREF、VREF/VREF这几种电压的选取可以位REFON控制参考电压的的打开与关闭,再通过位SREF1,SREF0的不同组合来决定。这样可以灵活设置参考电压发生器。(2)模拟多路器模块当对多个模拟信号进行采样并进行ADC转换时,为了共用一个转换内核,模拟多路器需要分时的将多个模拟信号接通,即每次接通一个信号采样并转换。MSP430F169的ADC12配置有8路外部通道与四路内部通道,通过A0A7实现尾部8路模拟信号的输入。这样可以同时对多路模拟信息进行测量与控制,从而满足实际控制欲实时数据处理系统的要求。(3)具有采样与保持功能的12位转换内核ADC12内核是一个十二位的模数转换器,并能够将结果存放在转换器中。该内核使用两个可编程参考电压(VR和VR)定义转换的最大值与最小值。当基于MSP430系列微控制器的自动增益控制电路的实现11输入模拟电压等于或高于VR时,ADC12输出慢量程值0FFFH,当输入电压等于或小于VR时,ADC12输出0,输入模拟电压的最终转换结果满足公式,其中等于输入模拟电压,为参考电压的负电4095INRADCINRV压(一般为0V),为参考的正电压。R因为ADC12转换需要一定的时间来完成量化和编码操作,对高速变化信号进行瞬时采样时,不等A/D转换完毕,采样的值却已经改变。为了保证转换精度ADC12内核具有采样和保持功能,即使现场模拟信号变化比较快,也不会影响ADC12的转换。采样状态,输出随输入而变化,保持状态,输出保持某个值一段时间以备转换。(4)采样采样及转换所需时序控制电路。这个模块提供采样及转换所需的各种时钟信号ADC12CLK转换时钟,SHT控制采样周期,ADC12SSELX选择的内核时钟源,ADC12DIV选择分频系数,从图也可以看出,由位ADC12SSELX可以选择时钟源为主时钟MCLK,辅助时钟ACLK和子时钟SMCLK,时钟源选择之后又可以根据实际情况通过位ADC12DIVX将时钟源进行1/2/4/8倍数的分频,最后产生出ADC12CLK转换时钟。(5)转换结果缓存ADC共有16个转换寄存器暂存转换结果,为ADCMEMX,即采样编码完成后硬件会自动将转换结果存放到相应的ADCMEMX。另外,每个转换寄存器ADCMEMX都有自己对应的控制寄存器ADCCTLX。432ADC12相关寄存器介绍MSP430系列微控制器最多可以提供8个数字输入/输出端口,P1P8。每个数字输入/输出端口最多可以提供8个数字输入/输出管脚,PX0PX7。这里的X表示可以提供8个数字输入/输出端口中的任意一个。P1和P2端口具有中断能力,它们具有各自独立的中断矢量。P1和P2端口的每1个管脚的中断可以独立配置和使能,但是每个端口的所有管脚共用一个中断矢量。当然并不是所有芯片都能够提供所有这些数字输入/输出管脚资源。数字输入/输出端口的相关寄存器包括任意端口都具有的寄存器和只有P1端口和P2端口具有的寄存器。前者包括输入寄存器(PXIN)、输出寄存器(PXOUT)、方向寄存器(PXDIR)和功能寄存器(PXSEL);后者还包括中断使能寄存器(PXIE)、中断触发边沿选择寄存器(PXIES)和中断标志寄存器基于MSP430系列微控制器的自动增益控制电路的实现12(PXIFG)。ADC12有大量的控制寄存器供用户使用。在这里我们只对用到的相关寄存器做详细介绍。(1)转换寄存器ADC12CTL0ADC12CTL0寄存器各位含义如下位15141312111098位名称SREFXADC12SHTXADC12SRREFOUTREFBURST操作方式RWRWRWRWRWRWRWRW复位值00000000位76543210位名称MSCREF2_5VREFONADC12ONADC10IEADC12IFGENCADC12SC操作方式RWRWRWRWRWRWRWRW复位值00000000注标注为阴影的数据位仅能在位ENC0的前提下才能修改。ADC12SC采样/转换控制位0没有采样和转换1开始采样和转换ENC转换允许位0ADC12为初试状态,不能启动A/D转换,即AD不使能1首次转换由SAMPCON上升沿启动只有该位为高电平时,才能用软件或外部信号启动转换。ADC12ONADC12内核控制位0关闭ADC12内核1打开ADC12内核REFON参考电压控制位0内部参考电压发生器关闭1内部参考电压发生器打开SHT1,SHT0采样保持定时器1,采样保持定时器0分别定义了保存在转换结果寄存器ADC12MEM8ADC12MEM15和ADC12MEM0ADC12MEM7中转换采样时序与采样时钟ADC12CLK的关系。采样周期是ADC12CLK周期乘4的整数倍,即12SAMPLEADCLKTTNSHTX012345678910111215N1248162432486496128192256基于MSP430系列微控制器的自动增益控制电路的实现13(2)转换寄存器ADC12CTL1ADC12CTL1寄存器各位含义如下位15141312111098位名称INCHXSHSXADC10DFISSH操作方式RWRWRWRWRWRWRWRW复位值00000000位76543210位名称ADC10DIVXADC10SSELXCONSEQXADC10BUSY操作方式RWRWRWRWRWRWRWR复位值00000000注标注为阴影的数据位仅能在位ENC0的前提下才能修改。ADC12BUSYADC12忙标志0表示没有活动的操作1ADC12正处于采样采样期间NOTE此寄存器只用于单通道转换模式ADC12SSELADC12内核时钟源选择0ADC12内部时钟源为ADCOSC1ACLK2MCLK3SMCLKADC12DIVADC12时钟源分频因子选择位。从000111分别将时钟源分为1/2/3/4/5/6/7/8种。(3)存储及其控制寄存器ADC12MCTL0ADC12MCTL15ADC12MEM0ADC12MEM15ADC12MEMX转换存储寄存器这个寄存器是16位的,用来存放A/D转换结果ADC12MCTLX转换存储控制寄存器由于每一个转换存储器有一个对应的转换器控制寄存器,所以在进行CSSTARTADD转换存储器地址位设置的同时,也确定了ADC12MCTLX。ADC12MCTLX寄存器各位定义如下位76,5,43,2,1,0位名词EOSSREFINCH操作方式RWRWRW复位值000INCH选择模拟输入通道。该4位所表示的二进制数为所选的模拟输入通道。07A0A7基于MSP430系列微控制器的自动增益控制电路的实现14以上是相关寄存器的介绍,接下来用一个子函数编写数模转换器的程序,如下VOIDINT_ADCVOIDADC12CTL0ADC12CTL0|REFONSHT0_1REF2_5VADC12ONADC12CTL1|ADC12DIV_0CSTARTADD_1ADC12SSEL1ADC12MCTL1|INCH_1ADC12CTL0|ENCP6SEL|BIT1P6DIR定时器中断采样函数PRAGMAVECTORTIMERA0_VECTOR_INTERRUPTVOIDTIMER_A1VOIDADC12CTL0|ADC12SC/ADC转换软件启动控制位使能ADC12CTL0/ADC转换软件启动控制位清除/手册指出ADC12SC位可以自动清零WHILEADC12CTL1/等模拟/数字转换结束RAM_DATAIADC12MEM0/读取ADC通道0结果IFI200TACTLI0433MSP430(169)片内ADC12转换特性测量显示数据为10次转换结果求平均,模拟电压测试仪表为M890D三用表,20V档。表1MSP430片内ADC12转换特性输入模拟电压(V)测量模拟电压(V)绝对误差(V)相对误差()00000021/0008800055/01001002/0107200037370002001987/0203800013065003002981/0305100016053304003992/0403800015037505004993/0504000017034006005991/0604300023038307006988/07027000070100基于MSP430系列微控制器的自动增益控制电路的实现1508007980/0803700009011309008981/090460001401561000998/1004000101001101099/1106000302731201198/1203000100831301297/1304000100771401397/1405000100721501497/1505000100671601597/1604000100631701698/1703000100591801798/1804000100571901899/1904000201052002002/200800050252102097/2106000200952202197/2206000200912302298/2304000100442402398/2402000000002502498/250100010042602596/2603000100392702698/2706000200742802797/2803000000002902896/2902000100353002996/3002000100333103098/3103000100323203197/3203000000003313304/330700050151从表中可以看到,当输入信号小时,所得信号误差值大,当输入信号大时,所得信号误差小,并随着输入信号值的增大,误差值趋于稳定。出现以上结果的原因是由于ADC转换的结果是经过采样量化和编码后得到的,所以肯定存在误差,另外,学习通信原理课程时我们知道,编码分为均匀编码和非均匀编码。均匀编码对小信号编码时,设备与计算简单,但对小信号输出不使用,输出的信噪比小;所以为了克服这个缺点,改善小信号时的信号量噪比,实际中通常采样非均匀编码的方法。ADC采用的就是均匀编码。44数模转换电路441数模转换器DAC12本设计中需要将模数转换后的数据做一定的处理之后再转化为模拟电压值输出,以控制放大器的工作。上面介绍了ADC的各模块与工作过程与代码,基于MSP430系列微控制器的自动增益控制电路的实现16DAC电路与ADC很相似。MSP430的DAC模块是12位、电压输出模数转换模块,在使用过程中可以被设置为0位或者12位的转换模式,并能够和DMA结合使用,当MSP430内部有多个DAC12模块时,MSP430可以对他们进行统一管理,并能够做到同步更新。为了更好了理解和应用MSP430DAC模块,了解DAC模块的结构与功能是很有必要的。从图中我们可以看到MSP43016X系列的DAC模块包括两个DAC转换通道DAC12_0和DAC12_1,这两个通道在操作上完全平等。每个转换通道有内部参考源发生器,DAC12内核,数据,电压输出缓存器等。1)参考模块ADC12介绍中我们知道,数模转换器也需要一个基准信号,也就是电压基准。参考电压是唯一影响DAC12输出结果的模拟参考量,是DAC12转换模块的主要部分。DAC12可以选择内部或外部参考源内部参考源就是用DAC12SREFX位选择DAC12的15V或者25V电压,当DAC12SREF(0,1)时,参考源为VREF,当DAC12SREF(2,3)时,参考源为VEREF,只有在ADC12模块中进行相关设置之后,DAC12才能使用它的内部参考源。2)DAC12内核用DAC12RES位选择DAC12的8位或12位精度,DAC12位选择DAC12的最大输出电压为参考电压的1倍或者3倍,于是用户可以动态控制DAC12的范围。DAC12的主要特征有(1)12位的分辨率(2)内部或外部参考电压(3)支持无符号和有符号数据输入(4)具有自检验功能(5)可直接用存储器存取442数模转换DAC12寄存器DAC12的很多操作都是通过对它的内部寄存器的设置来实现的。相关寄存器介绍如下(1)DAC12_XCTLDAC12控制寄存器DAC12_XCTL寄存器各位定义如下位15141312111098位名称保留DAC2REFXDAC12RESDAC12LSELXDAC12CDAC12基于MSP430系列微控制器的自动增益控制电路的实现17ALONIR操作方式RWRWRWRWRWRWRWRW复位值00000000位76543210位名称DAC12AMPXDAC12DFDAC12IEDAC12IFGDAC12ENCDAC12GRP操作方式RWRWRWRWRWRWRWRW复位值00000000注标注为阴影的数据位仅能在位ENC0的前提下才能修改。DAC12RES选择DAC12分辨率012位分辨率18位分辨率DAC12IRDAC12输入范围选择位,设定输入参考电压和输出的关系0DAC12的满量程输出为参考电压的3倍1DAC12的满量程输出等于参考电压DAC12REFX选择参考电压00VREF01VREF10VEREF11VEREFDAC12AMPXDAC12运算放大器设置位选择DAC12输入和输出的稳定时间及电流消耗。稳定时间是DAC12模块的一个重要动态参数,当输入到DAC12的数码发生变化时,模拟输出电压也要跟着变化,经过一定时间才能使新的模拟电压稳定下来,这段时间就是DAC12稳定时间,DAC12AMPX的控制功能如下表DAC12AMPX输入缓冲器输出缓冲器000关闭DAC12关闭,输出高阻001关闭DAC12关闭,输出)0V电压010低速度/电流低速度/电流011低速度/电流中速度/电流100低速度/电流高速度/电流101中速度/电流中速度/电流110中速度/电流高速度/电流111高速度/电流高速度/电流基于MSP430系列微控制器的自动增益控制电路的实现18(2)DAC12_XDATDAC12数据寄存器名称0000DAC12数据操作方式RWRWRWRWRW复位值00000DAC12_XDAT高四位经常为零,不影响DAC12转换。当DAC12工作于12为模式时,DAC12_XDAT的最大值为0FFFH,若值超过这个最大值,则高位部分被忽略。同理DAC12工作于8位模式。DAC12的源代码如下所示INCLUDE/包含名称定义和对应地址或数据的头函数VOIDINT_CLKVOID/声明系统时钟XT2初始化函数INTMAINVOID/主函数UNSIGNEDCHARDATA_DAC/声明存储待转换数字的变量UNSIGNEDCHARDELAY_DAC/声明用于检测DAC工作速度的延迟变量INT_CLK/系统时钟初始化WDTCTLWDTPWWDTHOLD/关闭看门狗P6SEL0XFF/设置P6端口为特殊功能输入/输出口P6DIR0XFF/设置P6端口为输出口ADC12CTL0REF2_5VREFON/电路板上VEREF未连接,必须使用参考电压VREFDAC12_0CTLDAC12IRDAC12AMP1/参考电压选择VREF/选择12位分辨率/向DAC12_0DATA写数据触发数字/模拟转换/模拟电压输出范围与参考电压相同/输出模拟模拟电压建立时基于MSP430系列微控制器的自动增益控制电路的实现19间选择慢/输入数据格式线性2进制/不使能中断DAC12_1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论