2012西安邮电大学”汇博杯”竞赛信号发生器作者:翟磊雷升隆卢丽沙指导老师:赫建国单位:西安邮电大学邮编:710121摘要:该系统以TI公司的MSP430F169微控制器件为核心,采用直接数字合成技术(DirectDigitalSynthesis,DDS),经芯片内部D/A转换产生四路信号--正弦波、方波、调节后的正弦波和方波。利用MSP430F169单片机的TimerA的计数溢出中断实现DDS核。每发生一次计数溢出中断,在它的中断服务程序中分别完成2路信号的相位累加、波形数据表地址产生、查表、DAC输出。该系统的主要功能:输出信号的频率、初相位可调,其幅度可由运算放大器连续可调。关键字:信号合成、直接数字合成、微控制器Abstract:ThissystemtoTIcompany'sMSP430F169microcontroldeviceasthecore,andadoptingtheDirectDigitalSynthesistechnology(DirectDigitalSynthesis,DDS),thechipinternalD/Aconversionproducesfourroadsignal-sinewaveandsquarewave,theadjustedsinewaveandsquarewave.UseMSP430F169microcontrollerTimerAofthecountofoverflowinterruptionrealizeDDSnuclear.Eachhadacountingoverflowinterrupt,initsinterruptserviceroutinearecomplete2roadsignalphaseaccumulation,waveformdatatableaddressgeneration,look-uptable,DACoutput.Themainfunctionofthesystem:outputsignalfrequency,theinitialphaseadjustable,anditsamplitudecanbemadeofoperationalamplifiercontinuousadjustable.Keyword:signalsynthesis,directdigitalsynthesis,microcontroller目录1.引言............................................12.方案论证............................................23.系统设计............................................44.单元电路设计........................................5.系统连调............................................6实验数据记录.......................................7.总结.............................................8.参考文献..........................................9.附录.............................................1.引言学习的目的在于应用,边工作边学习也是一种非常有效的学习方法。大一的时候,听学长们谈论单片机,因为没学过模电、数电等基础课程,所以一直没合适的机会学习,大二下学期的时候参加了MSP430的课外辅导班,这才对单片机有了初步的认识,学会了一些基础的MSP430的电路搭建和编程。暑假在一直实验室学习MSP430,看一些和单片机有关的书,一次和实验室的前辈们谈及单片机以及一些他们的经验,说到信号发生器时,我们产生了浓厚的兴趣,觉得它特神奇,跟实验室的标准设备一样能产生各种波形,还结合了数电和模电的理论知识,非常适合单片机的学习。但是由于当时有别的事情要忙,只是对信号发生器略微了解了一下。感谢这次通信与信息工程学院给我们提供的这次机会,让我们有机会检验一下自己在这段时间的学习中有没有提高,也给了我们一次小组间合作的机会。我们小组这次做的信号发生器的系统,其基础主要依赖于《信号与线性系统分析》,我们之前已学过这门课程,这次做这个信号发生器系统,正好可以将理论与实践相结合,既可以将我们以前学的知识巩固,并将其运用到实践中去,又可以锻炼我们的动手能力,提高我们的自学能力。在完成学业的同时,课余时间我们小组学习了MSP430,这次实验我们就以TI公司的MSP430F169微控制器件为核心,实现该系统的各种功能。我们知道,在《信号与线性系统分析》中,信号的产生有多种方法,我们可以用傅里叶变换将信号分解为直流分量和各次谐波分量之和或用卷积积分的方法将信号分解为许多宽的为Δτ的窄脉冲,然后叠加求和,再经过D/A转换,即可得到需要的模拟信号。我们设计的信号发生器电路结构较简单、较易实现,和正式厂家生产的信号发生器是没法比,但是通过这次系统的设计,我们把电路的数字部分和模拟部分都学习了,无论对以后参加别的竞赛还是找工作,应该都会有很大的帮助。2.直接数字合成技术直接数字合成(DirectDigitalSynthesis,DDS)是一种应用数字技术来产生信号波形的方法。DDS技术建立在采样定理的基础上,它首先对需要产生的信号波形进行采样和量化,然后存入存储器作为待产生信号波形的数据表。在输出信号波形时,从数据表中依次读出数据,产生数字化的信号,这个信号再通过DAC转换成所需的模拟信号波形。当改变信号波形数据表中的数据,就可以产生不同的信号波形。相对于其他信号波形产生技术,DDS技术具有输出信号的采样频率固定、全数字化、易于控制、可编程、输出相位连续和信号频率转换时间短等优点。基于DDS技术产生信号波形的原理图如图2.1所示。参考时钟相位累加器正弦信号波形数据表数字/模拟转换器低通滤波器比较器DDS核频率控制字图2.1DDS技术产生信号波形原理图图2.2正弦信号采样图利用晶体产生稳定的参考时钟信号clk,用clk对正弦信号进行采样,抽样图如图2-2所示。将信号送入到相位累加器中,它类似于一个计数器,每来一个时钟信号,相位累加器就增加一个步长的相位增量,相位增加量的大小由频率控制字确定。正弦信号波形数据表含有正弦信号的相位--幅度信息,从数据表中可读出相位累加器输出相位值对应的幅度数据,然后经过D/A转换器,就可将该数据转换成需要的模拟的正弦信号。DDS技术的核心是相位累加器。它的相位累加为循环叠加,所以输出信号的相位是连续的。相位累加器进行线性累加时,当累加到一个周期时产生一次计数溢出,这个溢出频率即为信号输出频率。频率控制字越大,相位增加量越大,完成一个周期所需时间越短,相位累加器溢出率越高,则信号输出频率越大。设相位累加器的位数为N,频率控制字内的相位增量为K,参考时钟频率为fc,则DDS系统输出信号的频率f0为:f0=fc×K/2N(10-1)输出信号的频率分辨率△f0为:△f0=fc/2N由于参考时钟频率时固定的,所以输出信号的谐振频率从固定,在D/A转换器后加一个低通滤波器,滤除输出信号的谐波分量,就可得到连续的正弦波信号。经过比较器后又可得到方波信号。3.MSP430简介(1)MSP430系列芯片简介(2)MSP430F169芯片简介德州仪器公司的MSP430F169单片机振荡器与时钟系统:单片机的时钟系统由基本时钟单元支撑,基本时钟单元支持32768低频晶体振荡器,内置DCO,还有一个高频振荡器。基本时钟单元设计用来适应低功耗和低成本的需要,它提供ACLK,CPU使用的MCLK,以及外围设备使用的MCLK。看门狗定时器:其首要功能是当软件出错时使系统复位,如果定时时间到将产生系统复位信号。如果应用中不需要看门狗,其可以被用作一个定时器并且当定时时间到时可以产生中断。Timer_A3,Timer_B3:是一个具有三通道捕获/比较寄存器的16位定时计数器,支持多路捕获/比较,PWM输出,和定时计数。同时还有中断功能,计数器溢出或者捕获/比较寄存器都可以产生中断请求完成DDS功能需要稳定的高频时钟源XT2,具有中断功能的定时/计数器Timer_A.更重要的是在这里可以提供两路12位数字/模拟转换功能,以及P1端口和P2端口具有中断能力。稳定的高频时钟源XT2可以为DDS提供高精度的时钟参考;P2口中断能力可以开辟为键盘功能,设计人机交互界面;两路12位数字/模拟转换器输出正弦信号。DDS技术工作原理需要的频率控制字可由P2口开辟的键盘手动输入,参考时钟由稳定的时钟保证,MSP430F169自带数模转换器,因此MSP430F169是设计此双相信号发生器的不错选择4.方案论证要实现一个基于DDS技术的信号产生器系统有多可行的方案,我们可以通过购买专门的DDS芯片、利用微处理器或者使用可编程逻辑器件等方法来完成。不同的方法具有不同的优点。下面分别对这三种方法进行讨论,通过对它们优缺点的比较,使我们能够更加深入地了解这个技术。方案一:DDS信号产生器芯片AD9850是ADI公司生产的一种DDS信号产生器芯片。AD9850把DDS技术和高速数字/模拟转换器结合在一起,形成一个全数字化、可编程的信号产生器。在一个精确的参考时钟源的控制下,它可以产生一个频谱较纯、频率/相位可编程的模拟正弦信号。这个正弦信号可以被直接用作信号源,它也可以通过AD9850芯片内部的比较器转换成方波信号输出。AD9850的频率控制字为32位;相位控制字为5位;时钟最高频率为125MHz;输出频率调节速率达每秒23M次。AD9850的相位控制字为5位,因此它的输出信号相位能按180°、90°、45°、22.5°、11.25°和上述数值的任意组合值来变化。当采用125MHz的时钟频率时,AD9850的频率分辨率为0.0291Hz,最高输出频率为62.5MHz。使用DDS信号产生器芯片的最大优点是输出信号频率较高,缺点是用户不能修改输出信号波形。方案二:利用可编程逻辑器件实现DDS信号产生器FPGA(现场可编程门阵列)采用了逻辑单元阵列LCA(LogicCellArray)这样一个新概念,内部包括可配置逻辑模块CLB(ConfigurableLogicBlock)、输出输入模块IOB(InputOutputBlock)和内部连线(Interconnect)三个部分。用户可对FPGA内部的逻辑模块和I/O模块重新配置,以实现用户的逻辑。它还具有静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。作为专用集成电路(ASIC)领域中的一种半定制电路,FPGA既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。可以毫不夸张的讲,FPGA能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路,都可以用FPGA来实现。从另一方面来考虑,采用FPGA实现成本较高,除了FPGA芯片本身的价格较高,需要的高速数字/模拟转换芯片也较昂贵。方案三:利用微处理器实现DDS信号产生器利用微处理器可实现如图2.1所示的基于DDS原理的信号产生器。输出信号的频率分辨率△f0为:△f0=fSYS/2NfSYS是输出一个模拟电压的最高频率,N是相位累加器的位数。相位累加器的位数越多,输出信号的频率分辨率越好,也就是相位累加器增加一个步长时所调整的频率增量越小,频率调整的越精确。微处理器控制D/A转换器产生的信号,工作频率稳定而且频率可调,通过软件编程可产生任意信号波形。还可以通过扩展键盘和数码管显示等人机接口,操作起来更方便。输出信号频率的调整可通过用键盘输入相位增量的信息实现。微处理器的工作频率由内部时钟控制,所以电路产生的信号的频率与时钟电路具有同样的频率稳定度。它的缺点是输出信号的最高频率