毕业设计(论文)-数字频率合成器.doc_第1页
毕业设计(论文)-数字频率合成器.doc_第2页
毕业设计(论文)-数字频率合成器.doc_第3页
毕业设计(论文)-数字频率合成器.doc_第4页
毕业设计(论文)-数字频率合成器.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

桂林电子工业学院毕业设计(论文)报告用纸 第 43 页 共 43 页引言自本世纪30年代末频率合成技术开始建立,迄今为止,频率合成技术已有近70年的历史。随着数字集成电路和微电子技术的发展,1971年,美国学者J.Tierney,C.M.Rader和B.Gold提出了以全数字技术,从相位概念出发直接合成所需波形的一种新的频率合成原理直接数字频率合成(Direct Digital Frequency Synthesize)技术,它将先进的数字处理技术和方法引入信号合成领域。DDS的出现导致了频率合成技术领域的第二次革命。全套设计加扣3012250582 直接数字频率合成器(Direct Digital Frequency Synthesis简称DDS)问世之初,构成DDS元器件的速度的限制和数字化引起的噪声这两个主要缺点阻碍了DDS的发展与实际应用。近几年超高速数字电路的发展以及对DDS的深入研究,DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平。随着微电子技术的迅速发展,直接数字频率合成器得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的姣姣者。其主要优点有:(1)频率转换快:DDS频率转换时间短,一般在纳秒级;(2)分辨率高:大多数DDS可提供的频率分辨率在1 Hz数量级,许多可达0.001 Hz;(3)频率合成范围宽;(4)相位噪声低,信号纯度高;(5)可控制相位:DDS可方便地控制输出信号的相位,在频率变换时也能保持相位联系;(6)生成的正弦/余弦信号正交特性好等。因此,利用DDS技术特别容易产生频率快速转换、分辨率高、相位可控的信号,这在电子测量、雷达系统、调频通信、电子对抗等领域具有十分广泛的应用前景。 1 课题要求1、 要求信号输出范围为010MHz。2、 可对输出信号进行频率的连续调节。2 对DDS理论知识的理解从算术理论上来说明DDS的可行性。DDS技术是一种把一系列数字量形式的信号通过DAC转换成模拟量形式的信号的合成技术。目前使用最广泛的一种DDS方式是利用高速存储器做查询表,然后通过高速DAC产生已经用数字形式存入的正弦波。结合数据采集接口并存储,可以得到任意波形。参数与假设: 驱动时钟频率:标准信号一周期采样点为N2n ,按8bit量化,保存在ram中:要得到的输出频率 :数字相位增量,作为从ram中取值增量,即在标准信号中每隔B个样点取出一个点作输出信号样点。:当前相位累加值,即当前ram中取址地址。:设= :精度为:输出信号一周期至少采样点数为2分析与推导:假设223Hz,m23,5,n10,同时输出信号均未接低通滤波器以滤除倍频的高频分量 输出信号每周期采样点为2;(刚好满足采样定理)在标准信号中每隔个样点取出一个点作输出信号样点下页图2.1就是对应的采样图0-0.5-10.5100.20.40.60.81.01.21.4标准被采样信号,f=fclk=8388608HZ0-0.5-10.5101234567抽样信号理想输出信号输出信号抽样点dds输出样信号,f=fout4194304HZ图2.1采样点为2时采样图输出信号每周期采样点数为4;在标准信号中每隔 个样点取出一个点作输出信号样点图2.2是对应的采样图0-0.5-10.5100.20.40.60.81.01.21.4标准被采样信号,f=fclk=8388608HZ-0.5-10.5100.20.40.61.00抽样信号理想输出信号输出信号抽样点dds输出样信号,f=fout2097152HZ图2.2采样点为4时采样图 输出信号每周期采样点数为8;在标准信号中每隔B2n/8个样点取出一个点作输出信号样点 ,图2.3是对应的采样图。0-0.5-10.5100.20.40.60.81.01.21.4标准被采样信号,f=fclk=8388608HZdds输出样信号,f=fout1048576HZ图2.3采样点为8时采样图个样点取出一个点作输出信号样点,下页图2.4是对应的采样图。0-0.5-10.5100.20.40.60.81.01.21.4标准被采样信号,f=fclk=8388608HZ10.500.51123456789dds输出样信号,f=fout262144HZ图2.4采样点为32时采样图可见此时输出信号与理想的信号已经相当接近,也就是说几乎没有倍频分量了 输出信号每周期采样点数为 即在标准信号中每隔个样点取出一个点作输出信号样点 其中, 而为频率输出精度,为硬件实现方便,取为fclk/Q1Hz,则有: 用硬件实现相当好处理,为此设立了累加器使则Acc的高n位就是,当要求一定输出信号失真时,设输出信号一周起至少采样点数位即 用(ml)bit保存,作为Acc的增量,Acc用m bit保存,由以上分析,得到硬件实现。3 直接数字式频率合成器的基础直接数字式频率合成器就是英文DDS的中文翻译,除了知道DDS信号处理方面的理论演算知识,还必须清楚的理解DDS的硬件构成原理。所以在本次毕设里本人也着重描述了自己对DDS硬件知识的理解,下面描述的也是硬件的可行性。 3.1 直接数字式频率合成器基本原理与结构直接数字式频率合成器(英文简称DDS)是将先进的数字处理理论与方法引入频率合成的一项新技术。它就是把一系列数字量形式的信号通过数/模转换器转换成模拟量形式的信号。DDS有两种基本合成方式。一种合成方式是根据正弦函数关系式,按照一定的时间间隔,利用计算机进行数字递推关系计算,求解瞬时时正弦函数幅值并实时地送入数/模转换器,从而合成出所要求频率的正弦波信号。这种合成方式具有电路简单,成本低,合成信号频率的分辨率很高等优点;但是由于受到计算机速度的限制,合成信号频率较低,一般在几kHz左右。另一种合成方式是用硬件电路取代计算机的软件运算过程,即利用高速存储器将正弦波的M个样品存在其中,然后以查表的方式按均匀的速率把这些样品输入到高速数/模转换器,变换成所设定频率的正弦波信号。这种合成方式由于采用高速存储器产生正弦波幅值数据,因此合成频率可以做得很高,目前已达到数百MHz。这就是目前使用最广泛的一种DDS频率合成方式。本次毕设采用的就是后种方式。由数字信号处理知识知道,对于一个周期的连续正弦信号,可以沿其相位轴方向,以等量的相位间隔对其进行相位幅值采样,得到一个周期的正弦波信号的离散相位幅值序列。然后,根据合成波形的精度要求,采用接近的整数值表示其相应的幅值序列,即对模拟幅值进行量化。量化后的幅值采用相应的二进制数据进行编码。这样,就把一个周期的正弦波连续信号转换成一系列离散的二进制表示的数据量,然后通过一定的方法固化在只读存储器中。每个存储单元地址的地址就是相位取样地址,存储单元的内容既是已经量化的正弦函数功能表。只要输入相位地址,就可以立即得到对应的正弦波幅值数据,从而取代了计算机对正弦函数关系的递推运算。由于只读存储器的工作精度很高,所以合成信号频率也就可以做得很高。因此,高速只读正弦波波形存储器是目前DDS频率合成得核心单元。DDS基本结构框图如图3.1.1所示。DDS由相位累加器,正弦查询表,数/模转换器(DAC)和低通滤波器(LPF)组成。图中的参考时钟是一个稳定的晶体振荡器,用它来同步整个合成器的各个组成部分。相位累加器类似于一个简单的计数器,在每个时钟输入时,它的输出就增加一个步长的相位增量值。相位累加器把频率控制器FSW的数据通过相位抽样来确定输出频率的大小。相位增量的大小随外部指令FSW的不同而不同,一旦给定了相位增量,输出频率也就确定了。图中的正弦查询表是一个可编程只读存储器(PROM),存有一个或多个完整周期的正弦波数据。在时钟驱动下,地址计数器逐步经过PROM的地址,地址中相应的数字信号输出到N位数/模转换器的输入端,由DAC转换成模拟信号。当用这样的数据寻址时,正弦查询表就把存储在相位累加器中的抽样值转换成正弦波幅度的数字量函数。数/模转换器把数字量变成模拟量,低通滤波器进一步平滑并滤掉外带杂散信号,得到所需的正弦波波形。图3.1 DDS基本结构框图DDS的输出频率和参考时钟,相位累加器长度N以及频率控制字FSW的关系为: (式3.1)DDS频率分辨率为 (式3.2)由于DDS的输出最大频率受奈奎斯特抽样定理限制,所以 (式3.3)常用的可编程DDS的结构如图3.1.2所示。改DDS系统的核心是相位累加器,它由两个加法器和一个N位相位寄存器组成,N一般为2432位。每来一个时钟fc,相位寄存器以步长M增加。相位寄存器的输出与相位控制字相加,然后输入到正弦查询表地址上。正弦查询表包含一个周期正弦波的数字幅度信息,每个地址对应正弦波中 范围的一个相位点。正弦查询表把输入的地址相位信息映射成正弦波幅度信号,驱动DAC,输出模拟量。相位寄存器每经过个时钟后回到初始状态,相应地正弦查询表经过一个循环回到起始位置。整个DDS系统输出一个正弦波。输出的正弦波周期为: (式3.4)输出频率为: (式3.5)频率分辨率为: (式3.6)图3.2常用的可编程DDS结构一个频率/相位/幅度可编程DDS结构如图3.3.3所示。其中,参考信号为高稳定的晶体振荡器,其输出为DDS各部分提供同步信号:相位累加器是DDS的核心,由一个N位字长的二进制加法器和一个由时钟取样的N位寄存器组成,作用是对频率控制字K进行线性累加;波形存储器中所存储的是一张函数波形查询表,对应不同的相位序列对波形存储器寻址,得到一系列离散的幅度编码。该幅度编码经D/A转换后得到对应的阶梯波,最后经低通滤波器平滑后可以得到所需的模拟波形。设相位累加器字长为N,则DDS输出频率和频率最好分辨率为 (式3.7) (式3.8)通过改变相位控制字P可以控制输出信号的相位参数。令相位加法器的字长为M,当相位控制字由0跃变到P(P0)时,波形存储器的输入为相位累加器的输出与相位控制字P之和,因而其输出的幅度编码相位会增加 ,使最后输出的模拟信号产生相移。相移最小步进主要取决于相位加法器的字长,最小相移分辨率则取决于相位累加器的字长N,其计算公式为 (式3.9) (式3.10)DDS输出信号的幅度可通过在波形存储器之后插入一个数字相乘器来实现,幅度控制字A起到对波形存储器的输出幅度编码进行加权的作用。由以上分析可以知道,当DDS的相位累加器字长和相位加法器字长固定后,通过改变K,P和A可以有效地控制DDS输出模拟信号的频率,相位和幅度。如上页图3.3所示的DDS是一个全数字结构的开环系统,无反馈环节,因此速度极快,一般都在ns量级。图3.3频率/相位/幅度可编程DDS结构由于DDS为全数字结构,因此导致DDS存在致命缺陷,即杂波分布广泛。当杂波落入输出频带内,则无法滤除。杂波主要是由于数字器件的非理想特性而带来的幅度量化误差和相位截断等因素所致。其主要杂波分量遵循奈奎斯特抽样定理,杂波分量出现在参考频率与输出频率的组合处,即(n0,1,2)处。如图3.4所示,在fo处的杂波信号最强,距输出信号频率最近的杂波分量为。f0fc-f0fcfc+f02fc2fc+f0A0f图3.4 DDS的杂波分量另外在介绍一下组合式频率合成器的结构常用的频率合成方法有模拟直接频率合成,锁相频率合成和直接数字式合成DDS三种。三种频率合成方法各有其有缺点。在技术指标要求的频率合成器种,常采用上述三种方法相结合的合成方法,即组合式频率合成法。 组合式频率合成通常有三种方法:模拟直接合成DDS,PLLDDS和模拟直接合成PLL+DDS等。 模拟直接合成PLLDDS组合式合成方法的计算公式如下式3.11所示。式中的晶振,谐波发生器和带通选频滤波器BF构成模拟直接合成法谐波选频合成法产生频率;PLL为混频相加环,它把DDS输出的高分辨率(NF)与相加后输出,即 (式3.11)式中:F为DDS频率分辨率,DDS可产生1Hz以下的高分辨率;N为某一范围内的正整数。3.2频率合成器的主要技术指标 由于频率合成器的应用范围比较广泛,不同用途的频率合成器其性能要求差别很大,因此很难用统一的一系列指标来表征频率合成器的性能。这里仅介绍在通信机中使用的频率合成器的主要技术指标。1)频率范围 频率范围是指频率合成器输出最低最低频率和最高之间的变化范围,也可以用频率覆盖系数来表示,即 (式3.11) 如果时,一般VCO是很难满足这一输出频率范围的。实践中可以把整个频段分为几个分波段,每个分波段由一个VCO来满足分波段频率范围。 2) 频率分辨率输出频率间隔频率分辨率是指相邻两个输出频率之间的间隔,故也称之为输出频率间隔,或频率步进间隔。 在通信系统中,希望波段内的频率通道尽可能多,以满足通信的要求,所以,希望尽可能小。目前PLL频率合成器可以做到为100KHz,10 KHz 或1 KHz ;而DDS合成器则可以做到1Hz以下。3) 频率准确度和稳定度频率准确度是指频率合成器的实际输出频率偏离标称频率的程度。标称频率是指国际和国内统一定标的基准频率。频率稳定度是指在一定时间间隔内合成器输出频率的变化大小。频率准确度和稳定度之间既有区别也有联系,只有稳定了才能准确。在实践中,通常将输出频率相对于标称频率的偏差也计在不稳定偏差之内,所以只提出一个频率稳定度指标即可。 频率稳定度可以分为长期稳定度,短期稳定度和瞬时稳定度,但其间无严格的界限。长期稳定度是指一年、一个月内的频率变化,主要由晶体和元器件老化所决定。短期稳定度是指日、小时内的频率变化,主要影响因素是内部电路参数的变化、外部电源的波动、温度变化及其它环境因素的变化。瞬时稳定度是指秒、毫秒间隔内的随机频率变化,主要影响因素是干扰和噪声。实践中瞬时稳定度在频域范围内表现为相位噪声频谱,通常用“功率频谱密度”表示。 在模拟直接频率合成器、锁相频率合成器和DDS合成器中,输出频率的稳定度主要取决于参考频率的稳定度。4) 换频时间换频时间是指合成器输出频率从一个频率点转换到另一个频率点并稳定工作所需的时间。换频时间对不同的合成方式是完全不同的:对于模拟直接合成发,可以做到ms量级下,甚至可以达到us;对于DDS合成发,目前已可以做到ns量级;而对于PLL合成法,主要取决于环路的锁定时间,如果环路中还有频率搜索电路,则搜索时间也应计算在内,目前PLL频率合成的换频时间大约为参考频率周期的25倍。在通信系统中,一般要求频率合成器的小于几十ms;而在时分多址和跳频体制的通信系统中,则要求在us量级,甚至ns量级。满足这种要求目前只能采用DDS合成法。5) 频谱纯度频谱密度是指频率合成器输出频率信号接近纯正弦波的程度。实际合成器的输出信号中含有大量不需要的频谱分量。这些分量主要表现为两种形式:寄生干扰和相位噪声。 寄生干扰频率又可以分为两种形式:谐波和杂散干扰频率。谐波一般由放大器的非线形特性产生,而杂散干扰频率实质是混频组合频率干扰。因此,混频器的非线性将是寄生干扰的主要来源。而减少寄生干扰的方法就是合理选择混频电路及合理选择混频输入信号幅度比,以保证混频器工作在线性状态;同时应设计性能好的滤波器,滤除干扰杂波。 频率合成器输出信号中的寄生干扰和相位噪声如图3.3所示。相位噪声在频谱上呈现主频两边的连续噪声频谱,其大小可以用频率轴上据主频fo处1Hz带宽内的相位功率谱密度表示。对PLL频率合成器而言,相位噪声主要来源于VCO的开环相位噪声有一直作用,因此必须合理设计PLL。对于DDS合成器,相位噪声取决于内部器件的非相干噪声。 0 40 相位噪声 80 谐波 杂散干扰 杂散干扰 120 图3.5频率合成器输出信号中的寄生干扰和相位噪声4 采用AD7008芯片构成的DDS 4.1 DDS芯片的选择 根据输出信号的要求不同,构成DDS的芯片也有很多。ADI公司(美国模拟电子器件公司)生产的DDS芯片有AD7008,AD9834,AD9852,AD9858等等。本次毕设要求输出频率达到10M。AD9834的相位累加器是28位,频率精确性能被控制在0.25billion以内,时钟速率为50MHz,因此它的最大输出频率可达25M(根据的是奈奎斯特抽样定理,后面将有说明),高频空间有些浪费。而AD9852的时钟频率为300MHz,输出最大频率能达到150MHz,造成更大的浪费空间,而且价格也不菲,不在这次毕设的考虑范围内。至于AD9858,功能强大,有一个可编程的,完整的高频合成器DDS系统,能产生频率高达400MHz的模拟正弦波,并且容许外部时钟频率高达2GHz。这种芯片用在只要产生10MHz的电路上将是极大的浪费,而且它的价格也不是学生做毕业设计所能承受的范围内的。AD7008是一个具有32位相位累加器的DDS芯片,频率精确性能被控制在四亿分之一以内。容许外部时钟频率范围为20M-50M,所以输出范围在10M-25M,这样,就可以根据要求灵活的选择外部时钟晶振频率了。而且价格也是在学生能承受的范围内。所以本人选择了用AD7008芯片构成10M的DDS信号源。 4.2 AD7008芯片的介绍AD7008芯片对本人来说,是一种全新的数字芯片,它的资料介绍都是外文的,学习起来比较困难。因此,在这次毕设论文里,本人决定详细的描述一下AD7008芯片的知识,并不是简单的将外文资料翻译成中文的,而是融合了自己在制作电路的过程中,对AD7008工作原理的理解。AD7008是ADI公司采用先进的直接数字合成(DDS)技术,推出的高集成度DDS频率合成器。图4.1所示为其功能框图(下页),它内部包括可编程DDS系统、高性能10位DAC、与微机的串行和并行接口以及控制电路等,能实现全数字编程控制的频率合成和时钟发生器。如果接上精密时钟源,AD7008即可产生一个频率和相位都可编程控制模拟正弦波输出。根据需要还可以对此信号进行调频、调相或调幅控制。此输出的信号可直接用作频率信号源或转换方波以作时钟输出。AD7008接口控制简单,可以用8位或16位并行口或单行口直接输入频率、相位、以及调幅幅度等控制数据。32位频率控制字在20MHz时钟时的输出频率分辨率可达0.047Hz,最大输出频率可达10MHz,器件采用CMOS低功耗工艺,不需信号输出时还可通过硬件或软件设置为低功耗方式。其最大输出电压、电流值分别为1V、20mA,采用单一正5V电源电及44脚PLCC封装形式。图4.1 AD7008的组成结构图AD7008包括三个主要部分:第一部分是由一个32位相位累加器、一个余弦/正弦表、一个1位的D/A转换器和两个频率、一个相位和两个幅度调节寄存器组成的可编程DDS数字合成系统;第二部分是用于设置AD7008的工作模式的一个命令寄存器和幅度调制单元;第三部分是并、串行接口及控制电路,用来和微机接口,以实现对频率、相位和幅度调节寄存器的写入修改。4.3 AD7008的芯片引脚功能下页图4.2即是引脚图图4.2 AD7008的管脚图电源电压引脚VAA :模拟电路的电源电压正端。VAA 与AGND间应该有1个0.1uf的去耦电容。AGND:模拟电路接地端。VDD:数字电路部分的电源电压正端。VDD与DGND之间有一个0.1uf的去耦电容。VDD的取值范围为55伏。DGND:数字接地端。AGND和DGND连接在一起共同接地。模拟信号和基准信号引脚。IOUT,:电流输出端。这是一个高阻抗电流源。IOUT要与通过一个负载电阻与AGND相连,而可以与地直接相连。FS ADJUST:满量程校准控制源。一个电阻连接引脚FS ADJUST 和引脚AGND之间。 电阻用来定义满量程DAC电流的大小。该电阻大小和满量程电流大小的关系如下(设该电阻为RSET): IOUTfullscale(mA)6233VREF/RSET; VREF1.27Vnormal RSET390 typicalVREF:参考电压输入。VREF和VAA之间连接一个0.1uf的瓷器电容。COMP:补偿引脚。和VAA 间通过一个0.1uf的耦合电容连接。数字接口和控制器引脚。CLOCK:DAC和NCO的时钟输入端。DDS输出频率用二进制的分数表示即为CLOCK频率的二进制的分数,输出频率和相位噪声由 该时钟定义。FESELECT:频率选择输入端,FESELECT 控制频率寄存器FREQ0或FREQ1在相位累加器中的使用。频率寄存器的使用选择可通过引脚FESELECT 和位SEL完成。当FESL位被用来选择频率寄存器时,引脚FSELECT位应连接到CMOS高电平或低电平。LOAD:寄存器负载,高电平有效。这个引脚和TC0-TC3联合起来控制负载选择串行 寄存器还是并行寄存器。 TC0-TC3:传输控制地址总线,数字输入。地址决定了源寄存器和目的寄存器。源寄 存器可以是串行的,也可以是并行的。目的寄存器可以是一下任意一个:COMMAND REG , FREQ0 REG ,REQ1 REG , PHASE REG 或者IQMOD REG. 。TC0-TC3的值在LOAD上升沿有效,并且在LOAD处于高电时值一直不变。控制命令寄存器只能通过并行寄存器写入命令。:片选端,低电平有效。和联合起来控制正在写入命令的并行寄存器。:写操作引脚。低电平有效。和联合起来控制正在写入命令的并行寄存器。D7D0:数据总线,数字输入端。这些是写入32位并行寄存器数据时候的低16位数据。通过一个8位的或者16位的MPU/DSP接口来设置这些数据总线。D15D8:也是数据总线,数字输入端。这些是写入32位并行寄存器数据时候的高16位数据。当只有8位操作的时候,D15D8应该就接地。SCLK:串行时钟输入,数字输入端。和SDATA共同作用,用来同步写入32 位串行寄存器的数据。SDATA:串行数字输入端。串行数据在SCLK上升沿送入。SLEEP:睡眠控制模式,高电平有效。该引脚将AD7008设置为低功耗模式。当关断DAC电流源时,内部时钟也将失效。通过COMMAND REG的控制命令字也可以将AD7008设置为睡眠模式。RESET:复位键,高电平有效。清空COMMAND REG和所有调制寄存器的内容,置为零。TEST:测试模式。一般该管脚置空。4.4 AD7008的工作原理以及它的电路结构 4.4.1 工作原理正弦波波形的表达式为a(t)sint。显然,它们是非线性的,而且很难通过电路实现,除非分段构造。另一方面,角信息本身是线性的。也就是说,相位角在每个单位时间内以某一固定角度旋转。角速度取决于信号的频率,公式为=2f 。 图4.3正弦波的幅度与相位已知正弦波的相位是线性的,而且有一个基准时间间隔(始终周期),因此,对于该周期,可给出相位旋转的周期的明确定义,其表达式为 (式4.1)即: (式4.2)可以解得f,将基准周期替代基准时钟频率得到: (式4.3)AD7008芯片输出就是建立在这个简单的等式基础之上,简易的DDS芯片可通过三个主要的子电路实现这个等式。4.4.2 电路说明(1)NCO脉冲相位调制器它是由两个频率选择寄存器,一个相位累加器和一个相位偏移量寄存器组成。主要元件是32位的相位累加器。连续时间信号有一个02的相位范围。超过这个范围以外的数,对于正弦函数是周期性的变化。采用数字方式实现正弦函数曲线也是与此相同的。累加器只是简单测量相位数的范围,并送出一个多位数字号。AD7008的相位累加器是一个32位累加器。因此,对于AD7008,就有2232。同样,Phase的范围为0Phase2321。有如下计算公式: 式(4.4)例如,输入一个时钟频率为50MHz和相位控制字为D51EB852信号,则根据公式得到:相位累加器的输入可以通过FREQ0或者FREQ1来选择,并且被FSELECT引脚控制。(2)正弦和余弦查询表为了使输出有用,就必须由相位信息转化为正弦曲线值。因为是将相位信息直接转化成振幅,SIN ROM将数字相位信息当作查表地址使用,并将相位信息转化成振幅。数据中只有32位里面的12位作为这个用途,剩下的20位用作频率操作以及优化相位转化成振幅的质量。(3)DAC模数转换器AD7008包含一个高阻抗电流源的10位DAC,有能力驱动一个较宽范围的负载。满刻度输出电流可以通过一个使用外接的一个电阻来调整,以满足电源和外接负载需求。DAC能够被设置为单端或差动工作模式。在单端模式下可以与AGND直接相连。也可以作为输出电压信号,这个时候必须加一个负载在上。(4)与DSP芯片接口和与微机接口AD7008包括一个32位的并行寄存器和一个32位的串行寄存器。通过加载引脚LOAD和控制引脚TC,本人们可以设置加载到调制寄存器的数据的来源本人们想要的任何一个集中寄存器(并行的或串行的)。控制命令寄存器只能通过并行寄存器加载数据进去。然而,在很多实际应用中,很多应用都要求并行和串行接口同时使用。在工作过程中,当LOAD上升时,TC0TC3的数据必须保持不变,当LOAD处于高电平的时候,TC0TC3数据就改变不了。只有在LOAD为低电平的时候才可以重新写入。DSP和MPU都容许通过将数据加载到并行寄存器中。在每一个写操作的末端,并行寄存器的位数在这个时候才能变化16位或者8位(取决于CR0的值),新的数据就在这个时候加载到它的低位上去。因此16位的数据通过2次写入并行寄存器,8位的数据通过4次写入寄存器。当加载数据到寄存器的时候,仅需要根据写入的寄存器位数设定来决定要写入的数据的大小。仍然要说的是,那个控制命令寄存器只能通过并行寄存器写入数据。串行数据是在SCLK的上升沿写入到芯片里的。通过一些传输控制引脚的设置,在集中寄存器里面的数据可以传输到调制寄存器里面。(5)AD7008的内部数据的更新AD7008不需要在同步情况下更新。在异步系统里面,有些内部时钟脉冲(如SDATA和SCLK)高电平维持的时间必须大于一个系统时钟周期。这可以保证在一个时钟周期的上升沿就可以完成很多想要的功能。当然,如果AD7008在同步模式下工作的话,加载数据的速度比异步的就相当的快多了。加载16位的数据的时候,AD7008的速度是相当快的。以这种模式为例来讨论。加载到每一个调制寄存器需要16位的数据。并行寄存器是在/WR的下降沿来获得这些数据的。这些并不是通过时钟脉冲来控制的,但是,它的低电平持续时间必须维持在20ns以上,并且高电平要保持在10ns以上,这样才能顺利地将16位的数据加载到相应的寄存器里面。在这里再强调的是,16位的数据要写到并行寄存器里面,还得通过控制命令设置TC0TC3的值,为了避免数据要加载到的目的寄存器重复,还可以通过扩展外部寄存器来加载或者存储信息。在这里先用图来表示一下加载的时序图(下页图)在同一个时间段里面,在/WR第二个下降沿,LOAD就处于高电平,只要加载信号的高电平在时钟信号上升沿到来之前能维持5ns以上,数据就能够顺利的传送到目的寄存器里面。图4.4 AD7008加载数据的时序电路应用本次毕设用到的是AD7008的串行输入,所以在这里只描述一下AD7008的串行电路。下页图4.5是串行的电路结构图。数据在串行模式下通过管脚SDATA和SCLK写入到AD7008的。在串行时钟的上升沿加载数据。数据一旦被加载到串行寄存器里面,就必须转移到专用寄存器里面。通过设置TC位来完成这个操作。TC的设置与寄存器的关系通过表4.1和表4.2给出。图4.5串行电路图举一个例子,如果本人要将串行寄存器里面的数据加载到寄存器FREQ1,通过表3.2.3知,就必须设置TC位的值为1101。当LOAD端处在上升沿的时候,数据就可以传输到FREQ1了。注意的是,并不是在串行模式下,所以的功能使用都是串行的。有些功能还必须在并行情况下才能使用。比如说加载TC位的时候,更新控制命令字的时候,它们只能通过并行寄存器来实现。表4.1控制寄存器寄存器大小复位后状态功能描述COMMAND REG4BitCR3CR0全为零控制命令寄存器。通过并行寄存器写入。FREQ0 REG32Bit DB31DB0全为零频率寄存器0,为0时,作为时钟频率的一部分,决定输出频率。FREQ1 REG32Bit DB31DB0全为零频率寄存器1,为1时,作为时钟频率的一部分,决定输出频率。PHASE REG12Bit DB11DB0全为零相位偏移寄存器。IQMOD REG20Bit DB19DB0全为零表4.2源与目的寄存器TC3TC2TC1TC0LOAD源寄存器目的寄存器XXXX0N/AN/A00XX1并行COMMAND10001并行FREQ010011并行FREQ110101并行PHASE10111并行IQMOD11001串行FREQ011011串行FREQ111101串行PHASE11111串行IQMOD在编写程序的时候是首先设置好TC与COMMAND的值。是通过以下语句实现的:MOV P1,#10010011B由表格可知,设置数据是从串行寄存器加载到频率寄存器0。设置好后,接着就要加载数据了。附录里有详细的加载程序,在这里就一段程序简单说明一下:MOV R1,#08HSOUT0:MOV A,R2OUT0: CLR SCL RLC A MOV SDA,C SETB SCL DJNZ R1,OUT0其中R1作为数值为8的移位计数器,将8位数据移位到AD7008的串行寄存器里面去的。5 单片机控制系统的实现5.1 单片机型号的选择在在市场上销售的主流单片机就是ateml公司生产的89c51、89c52、89s52和89s51,对于本设计来说使用的存储器容量不会超过4k字节所以不需要使用存储区容量达到8k的s52和c52芯片,且他们的售价也一般比51系列高出好多,于是选择就在于s51和c51两种了,对于这两种c51比较贵一点,且在使用过程中本人们还要对其下载程序进行调试,这就需要一块下载板,学校可以找到相应的下载板但是如果每次下载都要去实验室,打了那里有不能经常改变程序,总之要花肥好多时间,如果要买成品的话,那就需要900元左右对本人们来说是一个不可支付的数据,所以本人要自己做一块,这时就决定和宿舍的两位都要用到单片机的同学,合作制作了一块下载板,下载板的种类很多,可以支持不同的芯片,但是支持c51的下载板制作复杂,成本也高,于是选择支持s系列的下载板,这就要求单片机也选择s51了。本次毕设采用的单片机是AT89S51,AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 在这里简单描述一下本次毕设所用单片机的相关知识。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。表5.1 主要功能特性主要功能特性: 兼容MCS-51指令系统 4k可反复擦写(1000次)ISP Flash ROM 32个双向I/O口 4.5-5.5V工作电压 2个16位可编程定时/计数器 时钟频率0-33MHz 全双工UART串行中断口线 128x8bit内部RAM 2个外部中断源 低功耗空闲和省电模式 中断唤醒省电模式 3级加密位 看门狗(WDT)电路 软件设置空闲和省电功能 灵活的ISP字节和分页编程 双数据寄存器指针下页图5.1是它的引脚排列。图5.1单片机S51引脚图5.2 管脚说明VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当 P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口: P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口。如下所描述:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。:当访问外部存储器时,地址锁存允许的输出电平用于锁存 地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密 方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。5.3 本次毕设的设计思路与电路原理思路给整个系统上电后,单片机复位,然后启动DDS、对AD7008进行初始化,接着单片机读取存储芯片中作为系统缓存器的数据,送LED显示。 LED显示的内容就是单片机初始化的数据。然后进入键盘扫描程序,判断键盘有无按下,如有效键按下单片机通过程序执行需要的操作数据,期望值在LED上显示,通过DDS作为输出信号输出。然后返回键盘扫描程序处于等候状态。4个按键的功能分配为:高频率递进选择;中频率递进键;低频率递进键;确认取消键。键盘怎样实现这些功能在后面有详细描述。本人将详细描述设计到的各方面知识。因为整个毕设所涉及到的知识几乎都是以前没有接触过的。5.3.1 数码管显示接口在显示电路的设计方面提供两种方案,第一种是采用四个LCD进行适时显示,这是比较理想的方案,但由于LCD成本较高,且本设计亦无需如此详尽,所以这里还提供另一种方案,用四个LED进行显示,这种方案的缺点是不能适时显示,但也能满足一般设计要求。一般的led数码管有单个独立数码管,双数码管和四数码管几种类型,另外数码管还有“日”字形和“米”字形两种,米字形的数码管可以显示更多的信息,然而对于本设计,只需要显示09之间的数字就可以了。本人的设计要求产生010M的波形,本人选择的是4个单独的数码管(最好是选择四位一体的数码管,在物资科本人就买到了这种数码管)。 (A)管脚配置 (B)共阴极 (C)共阳极图5.2“8”字形数码管数码管可分为共阳极和共阴极两种,本人觉得共阴共阳无所谓,只是在程序上稍有差别而已。最后选择的是共阳。一般共阳极数码管必须外接电

温馨提示

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

评论

0/150

提交评论