




已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于AT89S52单片机信号发生器的设计摘要采用直接频率信号合成器DDS与单片机MCU相结合的方法,介绍ADI公司出品的AD9850芯片,给出芯片的引脚图和功能。并以单片机AT89S52为控制核心设计了一个串行控制方式的正弦信号发生器的可行性方案,给出了单片机AT89S52与AD9850连接电路图和调试通过的源程序以供参考。该电路设计方案正确可行,频率容易控制,操作简单灵活,且具有广阔的应用前景。详细介绍了DDS基本原理、系统方案构成、硬件电路设计和软件设计。通过严格的实测数据分析表明该设计是可运行的。关键词AT89S52AD9850直接频率合成技术信号发生器ABSTRACTTHEWAYISUSEDWHICHCOMBINESTHEDIRECTDIGITALSYNTHESIZERDDSANDMAINCOMPUTATI0NALUNITMCUTODESIGNAFUNCTIONSIGNALGENERATORAD9850WHICHISPRODUCEDBYADICOMPANYISINTRODUCED,THENTHEPINSDIAGRAMANDFUNCTIONAREGIVENANDTHECONTROLOFASERIALCONTROLSINUSOIDALSIGNALGENERATORBYTHECOREOFSINGLECHIPAT89S52ISDESIGNED,ATTHESAMETIME,THECIRCUITCONNECTDIAGRAMBETWEENAD9850ANDAT89S52,ANDFEASIBILITYOFTHEPROGRAMFORREFERENCEAREPROPOSEDTHISCIRCUITDESIGNPROJECTISCORRECTANDFEASIBLE,ITISEASYTOCONTROLTHEFREQUENCY,SIMPLEANDFLEXIBLETOWORK,ITALSOHASBROADAPPLICATIONPROSPECTSTHEPRINCIPLEANDSYSTEMCOMPONENTSOFDDSISINTRODUCEDITALSOINTRODUCESTHEMETHODSWHICHDESIGNTHEHARDWARECIRCUITANDSOFTWAREITSHOWSASUCCESSDESIGNBYTHEDATAWHICHCOMEFROMTHESTRICTEXPERIMENTSKEYWORDSAT89S52,AD9850,DDS,SIGNALGENERATOR目录摘要IABSTRACTII目录III前言11DDS概述311DDS结构3111频率预置与调节电路4112累加器4113控制相位的加法器5114控制波形的加法器5115波形存储器5116D/A转换器6117低通滤波器612DDS数学原理62总体设计方案921系统设计原理922总体设计框图93系统硬件模块的组成1031键盘控制模块1032单片机控制模块10321AT89S52主要性能103211AT89S52功能特性描述113212AT89S52的存储器结构143213定时器143214中断16323时钟电路17324复位电路1833LCD显示模块18331LCD1602的主要性能18332LCD1602与单机的连接2034AD9850与单片机连接模块20341AD9850简介20342AD9850的控制字与控制时序23343单片机与AD9850的连接2535滤波电路设计264软件设计与调试2841程序流程图285硬件电路制作3251电路实现的基本步骤3252原理图的绘制32结论34谢辞35参考文献36附录37前言在电子技术领域中,经常要用一些信号作为测量基准信号或输入信号,也就是所谓的信号源。信号源有很多种,包括正弦波信号源、函数发生器、脉冲发生器、扫描发生器、任意波形发生器、合成信号源等。作为电子系统必不可少的组成部分的信号源,在很大程度上决定了系统的性能,因而常称之为电子系统的“心脏”。随着电子技术的发展,对信号源的要求越来越高,要求其输出频率高达微波频段甚至更高,频率范围从零HZ到几GHZ频率分辨率达到MHZ甚至更小,相应频点数更多频率转换时间达到NS级频谱纯度越来越高。同时,对频率合成器功耗、体积、重量等也有更高的要求。而传统的信号源采用振荡器,只能产生少数几种波形,自动化程度较低,且仪器体积大、灵活性与准确度差。而现在要求信号源能产生波形的种类多、频率高,而且还要体积小、可靠性高、操作灵活、使用方便及可由计算机控制。所以要实现高性能的信号源,必须在技术手段上有新的突破。当今高性能的信号源均通过频率合成技术来实现,随着计算机、数字集成电路和微电子技术的发展,频率合成技术有了新的突破,直接数字频率合成技术DIRECTDIGITALSYNTHESISDDS,它是将先进的数字信号处理理论与方法引入到信号合成领域的一项新技术,它的出现为进一步提高信号的频率稳定度提供了新的解决方法。同时,随着微电子技术的迅速发展,尤其是单片机技术的发展,智能仪器也有了新的进展,功能更加完善,性能也更加可靠,智能程度也不断提高直接数字式频率合成技术的出现导致了频率合成领域的一次重大革命。直接数字频率合成器问世之初,构成DDS元器件的速度的限制和数字化引起的噪声这两个主要缺点阻碍了DDS的发展与实际应用。近几年超高速数字电路的发展以及对DDS的深入研究,DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平。随着微电子技术的迅速发展,直接数字频率合成器得到了飞速的发展,它以有别于其他频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。具体体现在相对带宽宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。现已广泛应用于通讯、导航、雷达、遥控遥测、电子对抗以及现代化的仪器仪表工业等领域。信号发生器是一种常用的信号源,广泛应用于电子测量、自动控制和工程设计等领域。随着电子技术的发展,对信号源频率的稳定度、准确度以及频谱纯度的要求越来越高。DDS直接数字合成技术是从相位概念出发直接合成所需波形的一种新的频率合成技术,与传统的模拟式波形产生法相比,它具有相位变换连续、频率转换速度快、分辨率高、稳定度高、相位噪声小、便于集成、易于调整及控制灵活等多种优点。基于DDS技术的信号发生器是一类新型信号源,它已成为众多电子系统中不可缺少的组成部分。1DDS概述11DDS结构1971年,美国学者JTIERNEY等人撰写的“ADIGITALFREQUENCYSYNTHESIZER”文首次提出了以全数字技术,从相位概念出发直接合成所需波形的一种新组成原理。限于当时的技术和器件产,它的性能指标尚不能与已有的技术相比,故没受到重视。近几年间,随着微电子技术的迅速发展,直接数字频率合成器(DIRECTDIGITALFREQUENCYSYNTHESIS简称DDS或DDFS)得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。具体体现在相对带宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。DDS是直接数字式频率合成器(DIRECTDIGITALSYNTHESIZER)的英文缩写。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。直接数字频率合成器(DIRECTDIGITALSYNTHESIZER)是从相位概念出发直接合成所需波形的一种频率合成技术。一个直接数字频率合成器由相位累加器、加法器、波形存储ROM、D/A转换器和低通滤波器(LPF)构成。DDS的原理框图如下所示图11DDS原理框图累加器加法器加法器ROMD/ALEP参考信号FCN位频率控制字K相位控制P字波形控制字WN位SNST其中K为频率控制字、P为相位控制字、W为波形控制字、FC为参考时钟频率,N为相位累加器的字长,D为ROM数据位及D/A转换器的字长。相位累加器在时钟FC的控制下以步长K作累加,输出的N位二进制码与相位控制字P、波形控制字W相加后作为波形ROM的地址,对波形ROM进行寻址,波形ROM输出D位的幅度码SN经D/A转换器变成阶梯波ST,再经过低通滤波器平滑后就可以得到合成的信号波形。合成的信号波形形状取决于波形ROM中存放的幅度码,因此用DDS可以产生任意波形。这里我们用DDS实现正弦波的合成作为说明介绍。111频率预置与调节电路K被称为频率控制字,也叫相位增量。DDS方程为F0FCLK/2N,F0为输出频率,FC为时钟频率。当K1时,DDS输出最低频率(也即频率分辨率),为FC/2N,而DDS的最大输出频率由NYQUIST采样定理决定,即FC/2,也就是说K的最大值为2N1。因此,只要N足够大,DDS可以得到很细的频率间隔。要改变DDS的输出频率,只要改变控制字K即可。112累加器FC频率控制字相位量化序列图12累加器框图相位累加器由N位加法器与N位寄存器级联构成。每来一个时钟脉冲FC,加法器将频率控制字K与寄存器输出的累加相位数据相加,再把相加后的结果送至寄存器的数据输入端。寄存器将加法器在上一个时钟作用下继续与频率控制字进行相加。这样,相位累加器在时钟的作用下,进行相位累加。当相位累加器累加满时就会产生一次溢出,完成一个周期性的动作。113控制相位的加法器通过改变相位控制字P可以控制输出信号的相位参数。令相位加法器的字长为N,当相位控制字由0跃变到P(P0)时,波形存储器的输入为相位累加器的输出与相位控制字P之和,因而其输出的幅度编码相位会增加P/2N,从而使最后输出的信号产生相移。114控制波形的加法器通过改变波形控制字W可以控制输出信号的波形。由于波形存储器中的不同波形是分块存储的,所以当波形控制字改变时,波形存储器的输入为改变相位后的地址与波形控制字W(波形地址)之和,从而使最后输出的信号产和相移。115波形存储器用相位累加器输出的数据作为波形存储器的取样地址,进行波形的相位一幅值转换,即可在给定的时间上确定输出的波形的抽样幅值。N位的寻址ROM相当于把0360的正弦信号离散成具有2N个采样值的序列,若波形ROM有D位数据位,则2N个样值的幅值D位二进制数值固化在ROM中,按照地址的不同可以输出相应相位的正弦信号的幅值。相位幅度变换原理图如下图所示相位量化序列地址波形振幅量化序列数据ROM波形存储器图13相位幅度变换原理图116D/A转换器D/A转换器的作用是把合成的正弦波数字量转换成模拟量。正弦幅度量化序列SN经D/A转换后变成了包络为正弦波的阶梯波ST。需要注意的是,频率合成器对D/A转换器的分辨率有一定的要求,D/A转换器的分辨率越高,合成的正弦波ST台阶数就越多,输出的波形的精度也就越高。117低通滤波器对D/A输出的阶梯波ST进行频谱分析,可知ST中除主频FO外,还存在分布在FC,2FC等等的两边FO处的非谐波分量,幅值包络为辛格函数。因此,为了取出主频F0,必须在D/A转换器的输出端接入截止频率为FC/2的低通滤波器。12DDS数学原理设有一频率为F的余弦信号TS2COSTST现在以采样频率F对T进行采样,得到的离散序列为SCNFT2,10N其中CFT1为采样周期。对应的相位序列为CNFT2,210N从上式可以看出相位序列呈线性,即相邻的样值之间的相位增量是一个常数,而且这个常数仅与信号的频率F有关,相位增量为CNT2因为信号频率F与采样频率CF之间有以下关系MKC其中K与M为两个正整数,所以相位的增量也可以完成N2由上式可知,若将2的相位均匀的分为等份,那么频率为F2的余弦信号以频率CF采样后,它的量化序列的样品之间的量化相位增量为一个不变值K。根据上述原理可以构造一个不变量为量化相位增量的量化序列N2,10N然后完成从到另一个序列S的映射,由N构造序列COSS2COSCFTKMS公式(21)公式(21)是连续信号TS经采样频率为CF采样后的离散时间序列,根据采样定理,当21FC时,NS经过低通滤波器平滑后,可唯一恢复出T。可见,通过上述变换不变量K将唯一的确定一个单频率模拟余弦信号TSMTFTSC2OS该信号的频率为KFC0公式(22)公式(22)就是直接数字频率合成(DDS)的方程式,在实际的DDS中,一般取NM2,于是DDS方程就可以写成NCKF0公式(23)根据公式(23)可知,要得到不同的频率只要通过改变K的具体数值就可以了,而且还可以得到DDS的最小频率分辨率(最小频率间隔)为当1K时的输出频率NCRESFF2可见当参考频率CF始终一定是,其分辨率由相位累加器的位数N决定,若取MHZC10,3,则HZFRES024,即分辨率可以达到Z240,这也是最低的合成频率,输出频率的高精度DDS的一大优点。由奈奎斯特准则可知,允许输出的最高频率2MAXCOFF,即12NK,但实际上在应用中受到低通滤波器的限制,通常MAXCOFF,以便于滤波镜像频率,一般COFF40MAX由此可见DDS的工作频率带较宽,可以合成从直流到CF40的频率信号,同时它的输出相位连续,频率稳定度高。2总体设计方案21系统设计原理本文提出的采用DDS作为信号发生核心器件的全数控函数信号发生器设计方案,根据输出信号波形类型可设置、输出信号幅度和频率可数控、输出频率宽等要求,选用了美国A/D公司的AD9850芯片,并通过单片机程序控制和处理AD9850的32位频率控制字,再经放大后加至以数字电位器为核心的数字衰减网络,从而实现了信号幅度、频率、类型以及输出等选项的全数字控制。本系统主要由单片机、DDS直接频率信号合成器、数字衰减电路、真有效值转换模块、A/D转换模块、数字积分选择电路等部分组成。单片机AT89S52是整个系统关键部分,通过对键盘进行扫描读入相位信息,经转换后输出到芯片AD9850,输出波形。键盘输入的数字信息经AT89S52控制的LCD1602显示。22总体设计框图系统构成如下图31所示。LCD1602键盘单片机AD9850低通滤波器信号输出图21系统框图3系统硬件模块的组成31键盘控制模块S0WPB12456图31键盘控制电路通过键盘对波形的频率进行控制32单片机控制模块主控电路中,以单片机为主体,通过分析键盘输入的数字值,对AD9850写入相应的控制字。它是系统的大脑。单片机(MICROCONTROLLER,又称微控制器)是在一块硅片上集成了各种部件的微型机算计,这些部件包括中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路。321AT89S52主要性能单片机AT89S52的主要性能分别为与MCS51单片机产品兼容;8K字节在系统可编程FLASH存储器;1000次擦写周期;全静态操作0HZ33HZ、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器、八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、11掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。13211AT89S52功能特性描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上FLASH允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案2。AT89S52具有以下标准功能8K字节FLASH、256字节RAM、32位I/O口线、看门狗定时器、2个数据指针、三个16位定时器/计数器、一个6向量2级中断结构、全双工串行口、片内晶振及时钟电路。另外,AT89S52可降至0HZ静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止3。AT89S52的引脚结构如图图32单片机AT89S52引脚结构图VCC电源,接5VGND接地P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在FLASH编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1口P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P10和P12分别作定时器/计数器2的外部计数输入(P10/T2)和时器/计数器2的触发输入(P11/T2EX)17,具体如表11所示。在FLASH编程和校验时,P1口接收低8位地址字节。表3189S52单片机P1口第二功能引脚号第二功能P10T2(定时器/计数器T2的外部计数输入),时钟输出P11T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P15MOSI(在系统编程用)P16MISO(在系统编程用)P17SCK(在系统编程用)P2口P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVXDPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVXRI)访问外部数据存储器时,P2口输出P2锁存器的内容。在FLASH编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如表12所示。在FLASH编程和校验时,P3口也接收一些控制信号。表3289S52单片机P3口第二功能引脚号第二功能P30RXD(串行输入线)P31TXD(串行输出线)P32外部中断0输入线P33外部中断0输入线P34T0(定时器0外部计数脉冲输入)P35T1(定时器1外部计数脉冲输入)P36外部数据存储器写选通信号输出P37外部数据存储器写选通信号输出RST复位输入。晶振工作时,RST脚将持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR地址8EH上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在FLASH编程时,此引脚()也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可以用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。外部程序存储器选通信号()是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,在每个机器周期被激活两次,而在访问外部数据存储器时,将不被激活。/VPP访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,必须接GND。为了执行内部程序指令,应该接VCC。在FLASH编程期间,也接收12伏VPP电压。XTAL1振荡器反相放大器和内部时钟发生电路的输入端。XTAL2振荡器反相放大器的输出端。3212AT89S52的存储器结构AT89S52器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64KB寻址。程序存储器如果引脚接地,程序读取只从外部存储器开始。对于89S52,如果接VCC,读写程序先从内部存储器(地址为0000H1FFFH)开始,接着从外部寻址,寻址地址为2000HFFFFH。数据存储器AT89S52有256字节片内数据存储器。高128字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。当一条指令访问高于7FH的地址时,寻址方式决定CPU访问高128字节RAM还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。例如,下面的直接寻址指令访问0A0H(P2口)存储单元MOV0A0H,DATA使用间接寻址方式访问高128字节RAM。例如,下面的间接寻址方式中,R0内容为0A0H,访问的是地址0A0H的寄存器,而不是P2口(它的地址也是0A0H)。MOVR0,DATA堆栈操作也是间接寻址方式。因此,高128字节数据RAM也可用于堆栈空间。3213定时器1MCS51系列中51子系列有两个16位的可编程定时/计数器定时/计数器T0和定时/计数器T1,52子系列有三个,还有一个定时/计数器T2。2每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信号计数实现计数功能,通过编程设定来实现。3每个定时/计数器都有多种工作方式,其中T0有四种工作方式;T1有三种工作方式,T2有三种工作方式。通过编程设置其方式寄存器TMOD可设定定时器工作于某种方式,方式寄存器TMOD格式见表1733。GATEC/M1M2GATEC/M1M2门控开/关计数/定时方式选择门控开/关计数/定时方式选择T1T0表33定时/计数器的方式寄存器TMODGATE门控信号。GATE0,TRX1时即可启动定时器/计数器工作,是一种自启动的方式;GATE1,TRX1,1时才可启动定时器/计数器工作。即是引脚加高电平启动,是一种外启动方式。C/定时或计数方式选择位,当C/1时工作于计数方式;当C/0时工作于定时方式。M1、M0为工作方式选择位,定时器/计数器的四种工作方式由M1M0设定,设定情况见表10334。M1M0工作方式方式说明00013位定时/计数器01116位定时/计数器1028位自动重置定时/计数器113T0为两个8位定时/计数器表34M1M0的设定4每一个定时/计数器定时计数时间到时产生溢出,使控制寄存器TCON中相应的溢出位置位,溢出可通过查询或中断方式处理,控制寄存器格式见表1035。TF1TR1TF0TR0IE1IT1IE0IT0T1请求有/无T1工作启/停T0请求有/无T0工作启/停INT1请求有/无INT1方式下沿/低电平INT0请求有/无INT0方式下沿/低电平表35定时/计数器的控制寄存器TCON其中TF1定时/计数器T1的溢出标志位,当定时/计数器T1计满时,由硬件使它置位,如中断允许则触发T1中断。进入中断处理后由内部硬件电路自动清除。TR1定时/计数器T1的启动位,可由软件置位或清零,当TR11时启动;TR10时停止。TF0定时/计数器T0的溢出标志位,当定时/计数器T0计满时,由硬件使它置位,如中断允许则触发T0中断。进入中断处理后由内部硬件电路自动清除。TR0定时/计数器T0的启动位,可由软件置位或清零,当TR01时启动;TR00时停止。3214中断AT89S52有6个中断源两个外部中断(和),三个定时中断(定时器0、1、2)和一个串行中断。每个中断源都可以通过置位或清除特殊寄存器IE中的相关中断允许控制位分别使得中断源有效或无效10。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。如表16所示,IE6位是不可以用的。它们为AT89系列新产品预留。定时器2可以被寄存器T2CON中的TF2和EXF2的或逻辑触发。程序进入中断服务后,这些标志位都可以由硬件清0。实际上,中断服务程序必须判定是否是TF2或EXF2激活中断,标志位也必须由软件清0。定时器0和定时器1标志位TF0和TF1在计数溢出的那个周期的S5P2被置位。它们的值一直到下一个周期被电路捕捉下来。然而,定时器2的标志位TF2在计数溢出的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。表36中断允许控制寄存器(IE)(MSB)LSBEAET2ESET1EX1ET0EX0EA中断允许总控位。EA0,屏蔽所有的中断请求;EA1,开放中断。ET2定时器/计数器T2的溢出中断允许位ES串行口中断允许位。ET1定时器/计数器T1的溢出中断允许位。EX1外部中断INT1的中断允许位。ET0定时器/计数器T0的溢出中断允许位。EX0外部中断INT0的中断允许位。随着计算机技术的高速发展,单片机以其自身的特点,已广泛应用于智能仪器、工业控制、家用电器、电子玩具等各个领域。323时钟电路图33时钟电路XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHZ,时钟频率就为6MHZ。晶振的频率可以在1MHZ24MHZ内选择。电容取30PF左右。AT89S52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器5。片外石英晶体或者陶瓷谐振器及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,这里采用电容30PF,晶振采用110592MHZ。324复位电路AT89C51的外部复位电路有上电自动复位和手动按键复位。上电复位电容充电来实现。手动按键复位又分为按键电平复位和按键脉冲复位。按键电平复位电路是在普通RC复位电路的基础上接一个有下拉电阻10K、上拉电容10F接VCC,电源由开关经串接的1K限流电阻至复位脚(和上拉电容并联),上拉电容支路负责在“上电”瞬间实施复位;开关通过1K上拉电阻和10K下拉电阻分压器,保证对单片机实施按键电平复位。增加放电回路的RC复位电路使用比较电路,不但可以解决电源毛刺造成的系统不稳定,而且电源缓解下降也能可靠复位,电路图如下图所示图34复位电路33LCD显示模块现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。331LCD1602的主要性能1602型LCD可以显示2行16个字符,有8位数据总线D0D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能6。1602型LCD的接口信号说明,如表37所示编号符号引脚说明编号符号引脚说明1VSS电源地9D2DATAI/O2VDD电源正极10D3DATAI/O3VL液晶显示偏压信号11D4DATAI/O4RS数据/命令选择端(H/L)12D5DATAI/O5R/W读写选择端(H/L)13D6DATAI/O6E使能信号14D7DATAI/O7D0DATAI/O15BLA背光源正极8D1DATAI/O16BLK背光源负极表37LCD1602接口说明基本操作程序读状态输入RSL,RWH,EH输出D0D7状态字读数据输入RSH,RWH,EH输出无写指令输入RSL,RWL,D0D7指令码,E高脉冲输出D0D7数据写数据输入RSH,RWL,D0D7数据,E高脉冲输出无332LCD1602与单机的连接图38LCD与单片机的接口电路在实际的接线中,1602的DB0DB7与89S52的P0口相接,RS与P13相接,R/W与P12相接,E与P11相接。VL与地之间接一个10K的滑动变阻器来到1602初始显示的调节。34AD9850与单片机连接模块341AD9850简介随着数字技术的飞速发展,用数字控制方法从一个参考频率源产生多种频率的技术,即直接数字频率合成DDS技术异军突起。美国AD公司推出的高集成度频率合成器AD9850便是采用DDS技术的典型产品之一。AD9850采用先进的CMOS工艺,其功耗在33V供电时仅为155MW,扩展工业级温度范围为4080,采用28脚SSOP表面封装形式。AD9850的引脚排列如图46所示,图47为其组成框图。中层虚线内是一个完整的可编程DDS系统,外层虚线内包含了AD9850的主要组成部分7。图39AD9850管脚排列图图39AD9850组成框图AD9850内含可编程DDS系统和高速比较器,能实现全数字编程控制的频率合成。可编程DDS系统的核心是相位累加器,它由一个加法器和一个N位相位寄存器组成,N一般为2432。每来一个外部参考时钟,相位寄存器便以步长M递加。相位寄存器的输出与相位控制字相加后可输入到正弦查询表地址上。正弦查询表包含一个正弦波周期的数字幅度信息,每一个地址对应正弦波中0360范围的一个相位点。查询表把输入地址的相位信息映射成正弦波幅度信号,然后驱动DAC以输出模拟量。相位寄存器每过2N/M个外部参考时钟后返回到初始状态一次,相应地正弦查询表每经过一个循环也回到初始位置,从而使整个DDS系统输出一个正弦波。输出的正弦波周期T0TC2N/M,频率FOUTMFC/2N,TC、FC分别为外部参考时钟的周期和频率。AD9850采用32位的相位累加器将信号截断成14位输入到正弦查询表,查询表的输出再被截断成10位后输入到DAC,DAC再输出两个互补的电流8。DAC满量程输出电流通过一个外接电阻RSET调节,调节关系为SETSETRVI24813RSET的典型值是39K。将DAC的输出经低通滤波后接到AD9850内部的高速比较器上即可直接输出一个抖动很小的方波。其系统功能如图33所示。图310AD9850系统功能图AD9850在接上精密时钟源和写入频率相位控制字之后就可产生一个频率和相位都可编程控制的模拟正弦波输出,此正弦波可直接用作频率信号源或经内部的高速比较器转换为方波输出。在125MHZ的时钟下,32位的频率控制字可使AD9850的输出频率分辨率达00291HZ并具有5位相位控制位,而且允许相位按增量180、90、45、225、1125或这些值的组合进行调整。342AD9850的控制字与控制时序AD9850有40位控制字,32位用于频率控制,5位用于相位控制,1位用于电源休眠POWERDOWN控制,2位用于选择工作方式。这40位控制字可通过并行方式或串行方式输入到AD9850,图311是控制字并行输入的控制时序图,在并行装入方式中,通过8位总线D0D7将可数据输入到寄存器,在重复5次之后再在FQUD上升沿把40位数据从输入寄存器装入到频率/相位数据寄存器更新DDS输出频率和相位,同时把地址指针复位到第一个输入寄存器。接着在WCLK的上升沿装入8位数据,并把指针指向下一个输入寄存器,连续5个WCLK上升沿后,WCLK的边沿就不再起作用,直到复位信号或FQUD上升沿把地址指针复位到第一个寄存器9。图311控制字并行输入的时序图图312控制字串行输入的时序图在串行输入方式,WCLK上升沿把25引脚的一位数据串行移入,当移动40位后,用一个FQ_UD脉冲即可更新输出频率和相位。图410是相应的控制字串行输入的控制时序图。AD9850的复位RESET信号为高电平有效,且脉冲宽度不小于5个参考时钟周期。AD9850的参考时钟频率一般远高于单片机的时钟频率,因此AD9850的复位RESET端可与单片机的复位端直接相连。位代号功能位代号功能位代号功能位代号功能W0FREQB0LSBW10FREQB10W20FREQB20W30FREQB30W1FREQB1W11FREQB11W21FREQB21W31FREQB31MSBW2FREQB2W12FREQB12W22FREQB22W32CONTROLW3FREQB3W13FREQB13W23FREQB23W33CONTROLW4FREQB4W14FREQB14W24FREQB24W34POWERDOWNW5FREQB5W15FREQB15W25FREQB25W35PHASEB0LSBW6FREQB6W16FREQB16W26FREQB26W36PHASEB1W7FREQB7W17FREQB17W27FREQB27W37PHASEB2W8FREQB8W18FREQB18W28FREQB28W38PHASEB3W9FREQB9W19FREQB19W29FREQB29W39PHASEB4MSB表38AD9850串行装载的数据结构在表42中,位W0W31的32位是频率控制字,改变它的内容可以改变AD9850的输出频率。位W32和W33用于工厂测试,应向这两位赋0。位W34用来控制AD9850的上电和掉电,当不需要输出信号时,通过打这一位置1来实现掉电。位W35W39的5位是相位控制字,改变它的内容可以改变AD9850的输出相位。串行装载时,AD9850的D7引脚和W_CLK引脚组成同步串行接口,这个接口可以直接与89S52相接连。40位控制/数据字通过AD9850的D7引脚在W_CLK引脚的脉冲信号上升边沿作用下分40次装入。W0在前,W39在后,依次装入。完成40位控制/数据字的装载后,FQ_UD引脚的脉冲信号上升沿刷新AD9850的工作状态,同时复位寄存器指针,准备下一次位控制/数据字的装入。343单片机与AD9850的连接AD9850有两种与微机并行打印口相连的评估版,并配有WINDOWS下运行的软件,可以作为应用参考,但运用单片机实现对DDS的控制与微机实现的控制相比,具有编程控制简便、接口简单、成本低,容易实现系统的小型化等优点,因此普遍采用MCS51单片机作为控制核心来向AD9850发送控制字。单片机与AD9850的接口既可采用并行方式,也可采用串行方式,但为了充分发挥芯片的高速性能,应在单片机资源允许的情况下尽可能选择并行方式,本系统采用AT89S52单片机作为控制核心,通过串行写入控制字的方式控制AD9850芯片,加上键盘和LCD显示部分等外围电路,构成整个系统电路。为了详细介绍AD9850的用法,这里重点给出本系统中AT89S52单片机与AD9850芯片连接电路,如图所示,其中R139K,R250,R325,单片机晶振选用12MHZ,电容采用20PF经典值。单片机采用12MHZ晶振时,它的高电平时间能够满足AD9850复位要求,故可将AD9850的复位端与单片机的复位端直接相连。图313AD9850与单片机连接电路图35滤波电路设计为了使输出的频率不受外界和一些杂波的干扰,需用一个低通滤波器LPF滤除高次谐波。常用的滤波器的频率响应有三种巴特沃斯型(BUTTERWORTH),切比雪夫型CHEBYSHEV和椭圆型CAUER。其中巴特沃斯滤波器通带最平坦,它的通带内没有纹波,在靠近零频处,有最平坦通带,趋向阻带时衰减单调增大,缺点是从通带到阻带的过渡带最宽,对于带外干扰信号的衰减作用最弱,过渡带不够陡峭,因此它适用于对通带要求较高,而去除的频率离通带较远的情况切比雪夫滤波器在通带内衰减在零值和一个上限值之间做等起伏变化,阻带内衰减单调增大,带内有起伏,但过渡带比较陡峭椭圆滤波器不仅通带内有起伏,阻带内也有起伏,而且过渡带陡峭。比较起来,椭圆滤波器性能更好,本设计中采用的是椭圆滤波器10。具体电路图如图314所示。图314滤波电路4软件设计与调试41程序流程图通过程序预置频率,并实现对频率步进的控制,处理用户由键盘键入的频率值,判断是否超出范围,生成频率控制字,经并行方式送入DDS,合成用户所需的频率,并通过程序实现频率的显示。程序流程图如下开始主程序输入初始化LED显示键盘扫描是否有键按下处理按键频率字修改AD9850数据更新否是DDS的时钟频率很高,对周围电路有一定影响,在电路中采取了一些抗干扰措施,如引线尽量短,减少交叉,每个芯片的电源与地之间都解忧去耦电容,数字地与模拟地分开。在LCD的显示调节时也要选取适当的电阻才能使液晶屏正常的显示,常选取的阻值为1000欧左右。42软件调试本系统的软件调试可以在KEILUVISION2的环境中完成,KEIL系统为软件的开发和调试提供了良好的用户界面和强大的功能,程序调试无误后,可以装入PROTEUS76中进行仿真,也可以直接下载到单片机中进行调试。采用自下而上即单独调试好每一个模块后,再连接成一个完整的系统调试。/函数声明,变量定义INCLUDEINCLUDEINCLUDEDEFINEDATA_OUTP1/定义管脚SBITFQ_UDP30SBITW_CLKP31UNSIGNEDCHARCON_WORD5/AD9850信号更新申请/写控制字时钟/WORDDATA7DATA6DATA5DATA4DATA3DATA2DATA1DATA0/W0PHASEBPHASEB3PHASEB2PHASEB1PHASEB0POWERDOWNCONTROLCONTROL/W1FREQB31FREQB30FREQB29FREQB28FREQB27FREQB26FREQB25FREQB24/W2FREQB23FREQB22FREQB21FREQB20FREQB19FREQB18FREQB17FREQB16/W3FREQB15FREQB14FREQB13FREQB12FREQB11FREQB10FREQB9FREQB8/W4FREQB7FREQB6FREQB5FREQB4FREQB3FREQB2/函数名称DELAY/入口参数N/函数功能延时子程序,实现16N24US的延时/系统采用12MHZ的时钟时,延时满足要求,其它情况需要改动/VOIDDELAYUNSIGNEDINTNINTIFORI0I/调用头文件(单片机内部的寄存器定义)DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTSBITLCD_EP11SBITLCD_RWP12SBITLCD_RSP13SBITRESETP14/AD9850RESETSBITW_CLKP31/AD9850W_CLKSBITFQUDP30/AD9850FQUDDEFINELCD_DATAP2/LCDDATADEFINELCD_BUSY0X80/用于检测LCD的BUSY标识(本程序中用的延时,未检测)UNSIGNEDCHARCODELCDBUF1“FRQHZ“UNSIGNEDCHARCODELCDBUF2“TE/请直接改成您的电话号码即可。DOUBLECON_WORD_10X00DOUBLECON_WORD_20X00LONGUINTCONTROL_WORD0X00/根据设置的频率换算成将要送入AD9850中的整数量;LONGUINTFREQUENCY_OUTUCHARA,B,C,D,E,F,G,HUCHARANJIANCISHUBIANGLIANG0X00LONGUINTSHEZHIZHONGYAOXIANSHIDESHUJU0X00UCHARDINGSHIQILIDESHIJIANBIANLIANG0X00UCHARLIANJIABIAOZHI0X00LIANJIANBIAOZHI0X00LONGUINTOUT_SIGNAL_MAX10000000/设置子程序中的上限值UINTLIGHT_BIAN_LIANG0X00SBITLIGHTP10/程序状态指示灯,它与单片机对9850控制无关,只是调程序的时候使用SBITP3_4P34SBITP3_6P36SBITP3_7P37SBITP3_3P33SBITP3_5P35/DECLAREFORKEYSUCHARJ0,DAT0UCHARKEYZHI0X00VOIDLCD_INITVOIDVOIDDISPLAY_STRINGUNSIGNEDCHARX,UNSIGNEDCHARY,UNSIGNEDCHARSQU_CHU_SHU_MA_GE_WEIVOIDTIME0VOIDINTERRUPT1USING1/INTERRUPTIONEA0DINGSHIQILIDESHIJIANBIANLIANGTH00XA6/SHIDESHAPINGTL00X66ET01TR01EA1VOIDDELAYLONGUNSIGNEDINTHWHILEH/001MSVOIDWRITEDATALCDUNSIGNEDCHARWDATALCD_RS1LCD_RW0LCD_E0LCD_E1LCD_DATAWDATADELAY100/短暂延时,代替检测忙状态LCD_E0/LCD_RW1/LCD_E1VOIDWRITECOMMANDLCDUNSIGNEDCHARWDATALCD_RS0LCD_RW0LCD_E0LCD_E1LCD_DATAWDATADELAY100/短暂延时,代替检测忙状态LCD_E0/LCD初始化VOIDLCD_INITVOIDLCD_DATA0DELAY1000WRITECOMMANDLCD0X38DELAY500WRITECOMMANDLCD0X38/显示模式设置DELAY500WRITECOMMANDLCD0X38/显示模式设置DELAY500WRITECOMMANDLCD0X01/关闭显示WRITECOMMANDLCD0X38/显示清屏WRITECOMMANDLCD0X0C/显示光标移动设置WRITECOMMANDLCD0X06/显示开及光标移动设置/WRITECOMMANDLCD0X0F/WRITECOMMANDLCD0X80/WRITEDATALCD0X30/WRITEDATALCD0X31/WRITEDATALCD0X32/WRITEDATALCD0X33VOIDDISPLAY_XYUNSIGNEDCHARX,UNSIGNEDCHARYIFY0X01XX0X400X80ELSEXX0X80WRITECOMMANDLCDXVOIDDISPLAY_CHARUNSIGNEDCHARX,UNSIGNEDCHARY,UNSIGNEDCHARDATDISPLAY_XYX,YWRITEDATALCDDATVOIDDISPLAY_STRINGUNSIGNEDCHARX,UNSIGNEDCHARY,UNSIGNEDCHARSDISPLAY_XYX,YWHILESWRITEDATALCDSSQU_CHU_SHU_MA_GE_WEIA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 森米台风安全知识培训课件
- 森林消防培训基础知识课件
- 2025年招聘考试高频考点解析技术转移中心职能篇
- 2025年网络安全工程师求职面试预测题解析
- 2025年计算机程序员招聘考试试题集及解析
- 2025年初级美容师技能鉴定试题
- 2025年高级数据安全工程师必-备知识库与经典面试问题解答
- 2025年市场营销专业学生实习必-备市场调研问卷设计及答案参考
- 2025年初级美容美发师实操技巧与模拟题
- 2025年国际金融分析师实战应用模拟题集与答案解析
- 【完整版】2025年二级建造师《建筑实务》考试真题及答案
- 水库维修承包合同协议书范本
- 2025年浙江省中考英语真题(解析版)
- 2025年广西中考道法真题卷含答案解析
- 2025年国企中层干部竞聘笔试题及答案
- 2025年人民检察院公开招聘用制书记员考试题及答案
- 数学小升初试卷真题打印版
- 医院学术委员会组织职责
- 重庆临时摊点管理办法
- 3.4中国的海洋资源课件-八年级地理上册商务星球版
- 工程罚款通知单模版
评论
0/150
提交评论