《基于DDS技术的高精度数控信号源设计毕业设计(论文)WORD格式.doc》由会员分享,可在线阅读,更多相关《基于DDS技术的高精度数控信号源设计毕业设计(论文)WORD格式.doc(40页珍藏版)》请在三一办公上搜索。
1、摘要: 一种采用DDS技术的新型高精度数控信号源,可输出正弦波、方波和三角波. 系统中输出波形的频率采用数控方式,可实现对频率的逐赫兹调节,频率精度优于0. 1 Hz,最高输出频率可达30MHz左右. 与传统信号源相比,本设计具有输出波形质量好、频率精度和稳定性高、频率范围宽等优点. 设计方案简洁,易于实现.关键词:DDS 信号源 单片机第一章绪论1.1课题研究的意义与作用 1971年,美国学者j.Tierney等人撰写的A Digital Frequency Synthesizer-文首次提出了以全数字技术,从相位概念出发直接合成所需波形的一种新的频率合成原理。限于当时的技术和器件水平,它的
2、性能指标尚不能与已有的技术相比,故未受到重视。近10年间,随着微电子技术的迅速发展,直接数字频率合成器(Direct Digital Frequency Synthesis简称DDS或DDFS)得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的姣姣者。具体体现在相对带宽宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。1.2 DDS的研究现状及发展趋势 在频率合成(FS, Frequency Synthesis)领域中,常用的频率合成技术有模拟锁相环、数字锁相环、小数
3、分频锁相环(fractional-N PLL Synthesis)等,直接数字合成(Direct Digital SynthesisDDS)是近年来新的频率合成技术。单片集成的DDS产品是一种可代替锁相环的快速频率合成器件。DDS是产生高精度、快速变换频率、输出波形失真小的优先选用技术。DDS以稳定度高的参考时钟为参考源,通过精密的相位累加器和数字信号处理,通过高速D/A变换器产生所需的数字波形(通常是正弦波形),这个数字波经过一个模拟滤波器后,得到最终的模拟信号波形。如图1-1所示,通过高速DAC产生数字正弦数字波形,通过带通滤波器后得到一个对应的模拟正弦波信号,最后该模拟正弦波与一门限进行
4、比较得到方波时钟信号。 DDS系统一个显著的特点就是在数字处理器的控制下能够精确而快速地处理频率和相位。除此之外,DDS的固有特性还包括:相当好的频率和相位分辨率(频率的可控范围达Hz级,相位控制小于0.09),能够进行快速的信号变换(输出DAC的转换速率300百万次/秒)。这些特性使DDS在军事雷达和通信系统中应用日益广泛。其实,以前DDS价格昂贵、功耗大(以前的功耗达Watt级)、DAC器件转换速率不高,应用受到限制,因此只用于高端设备和军事上。随着数字技术和半导体工业的发展,DDS芯片能集成包括高速DAC器件在内的部件,其功耗降低到mW级(AD9851在3.3v时功耗为650mW),功能
5、增加了,价格便宜。因此,DDS也获得广泛的应用:现代电子器件、通信技术、医学成像、无线、PCS/PCN系统、雷达、卫星通信。1.3 DDS的系统简介1.3.1DDS的基本原理DDS的基本原理是利用采样定理,通过查表法产生波形。DDS的结构有很多种,其基本的电路原理可用图1-2来表示。 相位累加器由N位加法器与N位累加寄存器级联构成。每来一个时钟脉冲f,加法器将频率控制字与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加
6、器在时钟作用下,不断对频率控制字进行线性相位累加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频率就是DDS输出的信号频率。 用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址,这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出,完成相位到幅值转换。波形存储器的输出送到DA转换器,DA转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。低通滤波器用于滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。 DDS在相对带宽、频率转换时间、高分辨力、相位连续性、正交输出以及集成化
7、等一系列性能指标方面远远超过了传统频率合成技术所能达到的水平,为系统提供了优于模拟信号源的性能。1.3.2 DDS的性能特点(1)输出频率相对带宽较宽输出频率带宽为50%s(理论值)。但考虑到低通滤波器的特性和设计难度以及对输出信号杂散的抑制,实际的输出频率带宽仍能达到40%s。 (2)频率转换时间短 DDS是一个开环系统,无任何反馈环节,这种结构使得DDS的频率转换时间极短。事实上,在DDS的频率控制字改变之后,需经过一个时钟周期之后按照新的相位增量累加,才能实现频率的转换。因此,频率转换的时间等于频率控制字的传输时间,也就是一个时钟周期的时间。时钟频率越高,转换时间越短。DDS的频率转换时
8、间可达纳秒数量级,比使用其它的频率合成方法都要短数个数量级。 (3)频率分辨率极高若时钟s的频率不变,DDS的频率分辨率就由相位累加器的位数决定。只要增加相位累加器的位数N即可获得任意小的频率分辨率。目前,大多数DDS的分辨率在Hz数量级,许多小于MHz甚至更小。 (4)相位变化连续 改变DDS输出频率,实际上改变的每一个时钟周期的相位增量,相位函数的曲线是连续的,只是在改变频率的瞬间其频率发生了突变,因而保持了信号相位的连续性。 (5)输出波形的灵活性只要在DDS内部加上相应控制如调频控制FM、调相控制PM和调幅控制AM,即可以方便灵活地实现调频、调相和调幅功能,产生FSK、PSK、ASK和
9、MSK等信号。另外,只要在DDS的波形存储器存放不同波形数据,就可以实现各种波形输出,如三角波、锯齿波和矩形波甚至是任意的波形。当DDS的波形存储器分别存放正弦和余弦函数表时,既可得到正交的两路输出。 (6)其他优点 由于DDS中几乎所有部件都属于数字电路,易于集成,功耗低、体积小、重量轻、可靠性高,且易于程控,使用相当灵活,因此性价比极高。第二章 AD9850简介2.1 AD9850功能概述 AD9850是高稳定度的直接数字频率合成器件,内部包含有输入寄存器、数据寄存器、数字合成器(DDS)、10位高速D/A转换器和高速比较器。AD9850高速的直接数字合成器(DDS)核心根据设定的32位频
10、率控制字和5位相移控制字,可产生0.029Hz到62.5MHz的正弦波信号和标准的方波信号。该器件提供了并行和串行控制字输入,可通过并行接口或串行接口实现控制字的定入,以改变其输出频率和相位。其主要特性如下:(1)单电源供电,+5V或+3.3V;(2)功耗低,380mW(5V),155mW(3.3V);(3)具有电源关断功能;(4)工作温度:-40-+85。1.2 AD9850的引脚功能AD9850是28脚SOP表面封装,体积小,易用于便携仪器。其AD9850排列如图1所示,功能如下: (1)D0-D7,控制字并行输入端,其中D7可作为串行输入; (2)DGND,数字地;(3)DVDD,为内部
11、数字电路提供电源;(4)WCLK,控制字装入时钟;(5)FQUD,频率更新控制;(6)CLK,输入时钟;(7)AGND,模拟地;(8)AVDD,为内部模拟电路提供电源,可与数字电源共用;(9)RSET,DAC外接电阻;(10)QOUT,QB,内部比较器输出端;图3-1 AD9850引脚图(11)VINN,VINP,内部比较器输入端;(12)DACBL,内部DAC外接参考电压端,可空;(13)IB,IOUT,DAC输出端;(14)RES,复位端。3. AD9850工作原理 3.2.1控制字格式及写入时序 AD9850包含一个40位输入寄存器,其中低32位为频率控制字,高5位为相位控制字,还有一位
12、电源使能位和两位测试位。AD9850的控制字有并行和串行两种写入方式,时序如图5-2所示。并行装入模式下,WCLK第一个时钟上升沿到来时,装入高8位控制字,依次下去,当第5个WCLK时钟到来时装入低8位控制字,这样,连续5个WCLK时钟即可将40位控制字装入输入寄存器。第5个WCLK时钟后,WCLK时钟将不再起作用,直到FQUD时钟上升沿以来或重新复位。FQUD时钟上升沿将40位控制字写入数据寄存器,AD9850输出新的频率波。对于串行模式,每一个WCLK时钟上升沿,由控制字输入口的第8位(管脚25)移入1位控制位(低位先移入),40个WCLK时钟后,FQUD脉冲的上升沿更新输出频率。值得注意
13、的是两位测试位仅是为了生产测试用,必须是00。3.2.2频率输出原理AD9850的直接数字合成技术是基于数字分频原理实现频率合成的。器件内部 有一个增量可调的累加器,每接收到一个输入脉冲,累加器就增加所设定的增量(由写入的32位频率控制字决定),当累加器溢出时,就输出一临界值,AD9850用一种算法逻辑把累加器输出值转换为接近正弦的量化值,这种算法逻辑实际上就是由高度集成化的存储器查表技术和数字信号处理(DSP)技术来完成的。随后AD9850将量化值送内部的D/A转换器输出正弦波形,若再辅以外部电路(低通滤波)送内部比较器,即可输出标准的方波信号。其输出频率out由输入参考时钟和32位频率控制
14、字决定,即 =WD*CLK/ ,其中WD是32位频率控制字,CLK为输入时钟。由于AD9850是由10位D/A转换器输出正弦波信号,因此其输出频率最大值不能超过参考输入频率的1/2。当作为时钟源时,考虑到衰减问题,其输出频率的最佳值限制在参考输入频率的33%以下。器件内部设有最小时钟门限,当输入频率低于1MHz时,芯片将自动实现电源判断。3.3 AD9850应用与设计 AD9850主要应用于频率合成以及数字通信领域,但由于其具有分频特性且易于控制,这里,我们把它应用于信号发生器。3.31.AD9850的应用 由于AD9850是贴片式的体积非常小,引脚排列比较密,焊接时必须小心,还要防静电,焊接
15、不好就很容易把芯片给烧坏。还有在使用中数据线、电源等接反或接错都很容易损坏芯片。所以在AD9850外围采用了电源、输入、输出、数据线的保护电路。为了不受外界干扰,还应添加了滤波电路,显得整个电路完美。3.32.AD9850的硬件设计采用AT89C51作为CPU与AD9850并行接口方式对时钟频率进行分频控制,其中先用一片锁存器来锁存控制字,用P3.2、P3.4模拟控制字写入时钟来控制数据的定入。控制字写入后,AD9850即由内部D/A转换器输出正弦波。电路设计时,对时钟信号的质量要求比较高,即时钟信号的上升沿和下降沿应无大的尖峰和凹坑,时钟信号必须用地线屏蔽。另外,给AD9850的时钟信号不能
16、低于1 MHz,低于这个数值时,芯片将自动进入休眠状态;当高于此频率时,系统则恢复正常。最后还 要考虑设计良好的去耦电路,去耦电容尽可能靠近器件,并注意良好接地,模拟地和数字地一定要分开等。第三章 单片机80C51的简介2.1 主芯片80C51的硬件资源2.1.1单片机的概念 单片机(microcontroller,又称微控制器)是在一块硅片上集成了各种部件的微型计算机。这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。图2-1是80C51单片机的基本结构图 1.80C51单片机的结构特点有以下几点: 8位CPU; 片内振荡器及时钟电路; 3
17、2根I/O线; 外部存储器ROM和RAM,寻址范围各64KB; 两个16位的定时器/计数器; 5个中断源,2个中断优先级 全双工串行口 布尔处理器2.定时器/计数器80C51内部有两个16位可编程定时器/计数器,记为T0和T1。16位是指它们都是由16个触发器构成,故最大计数模值为2-1。可编程是指他们的工作方式由指令来设定,或者当计数器来用,或者当定时器来用,并且计数(定时)的范围也可以由指令来设置。这种控制功能是通过定时器方式控制寄存器TMOD来完成的. 如果需要,定时器在计到规定的定时值时可以向CPU发出中断申请,从而完成某种定时的控制功能。在计数状态下同样也可以申请中断。定时器控制寄存
18、器TCON用来负责定时器的启动、停止以及中断管理在定时工作时,时钟由单片机内部提供,即系统时钟经过12分频后作为定时器的时钟。技术工作时,时钟脉冲由TO和T1输入3.中断系统80C51的中断系统允许接受五个独立的中断源,即两个外部中断申请,两个定时器/计数器中断以及一个串行口中断。外部中断申请通过INTO和INT1(即P3.2和P3.3)输入,输入方式可以是电平触发(低电平有效),也可以是边沿触发(下降沿有效)。两个定时器中断请求是当定时器溢出时向CPU提出的,即当定时器由状态1转为全零时提出的。第五个中断请求是由串行口发出的,串行口每发送完一个数据或接收完一个数据,就可提出一次中断请求2.1
19、.2 80C51的芯片引脚如图2-2所示VCC:供电电压。GND:接地。P0口: P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作 图2-2 80C51引脚图为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口: P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故
20、。在FLASH编程和校验时,P1口作为第八位地址接收。P2口: P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。因此作为输入时,P2口的管脚被外部拉低,将输出电流,这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口: P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写
21、入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST: 复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PR
22、OG: 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN: 外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部
23、数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP: 当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2: 来自反向振荡器的输出。2.1.3 使用I/O口的注意事项(1) P1,P2,P3口的输出缓冲器可驱动4个LSTTL电路。对于HCMOS芯片单片机的I/O口,在正常情况下,可任意由TTL或NMOS电路驱动
24、。HMOS及CMOS性的单片机I/O口有集电极开路或漏极开路的输出来驱动时,不必外加上拉电阻(2)对于74LS系列,CD4000系列以及一些大规模集成电路芯片(如8155,8253,8279等),都可以和MCS-51系列单片机直接接口。具体使用时,可以查阅有关器件手册或参考典型电路(3)对一些线性组件,特别是应用键盘、码盘、LED显示器等输入/输出设备时,应当尽量增加驱动部分的容量,否则,单片机将提供不出足够的驱动电流供给负载使用2.2 80C51中断系统 所谓中断,是指当计算机执行正常程序时,系统中出现某些急需处理的异常情况和特殊情求,CPU暂停执行现行程序,转去对随机发生地更紧迫事件进行处
25、理;处理完毕后,CPU自动返回原来的程序继续执行。中断允许软件设计不需要关心系统其他部分定时要求,算术程序不需要考虑隔几个指令检查I/O设备是否需要服务。相反,算术程序编写时好像有无限的时间作算术运算而无其他工作在进行。若其它事件需要服务时,则通过中断告诉系统。 80C51单片机有5个中断源,有两个中断优先级,每个中断源的优先级可以编程控制。中断允许受到CPU开中断和中断源开中断的两级控制。2.2.1 中断源 中断源是指任何引起计算机中断的事件,一般一台机器允许有许多个中断源。80C51系列单片机至少有5个中断源。增加很少的硬件就可把各种硬件中断源“线或”成为一个外部中断输入,然后再顺序检索一
26、起中断的特定源。80C51单片机的5个中断源是: 外部中断请求0,由 (P3.2)输入; 外部中断请求1,由 (P3.3)输入; 片内定时器/计数器0益处中断请求; 片内定时器/计数器1 溢出中断请求; 片内串行口发送/接收中断请求; 为了了解每个中断源是否产生了中断请求,中断系统应设置许多个中断请求触发器(标志位)实现记忆。这些中断源请求标志位分别有特殊功能寄存器TCON和SCON的相应位锁存定时器/计数器控制寄存器TCON,它是一个八位的寄存器,各位如下表所示TF1TF0IE1IT1IE0IT0 IT0,IT1:外部中断0、1触发方式选择位,由软件设置。1是下降沿触发,0是电平触发。 IE
27、0,IE1:外部终端0、1请求标志位。 TF0,TF1:定时器/计数器0、1溢出中断请求标志。2.2.2 中断的控制 中断的控制主要实现中断的开关管理和中断优先级的管理。这个管理主要通过对特殊功能寄存器IE和IP的编程实现。(1)中断允许寄存器IEEAET2ESET1EX1ET0EX0 EX0,EX1:外部终端0,1的中断允许位。1是中断开,0是中断关 ET0,ET1:定时器/计数器0、1溢出中断允许位。1是开中断,0是关中断 ES:串行口中断允许位。1是中断开,0是中断关 ET2:定时器/计数器2溢出中断位 EA:CPU开/关中断控制位。1是开中断,0是关中断(2)中断优先级寄存器IPPSP
28、T1PX1PT0PX0 若系统中多个中断源同时请求中断,则CPU按中断源的优先级别,由高到低分别响应。80C51单片机有两个中断优先级:高优先级和低优先级。每个中断源都可以编程为高优先级。这可以实现两级中断嵌套。嵌套的原则:一个正在执行的中断服务程序可以被高级的中断请求中断,而不能被同级或较低级的中断请求中断。两级中断通过使用IP寄存器设置,相应的位置1,则优先级高,0则优先级低。PX0、PX1:终端0、1中断优先级控制;PT0、PT1:定时器/计数器0、1中断优先级控制。PS:串行口中断优先级控制。80C51复位时,IP被清零,5个中断源都在同一个优先级。这时若其中几个中断源同时产生中断请求
29、,则CPU按照片内硬件优先级链路的顺序相应中断,硬件优先级由高到低的顺序是:外部终端0 定时器/计数器0 外部中断1 定时器/计数器1 串行口中断。2.2.3 中断响应 80C51的CPU在每个机器周期采样中断源的中断请求标志位,如果没有上述阻止条件,则将在下一个机器周期响应被激活的最高级中断请求。阻止条件如下: CPU正在处理同级或更高级的中断; 现行机器周期不是所执行指令的最后一个机器周期; 正在执行的是RETI或者是访问IE或IP的指令;CPU在中断响应之后完成如下操作: 硬件清除相应的中断标志位; 执行一条硬件子程序,保护断点,并转向中断服务程序入口。 结束中断时执行RETI指令,恢复
30、断点,返回主程序。80C51的CPU在相应中断请求时,由硬件电路自动形成转向与该中断源对应的中断的服务程序入口地址。这种方法为硬件向量中断法。各中断源的中断服务程序入口地址如下:编号中断源入口地址0外部终端00003H1定时器/计数器0000BH2外部终端10013H3定时器/计数器1001BH4串行口中断0023H 各中断服务程序入口地址仅隔8个字节,编译器在这些地址放入无条件转移指令,跳到服务程序的实际地址。向量中断包括把先前的程序计数指针推入堆栈,中断服务程序很像其他子程序。当向量中断发生时,硬件禁止所有中断。此时表明外部中断或定时器溢出的标志位由硬件清除。中断服务程序的不同分支取决于中
31、断源。在重新允许全局CPU中断EA之前,必须仔细清除各种标志。标志会引起立即地重复中断。80C51对终端实际上有特殊的返回指令-RETI。不是RET。RETI重新允许系统识别其他中断。因而,没必要在正常使用中断时复位EA,只要在程序初始化时开中断一次就可以了。2.3 单片机定时/计数器的使用 80C51系列单片机至少有两个16位内部定时器/计数器。8052有三个定时器/计数器,其中连个基本定时器/计数器是定时器/计数器0和定时器/计数器1。他们既可以编程为定时器使用,也可以编程为计数器使用。若是计数内部晶振驱动时钟,则它是定时器;若是计数80C51的输入引脚的脉冲信号,则它是计数器。80C51
32、的T/C时加一计数的。定时器实际上也是工作在技术方式下的,只不过对固定频率的脉冲计数;由于脉冲周期固定,由计数值可以计算出时间,有定时功能。当T/C工作在定时器时,对振荡源12分频的脉冲计数,即每个机器周期计数值加一,频率加=fosc/12。晶振为6MHz,计数频率=500KHz,每2uS计数加一。当T/C工作在计数器时,计数脉冲来自外部脉冲输入引脚T0或T1。当T0或T1脚上负跳变需2个机器周期,即24个振荡周期。所以T0或T1脚输入的计数外部脉冲的最高频率为fosc/12。当晶振为12MHz时,最高技术频率为500KHz,高于此频率将计数出错。2.3.1与T/C有关的特殊功能寄存器(1)计
33、数寄存器TH和TLT/C是16位的,计数寄存器有TH高8位TL低8位构成。在特殊功能寄存器中,对应T/C0为TH0和TL0;对应T/C1为TH1和TL1。定时器/计数器的初始值通过TH1/TL1和TH0/TL0设置(2)定时器/计数器控制寄存器TCONTR1TR0TR0、TR1:定时器/计数器0、1启动控制位。1是启动,0是停止TCON复位后清零,T/C需要受到软件控制才能启动计数;当计数计满时,产生向高位的进位TF,即溢出中断请求标志T/C的方式控制寄存器TMODGATEC/TM1M0GATEC/TM1M0 C/T:计数器或定时器选择位。1位计数器,0位定时器 GATE:门控信号。1时T/C
34、的启动控制受到双重控制,即要求TR0/TR1和INT0/INT1同时为高;0时T/C的启动仅受TR0/TR1控制 M1和M0:工作方式选择位,具体见下表M1 M0方式功能0 00为13位定时器/计数器,TL存低5位,TH存高8位0 11为16定时器/计数器,TL存低8,TH存高8位1 02常数自动装入的8位定时器/计数器1 13仅适用于T/C0,两个8为定时器/计数器2.3.2 定时器/计数器的初始化(1)初始化步骤 在使用80C51的定时器/计数器前,应对它进行编程初始化,主要是对TCON和TMOD编程,还需要计算和装载T/C的计数初值。一般完成以下几个步骤: 确定T/C的工作方式-编程TM
35、OD寄存器。 计算T/C中的计数初值,并装载到TH和TL。 T/C在中断方式工作时,须开CPU中断和源中断-编程IE寄存器。 启动定时器/计数器-编程TCON中TR1和TR0位(2)计数初值的计算 在定时器方式下,T/C是对机器周期脉冲计数的,如果fosc=6MHz,一个机器周期为2us,则方式0 13位定时器最大时间间隔=(2 -1)*2us=16.384ms;方式1 16位定时器最大时间间隔=(2 -1)*2us=131.072ms;方式2 8位时器最大时间间隔=(2 -1)*2us=512us若使T/C工作在定时器方式1,要求定时1ms,求计数初值。如设计数初值为x,则有(2 -1)*2
36、us=1000usx=2 -500因此,TH,TL可置65536-500。第四章 DDS信号源系统设计4.1 方案论证与比较4.1.1 正弦波生成方案方案一:采用自激振荡。1.产生正弦波自激振荡的平衡条件为: 幅度平衡条件 AF=1相位平衡条件 jAF = jA+j F = 2np , n为整数实质上,只要电路中的反馈是正反馈,相位平衡条件就一定满足,这是由电路结构决定的,而幅度平衡条件则由电路参数决定,当环路增益 AF1时,电路产生等幅振荡;AF1时,电路产生增幅振荡。 2选频特性 在振荡电路中,当放大电路或正反馈网络具有选频特性时,电路才能输出所需频率f0的正弦信号。也就是说,在电路的选频
37、特性作用下,只有频率为f0的正弦信号才能满足振荡条件。 3稳幅措施 如果振荡电路满足起振条件,在接通直流电源后,它的输出信号将随时间的推移逐渐增大。当输出信号幅值达到一定程度后,放大环节的非线性器件接近甚至进入饱和或截止区,这时放大电路的增益A 将会逐渐下降,直到满足幅度平衡条件AF 1,输出信号将不会再增大,从而形成等幅振荡。这就是利用放大电路中的非线性器件稳幅的原理。由于放大电路进入非线性区后,信号幅度才能稳定,所以输出信号必然会产生非线性失真(削波)。为了改善输出信号的非线性失真,常常在放大电路中设置非线性负反馈网络(如,热敏电阻、半导体二极管、钨丝灯泡等),使放大电路未进入非线性区时,
38、电路满足幅度平衡条件(AF=1),维持等幅振荡输出。这是一种比较好的稳幅措施。由基本放大器A和正反馈网络F组成的闭合正反馈环路,如图4-1所示。由闭合环路组成的自激振荡器,其振荡产生的起始信号来自于电路中的各种起伏和外来扰动这些电信号中含丰富的频率成分,经选频网络选出某频率的信号输送至放大器A放大后,经F网络反馈后再放大,反复循环直至电路的输出由小至大。最后建立和形成稳定的波形输出。但此电路易受外界的干扰,波形不易于稳定,而且难以达到题目中所要求的波形频率,操作麻烦。图4-1 闭合正反馈环路图方案二:采用单片机最小系统与AD9850并行接口方式对时钟频率进行分频控制,再连接锁相环,使输出波形的
39、频率更加稳定。如图4-2所示,AD9850内含可编程DDS系统和高速比较器,能实现全数字编程控制的频率合成。AD9850是以高速的直接数字合成器(DDS)为核心根据设定的32位频率控制字和5位相移控制字,可产生0.029Hz到62.5MHz的正弦波信号和标准的方波信号,而且DDS芯片转换速度快、性能价格比高、体积小、输出波形稳定度,精度高、分辨率高,而且输出波形的频率、相位可控,能达到题目预期的效果,操作方便,易于实现。经比较,故在本设计中采用方案二。4.1.2 输出电压幅度控制方案方案一:采用多级放大电路。由两个晶体管构成共射共集放大电路如图4-3,第一级起到电压放大作用,达到正弦信号峰-峰
40、值输出,第二级为跟随器,主要为了能够带50欧的负载,使其负载上的正弦信号的输出电压的峰-峰值达到题目的要求。此电路只是在调试选定具体参数中比较麻烦,但工作比较稳定,比较易于实现。图4-3 共射-共基放大电路的交流通路方案二:采用可变增益放大器。增益放大器直接与AD9850相接,用来实现电压的放大并且控制波形的失真,精确度高,且较稳定,实现简单。可以采用AD603,它正是这样一种具有程控增益调整功能的芯片。它是美国ADI公司的专利产品,是一个低噪、90MHz带宽增益可调的集成运放,如增益用分贝表示,则增益与控制电压成线性关系,压摆率为275V/s。管脚间的连接方式决定了可编程的增益范围,增益在-
41、11+30dB时的带宽为90Mhz,增益在+9+41dB时具有9MHz带宽,改变管脚间的连接电阻,可使增益处在所需范围内。本设计采用方案二。4.1.3 模拟幅度调制方案一:采用DDS芯片与0832分别产生正弦波,再经乘法器进行波形幅度调制,如图4-4所示。DDS产生调制正弦波信号,范围在1兆赫兹到10兆赫兹。0832产生正弦波载波,频率为1kHz。单片机可以控制调制信号的步进量,但由于在本设计中所采用的51单片机不具备达到设计中所需正弦波载波的频率,因而此方案不能采用。方案二:采用两片DDS芯片分别产生正弦波调制信号与载波信号,如图4-5所示。产生的信号再由模拟乘法器进行调幅,用数字电位器来控
42、制调制信号的步进量,此方案产生的波形稳定,且易于实现,能够基本实现设计中的要求。4.1.4 数字PSK/ASK载波调制方案一:采用两片DDS芯片分别产生正弦波和方波,如图4-6所示,在ASK的载波调制中,正弦波和方波通过模拟乘法器进行调制;在PSK的调制中,正弦波和方波通过高频继电器进行调制。但DDS芯片产生方波外界电路较为复杂,不易于调试。方案二:采用555芯片来产生方波,DDS芯片来产生正弦波,如图4-6所示。在ASK的载波调制中,正弦波和方波通过模拟乘法器进行调制;在PSK的调制中,正弦波和方波通过高频继电器进行调制。此方案中所实现的方波较为稳定,易于调试。 经比较,本设计采用方案二。
43、根据题目的具体要求,以及各方案的讨论及研究得出了最终的整体方案,下图既为本设计的主体系统设计图4-7。4.2 单元电路设计4.2.1 正弦波的生成 本设计中单片机最小系统中的8155与AD9850芯片的接口采用的是8位并行接口方式。AD9850的频率/相位控制字共有40位,并行加载时,要连续加载5次,D7位最高位,D0位最低位。频率相位控制字的第一个8位中的5位用来控制相位的调制,1位用来低功耗,2位用于装载格式。第2个字节到第5个字节组成32位的频率控制字,其输出信号的频率f= ,其中 为32位频率控制字的值, 为工作时钟。8155的PB口(PB0脚PB7脚)与AD9850的数据口(D0脚D
44、7脚)相接,AD9850的第7脚WCLK是加载时钟,与引脚FQUD配合,完成数据加载,FQUD为频率/相位更新控制。用单片机的P3.2与P3.4分别与AD9850的WCLK和FQUD相连接,模拟控制字写入时钟来控制数据的定入。本设计中AD9850选用的时钟为66MHz。AD9850波形的输出频率可以达到几十MHz。连接如图4-8所示。4.2.2 输出电压幅度控制最初输出电压的幅度控制由模拟电路(晶体管等)来实现。正弦波从AD9850输出后进入到模拟电路中,晶体管基极上的10微法电容和100皮法电容分别控制高频信号和部分低频信号的通过,第一级为放大电路,实现电压的放大,使其输出电压的峰-峰值达到
45、5伏到7伏之间,晶体管采用9018,测得它的电流放大倍数 ,集极的电压控制为所加电压源的一半,本设计中晶体管所加电源为12伏,因此集极的电压为6伏,初始先定集极的电阻为3千欧,根据公式由 得出从而得出集极的电流 ,进而由 求得基极的电阻,发射极直接接地,从而构成了共射放大电路,实现输出电压的峰-峰值要求(5伏7伏)。第二级为跟随器,从而能够带动50欧的负载。基极与发射极由0.1微法的电容所构成的回路为自举电路。基极接电阻后直接接到电源,发射极直接接负载从而构成了跟随器。根据调试再对相应的参数进行调整,来实现整个电路的运行,最终实现在频率范围内50欧负载电阻上正弦信号输出电压的峰-峰值(5伏7伏)。 但在设计过程中,发现模拟电路部分难以实现,于是我们采用了添加自动增益放大器芯片的方法来实现设计的要求。采用的是美国ADI公司的AD603芯片如图4-9,经它放大后,可以实现设计的要求,达到输出波形的幅度标准。4.2.3 模拟信号的产生 为了能够产生模拟幅度调制信号,设计要求在1MHZ-10MHZ范围内调制度可在10%-100%之间可调,所以由DDS芯片产生的正弦波调制信号能够进行调节,为了实现调节的步进,应该使用数字电位器,利用单片机进行程控,不过因为时间紧,未能