1、湖北工业大学商贸学院毕业设计 摘 要 本系统利用单片机89S52与CPLD(EPM7128SLC84-15)结合,采用DDS(直接频率数字频率合成)技术,辅以D/A转换等必要的模拟电路,构成一个波形稳定、精度较高的信号发生器。单片机负责向存储器(IDT7132)写波形表,控制频率、幅度步进以及人机交换。CPLD集成了DDS、键盘扫描、BUS等功能模块。D/A转换模块采用DAC0800,可将波形表内数据输出为所需要的波形。输出波形可以在正弦波、方波及三角波间切换,并能由键盘设置频率值,还能完成步进和扫频的功能。另外,还利用手写板实现任意波形输入的功能。 关键字:DDFS 单片机
2、 CPLDA/D D/A。 The system uses microcontroller 89S52 and CPLD (EPM7128SLC84-15) with, the use of DDS (direct digital synthesis frequency) technology, supported by D / A converter and other analog circuitry necessary to form a waveform stability and high precision signal generator. SCM is res
3、ponsible for memory (IDT7132) write wave form, control the frequency, amplitude step, and human exchange. CPLD integrated DDS, keyboard scanning, BUS and other functional modules. D / A converter module with DAC0800, waveform table data can be output to the required waveform. Output waveform can be
4、sine, square, triangular wave spread between the switch, and can set the frequency value from the keyboard, but also to complete the step and sweep functions. In addition, an arbitrary waveform using the tablet input. Keywords: DDFS SCM CPLDA / D D / A. 目 录 摘 要 I 目 录 II
5、 引 言 9 1课题背景 9 1.2 设计任务及要求 10 2方案论证与选择 10 2.1频率合成器模块 10 2.2存储器模块 11 2.3模拟输出模块 11 2.4幅度控制部分 11 2.5后级滤波部分 12 3系统总体设计方案及实现方框图 12 4理论分析与计算 13 5主要功能电路的设计 13 5.1单片机的介绍 13 5.2 资源分配 17 5.3 各部分电路原理 17 5.5单片机的设计 19 5.6 CPLD的设计 19 5.7 RAM电路的设计 19 5.8 D/A转换模块的设计 20 5.9后级滤波模块的设计 20 5.10 人机交
6、互界面的设计 21 6系统软件的设计 21 6.1单片机内部的程序流程图: 21 6.2Verilog HDL程序: 22 7测试数据与分析 23 7.1测试仪器 23 7.2指标测试 23 7.3误差分析说明 24 7.3.1相位误差 24 7.3.2幅值量化误差 24 7.3.3由于D/A变换器的非理想特性引起的误差 24 结 束 语 24 5.已查阅的主要参考文献 25 引 言 能产生多种波形,如三角波、锯齿波、方波、正弦波的电路被称为函数信号发生器,
7、又称信号源或振荡器,在生产实践和科技领域中有广泛的应用。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中都需要射频(高频)发射,这里的射频波就是载波,把音频(低频),视频信号和脉冲信号运载出去,就需要产生高频振荡器。作为基础测量仪器的信号发生器随着用户的需求而不断发展。信号源实质上就是一个扫频示波器或合成信号源,并具有基本的调制功能。现在是数字化时代,研发或其他人员对测量仪器是最基本的工具,测量仪技术指标上也不断提高。如精度高、工作频带宽、误差小等。能够满足不同层次用户的测试要求。近几年,数字化仪器在迅速展我国也在不断研究推出各种新型数字化仪器。目前使用的信
8、号发生器大部分是利AT89S51单片机构成的发生器,但本次设计要求采用分立元件产生正弦波、方波、三角波。电路的原理部分的设计,可以是先设计单元电路,然后用仿真软件模拟,等到各个单元都设计完成后,再将各个单元结合到一起,由仿真软件模拟是否符合制作要求。本次设计就是按照这样的思路来进行一步一步的分析:首先按照设计的方案选择具体的元件,画出仿真图,并对仿真图进行调试,观察效果并与课题要求的性能指标作对比,最后分析出现误差的原因以及影响因素。在达到课题要求的前提下保证最经济、最方便、最优化的设计策略 1课题背景 信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以
9、用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中,都需要射频(高频)发射,这里的射频波就是载波,把音频(低频)、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振成像等,都需要功率或大或小、频率或高或低的振荡器。 信号发生器,它是一种用于产生标准信号的电子仪器,随着科学技术的发展,对它的要求越来越高。在工业生产和科研中利用信号发生器输出的信号,可以对元器件的性能及
10、参数进行测量,还可以对电工和电子产品进行指数验证、参数调整及性能鉴定。常用的信号发生器绝大部分是由模拟电路构成的,当这种模拟信号发生器用于低频信号输出往往需要的RC值很大,这样不但参数准确度难以保证,而且体积和功耗都很大,而由数字电路构成的低频信号发生器,虽然其低频性能好但体积较大,价格较贵,因此,高精度,宽调幅,低价格将成为数字量信号发生器的发展趋势。 信号发生器按其频率的高低,可分为:超低频信号发生器,低频信号发生器,高频信号发生器,超高频信号发生器,微波信号发生器;按产生波形的不同,可分为:正弦波信号发生器,脉冲波函数波信号发生器,任意波信号发生器; 按调制方式的不同,可分为:调频信号
11、发生器(FM)、调幅信号发生器(AM),调相信号发生器(PM),脉冲调制信号发生器;此外,还可以产生两种或多种波形信号发生器。 1.2 设计任务及要求 任务:设计一个方波-三角波-正弦波函数发生器。 要求: 频率范围:10-100HZ。 输出电压:方波Up-p<24V; 三角波Up-p=8V; 正弦波Up-p>1V。 幅值、频率可调。 2方案论证与选择 2.1频率合成器模块 方案一:采用模拟分立元件或单片压控函数发生器MAX038,可产生正弦波、方波、三角波,通过调整外部元件可改变输出频率,但采用模拟器件由于元件分散性太大,即使使用单片函数发生器
12、参数也与外部元件有关,外接的电阻电容对参数影响很大,因而产生的频率稳定度较差、精度低、抗干扰能力低、成本也高,且灵活性较差,不能实现任意波形以及波形运算输出等智能化的功能。 方案二:采用程控锁相环频率合成方案。锁相环频率合成是将高稳定度和高精确度的标准频率经过加减乘除的运算产生同样稳定度和精确度的大量离散频率,在一定程度上解决了既要频率稳定精确、又要频率在较大范围可变的矛盾,能产生方波,通过积分电路就可以得到同频率的三角波,再经过滤波器就可以得到正弦波,但不能满足任意波形的输出要求,功能扩展能力有限。 方案三:利用BCD比例乘法器14527的级联数控分频对存储器查表,取存放与存储器中的波
13、形数据,经D/A转换输出波形。 方案四:采用直接数字频率合成(DDFS)技术产生波形。信号频率范围覆盖超低频和高频,便于单片机控制。通过计数器的输出作为读取波形存储器RAM的地址,将读出的数据送至D/A转换器输出波形。而对计数器的控制也有两种实现方案:通过一定的频率作用于计数器,使其能循环计数。采用CPLD与单片机相结合的方式实现对频率的控制,利用CPLD产生一个相位累加器,通过相位累加器和固定时钟脉冲取样的相位寄存器组成。 经过论证比较,DDFS与锁相环方案相比,无需相位反馈控制,频率建立及频率切换快,并且与频率分辨率、频谱纯度相互独立,覆盖频率范围大,精度高,控制性好且容易实现,有具有
14、功能扩展的能力,故采用这种方案。 2.2存储器模块 由于需要产生任意波形,波形数据表需要经常改写且无法预测,故不能存放在ROM中。 方案一:使用CPLD作为数据的桥梁,将波形先存储在EPROM中,同过单片机控制,将数据传输给CPLD,再由CPLD将数据高速传送给DAC0800。 方案二:采用RAM存储数据,实现简单。但RAM不能直接挂在系统总线上,否则必然出现总线冲突,故采用双口RAM(IDT7132)。双口RAM有左右两套完全相同的I/O口,即两套数据总线、两套地址总线、两套控制总线,并有一套竞争仲裁电路,可以通过左右两边任一组I/O进行全异步的存储器读写操作,避免了系统总线隔离。减
15、少了单片机与CPLD之间的通信,节省单片机的资源,使系统更为可靠。IDT7132的存储容量为2K,我们在信号的一个周期内只采样1024个点,2K的容量中够。 综合考虑器件的使用性和电路的可靠性,我们决定采用双口RAM作为系统的存储器件。 2.3模拟输出模块 输出模块要实现数模转换和幅度控制功能,并有一定的后级处理模块,滤除由DAC产生的高频分量和采集样点时的高次谐波分量,使输出的波形平滑不失真。 2.4幅度控制部分 方案一:由数控电位器组成的电阻分压网络控制幅度。 方案二:采用峰值检波器获得输出端的电压幅值,经A/D采样后得到输出端当前的电压幅值,然后就得到了输出当前的电压幅值,
16、然后通过与预设的输出幅值比较就可以知道输出下降的情况。并由单片机控制放大器增加放大倍数,直至输出幅值调整到预期值。 方案三:采用一级D/A转换实现。直接将DDFS产生的信号作为参考电压输入到D/A中,这样D/A就成为一个数控可变增益放大器,通过改变D/A的转换数据就可以控制输出幅度。 方案四:数模转换和幅度控制部分采用双D/A技术,由单片机控制,第一级D/A的输出波形作为第二级D/A的基准电压源,以此来控制信号发生器的输出电压幅度。这种方法电路简单,通过软件控制,可控性强,故采用这种方案。 2.5后级滤波部分 方案一:采用二阶切比雪夫低通滤波器。切比雪夫低通滤波器的幅度
17、响应在通带内是在两个值之间波动,在通带内的波动次数取决于滤波器的阶数。理想的切比雪夫低通滤波器近似在靠近截止频率的部分有比巴特沃兹滤波器更接近矩形的频率响应。 方案二:采用二阶巴特沃兹滤波器。巴特沃兹滤波器的幅度函数是单调下降的,但巴特沃兹滤波器能实现最大平坦幅度滤波。 由于信号发生器的输出波形中的主要噪声为D/A转换产生的高频分量,与设计的频率范围相差很远,所以相对来说,滤波器在频带内的平坦程度比其衰减陡度更为重要,而且巴特沃兹滤波器的元件值也较合乎实际情况,不像其他类型滤波器对元件值要求那么苛刻。基于上述考虑,决定采用二阶巴特沃兹滤波器。 经过讨论最终采用以下方案实现信号发生器的
18、设计:采用CPLD与单片机结合利用DDFS技术进行频率合成,将波形数据存储在双口RAM中,采用双片D/A实现稳幅输出,并经过二阶巴特沃兹滤波器进行滤波,相关信息通过字符型LCD显示。 3系统总体设计方案及实现方框图 单片机89S52作为核心控制模块,向波形表存储器写入波形数据,并控制前级D/A输出第二级D/A的基准电压,从而调节输出波的幅度。CPLD中集成了BUS模块以实现其他外围部件同单元片机的通信,DDS用来接收单片机的步进值,累加后产生读取RAM中波形表的地址信号,可产生需要的频率值,经D/A转换和低通滤波器输出。键盘和LCM用来实现人机交换,键盘可设置波形类型和频率值,键入
19、步进和扫描控制信号,LCD则显示相应的波形和频率值。 out 图2.1 系统总体框图 4理论分析与计算 本系统要求产生0.1Hz~200kHz的正弦波、方波和三角波。我们采用DDS方式来控制频率,输出频率的计算公式如下: 式中为系统时钟频率,我们采用4.194304M的晶振。为由单片机提供给CPLD的频率控制字,通过值的变化可以改变输出频率值。(N+Addr) 为相位累加器和存储器的位数,Addr为给RAM的地址。由于CPLD资源的限制,我们最高可取为24位。Addr为给RAM的地址我们取为8位。则通过计算可将上式简化为: 这样最低只能输出
20、0.25Hz的波,最小步进为0.25Hz。 IDT7132的容量为2K,我们在一个周期内采样1024个点,只需要1K的容量,这样可以兼顾波的质量和存储器的容量。 5主要功能电路的设计 5.1单片机的介绍 (1)最小单片机系统 ①AT89S52的引脚图如图3-2所示 图3-2 AT89S52引脚图 ②管脚说明 低频信号发生器采用AT89S52单片机作为控制核心,其内部组成包括:一个8位的微处理器CPU及片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接;片内数据存储器RAM低128字节,存放读/写数据;高128字节被特殊功能寄存器占用;片内程序存储器4KB RO
21、M;四个8位并行I/O(输入/输出)接口P3 -P0,每个口可以用作输入,也可以用作输出;两个定时/计数器,每个定时/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制;五个中断源的中断控制系统;一个全双工UART(通用异步接收发送器)的串行I/O口。 VCC:供电电压。 GND:接地。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个
22、机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 89S52 单片机外部有32个端口可供用户使用,其功能如下: 表3-1 89S52并行I/O接口 端口 引脚 位置
23、 第一功能 第二功能 符号 功能 符号 功能 P0 39-32 P0.0-P0.7 通用I/0口 AD0-AD7 地址数据总线 P1 1-8 P1.0-P1.7 通用I/0口 P2 21-28 P2.0-P2.7 通用I/0口 A8-A15 地址总线(高位) P3 10 P3.0 通用I/0口 RXD 串行通信发送口 11 P3.1 TXD 串行通信接收口 12 P3.2 INT0 外部中断0 13 P3.3 INT1 外部中断1 14 P3.4 T0 计数器0输入
24、端口 15 P3.5 T1 计数器1输入端口 16 P3.6 WR 外部存储器写功能 17 P3.7 RD 外部存储器读功能 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个T
25、TL门电流。 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口同时为闪烁编程和编程校验接收一些控制信号。 ③AT89S52的晶振及其连接方法 CPU工作时都必须有一个时钟脉冲。有两种方式可以向89S52提供时钟脉冲:内部时钟方式,即使用晶振
26、由89S52内部电路产生时钟脉冲。 图3-3 89S52的时钟脉冲 图3-3中:J一般为石英晶体,其频率由系统需要和器件决定,在频率稳定度要求不高时也可以使用陶瓷滤波器。 C1、C2:使用石英晶体时,C1=C2=30(±10)pF 使用陶瓷滤波器时,C1=C2=40(±10)pF ④AT89S52的复位 使CPU开始工作的方法就是给CPU一个复位信号,CPU收到复位信号后将内部特殊功能寄存器设置为规定值,并将程序计数器设置为“0000H”。复位信号结束后,CPU从程序存储器“0000H”处开始执行程序。89S52为高电平
27、复位。 图3-4为最简单的上电复位和手动复位方法。 89S52 图3-4 89S52的复位电路 5.2 资源分配 软、硬件设计是设计中不可缺少的,为了满足功能和指标的要求,资源分配如下 1.晶振采用12MHZ; 2.内存分配 P1口的P1.0-P1.3分别与四个按键连接,分别控制锯齿波、三角波、正弦波和方波,P1.4-P1.7与四个发光二极管相连,按键一对应发光二极管一,依次类推,发光二极管四对应按键四,实现输出一个波形对应亮一个灯。 P0口与DAC0832的DI0-DI7数据输入端相连。 P2口用来控制DAC0832的输入寄存器选择信号CS、输入寄存器写选通
28、信号WR1及DAC寄存器写选通信号WR2和数据传送信号XFER。 5.3 各部分电路原理 (A)DAC0832芯片原理 ①管脚功能介绍(如图3-5所示) 图3-5 DAC0832管脚图 (1) DI7~DI0:8位的数据输入端,DI7为最高位。 (2) IOUT1:模拟电流输出端1,当DAC寄存器中数据全为1时,输出电流最大,当 DAC寄存器中数据全为0时,输出电流为0。 (3) IOUT2:模拟电流输出端2, IOUT2与IOUT1的和为一个常数,即IOUT1+IOUT2=常数。 (4) RFB:反馈电阻引出端。 (5) VREF:参考电压输入端,它决定0至255的数
29、字量转化出来的模拟量电压值的幅度,VREF范围为(+10~-10)V。 (6) Vcc:芯片供电电压,范围为(+5~ 15)V。 (7) AGND:模拟量地,即模拟电路接地端。 (8) DGND:数字量地。 (B) LM324工作原理 (管脚功能如图3-8所示) 图3-8 LM324管脚图 LM324时四运放集成电路 ,的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。LM324的引脚排列见图9。 在此项目中用了LM324的三组运放,分别置于第一级输出,第一、二级之间,第二级输出。 (C)MC1403工作原理 (管脚功能如图3-9所示)
30、 图3-9 MC1403管脚图 MC1403是低压基准芯片。一般用作8到12bit的D/A芯片的基准电压等一些需要基本精准的基准电压的场合。 输出电压:2.5V+/-25Mv 输入电压范围:4.5Vto40V 输出电流:10Ma 在此项目里MC1403起到了稳压的作用,它基准了DAC0832的8脚需要的2.5V。使其DAC0832能够正常工作。 5.5单片机的设计 单片机是系统的控制中心,它主要实现以下的功能:一方面控制LCD显示输入控制信息,控制按键识别和功能选择;另一方面与CPLD结合,实现直接频率合成。单片机提供CPLD的控制端口,对CPLD内部实现控制和选
31、择,配合对双口RAM内存储数据的读取;另外单片机和一片D/A相连,实现对D/A的控制。 5.6 CPLD的设计 在CPLD内部形成DDFS所需的相位累加器。逻辑电路如下图示: 图4.1 DDS频率控制示意图 另外,单片机和双口RAM通信时P0口提供低八位地址所需要的锁存器LS373也在CPLD内部实现,减少硬件。如下图所示: 图5.2 LS373的Verilog实现图 CPLD还实现键盘扫描的功能。 5.7 RAM电路的设计 波形存储器使用双口RAM IDT7
32、132实现。IDT7132存储容量为2KB,具有两套输入输出控制端口和两套数据端口,这两套端口功能对等,分别有使能和读写有效控制端。IDT7132比普通的单口RAM还多一个忙标志位,用来控制两套端口是否在对一个存储单元操作,同时操作会造成冲突。IDT7132的具体应用电路如图4.4所示。 图5.3 IDT7132应用电路 左侧的地址线和数据线由单片机控制,在上电时向RAM里面写入波形表数据。右侧的地址线由DDS相位累加器的高8位控制,数据口直接输出波形数据给DA
33、C0800产生波形。 5.8 D/A转换模块的设计 D/A转换用DAC0800,我们采用两片0800,第一片直接和单片机的P1口连接,输出另一片0800的基准电压,从而控制输出波的幅度。第二片则和RAM的输出连接,通过DDS的输出地址的改变可读取波形数据,最后输出波形。D/A转换电路图如下: 图5.4 D/A转换原理图 5.9后级滤波模块的设计 滤除波形中由D/A产生的高频分量,根据实际情况设计低通滤波器,采用两级高通级联来提高Q值。根据设计表,综合考虑取 R1=1.5kΩ,R2=3.3kΩ+50kΩ的电位器,C1、 C2分别
34、取301和101的电容。 5.10 人机交互界面的设计 我们采用4×4键盘,矩阵式连接,当有键按下时,CPLD通过编码判断键的位置,并发生中断请求,由单片机执行相应操作。电路如下: 图5.6.a 键盘扫描的Verilog实现 LCD的控制电路如下图所示: 图5.6.b LCD控制的Verilog实现 6系统软件的设计 6.1单片机内部的程序流程图: 6.2Verilog HDL程序: CPLD内部实现DDS的功能,其电路如下:
35、 图6.1 DDS的Verilog实现 DDS的源程序如下: module DDS(P2_7, CS, //片选口 WR, Control_Data, //频率控制字 Adr, OUT_Address, //输出地址,从RAM读数 Clk); input P2_7; input [7:0] Control_Data; input [1:0] Adr; input CS,WR,Clk; output [10:0] OUT_Address; reg [23:0] counter;
36、reg [23:0] Address; always @(posedge Clk) begin Address<=Address+counter; end always @(negedge WR) begin if((!CS)&(!P2_7)) case(Adr) 2'd3: counter[23:16]<=Control_Data; 2'd1: counter[15:8]<=Control_Data; 2'd0: counter[7:0]<=C
37、ontrol_Data; default:counter<=counter; endcase end assign OUT_Address=Address[23:13]; endmodule 7测试数据与分析 7.1测试仪器 Tektronix TDS 1002双信道数字示波器,SG173SB3直流稳压稳流电源,Agilent 33120A信号发生器,FLUKE17B型4位数字万用表。 7.2指标测试 采用分级调试的方法,分别对D/A,双口RAM,以及滤波电路进行了测试。发现D/A不能正常工作,我们先对I/V转换进行检查,运放没问题,后来发
38、现运放的反馈电阻太大,将其调小后可正常工作,输出幅度为基准电压的值,且为双极性输出。整体测试,输出波形不好,我们在D/A转换和运放的电源处加了去耦电容,取得了不错的效果。由于我们用的是4.19M的晶振,在高频时波形很差,我们加了中心频率在250Hz的无源低通滤波器,波形质量很好。 测得频率数据表如下: 表1 正弦波的频率测量结果 f(set) 0.25 0.5 0.75 1 2 5 10 f(sin) 0.2499 0.4999 0.7499 0.999 1.999 4.995 9.998 f(set) 50
39、100 500 1000 2000k 5k 10k f(sin) 49.9991 99.9982 499.991 999.982 1.9999k 4.9999k 9.9998k f(set) 20k 50k 100k 120k 150k 180k 200k f(sin) 19.9997 49.9991 99.9981 119.998 149.9981 179.981 199.981 7.3误差分析说明 由于DDFS的工作原理是基于数字取样及数模恢复的处理,所以输出的模拟信号中必然会有杂散噪声,其来源主要有以下三个方面的因素: 7
40、3.1相位误差 (1)相位舍位引起的误差。在CPLD中,由于累加器的位数N大于RAM的寻址位数W,使得累加器在输出寻址RAM时,其N-W个低位必然会舍去,因此会不可避免地产生相位截断误差。该误差是CPLD输出散杂的主要原因。 (2)相位量化误差。由于我们的波形是通过一系列有限的离散采样点表示的,这就不可避免的引入相位量化误差。增加采样点数可以减少这种误差。我们的设计中,在输出波形时,CPLD在单位时间内输出的点数为一定值,因此频率越高相位量化误差越大;在以键盘输入波形时,每个周期输入16个点的数据进行插值产生128个采样点。 7.3.2幅值量化误差 由于RAM中存储的数据字长和D/A
41、位数有限,所以D/A进行幅值量化会产生幅值量化误差。增加数据字长和D/A位数,可以减少这种误差。 7.3.3由于D/A变换器的非理想特性引起的误差 DAC的非理想特性主要是D/A转换过程中的尖峰电流,这使得输出的波形中出现毛刺现象,但采取合适的滤波措施可以减少这种现象。 结 束 语 经过几周的制作我的课题——信号发生器已经做了出来,一开始感觉这样的东西挺简单的,只要找到资料就会很容易的制作出来,但当我真正的操作起来才发现还有好多的问题。如波形的转换,方波转换成三角波,最后再转换成正弦波,弄了很长时间才弄明白。 这次的课题设计还让我体会到了理论与实际相结合的重要性,如果你只注重理论
42、学习而不去锻炼自己的实践经验,是永远不能把事情做好的,从理论中得出结论,用实践锻炼自己,这才是重要的。同时这次的设计让我也学到了一些书本上没有的知识,提升了我独立思考能力。还有就是让我熟练的对Protel99se、Multisim等软件的运用,总之这次设计让我深刻地学会了许多东西,也温习了许多以前的知识。 5.已查阅的主要参考文献 [1]康华光. 邹寿彬,电子技术基础数字部分(第四版) 高等教育出版社 1999 [2]杜肤生. 数字集成电路应用精粹 人民邮电出版社 2001 [3]陈大钦.电子技术基础实验(第二版)
43、 高等教育出版社 2001 [4]童诗白.模拟电子技术[M] 高等教育出版社 1999 [5]全国大学生电子设计竞赛组委会 北京理工大学出版社, 2003 [6]中国计量出版社组编,新编电子电路大全 中国计量出版社, 2001.1 [7]葛汝明.《电子技术实验与课程设计》 山东大学出版社 2004 [8]周永金. 《 模拟电子技术及应用 》 陕西国防学院电子教研室 2005 [9]吴玮玮.主编 PROTE
44、L 99简明应用教程 陕西国防学院电子教研室 2006 [10]任元 吴勇.《 常用电子元器件简明手册 》 北工业出版社 2000 [11]钱逸秋. 主编 《单片机原理与应用》 子工业出版社 2002.1 [12] 粱军. 等编 《单片机原理机及应用》 东南大学出版社 2000 [13]李朝青. 主编 《单片机原理及应用》 重庆大学出版社 1998.3 [14]姚凯学 孟传良. 《单片机原理机及应用》 重庆大学出版社 1998.3
45、 致 谢 本课题及论文是在我的老师刘智强教授的悉心关心和精心指导下完成的。 在此,我要感谢我的指导老师,他循循善诱的教导和不拘一格的教学思路给了我无尽的启迪,他就暗金的治学态度、高度的敬业精神对我也产生了重要影响。在您的细心指导和帮助下我才能够很快的选择好课题完成这篇设计。 感谢我的每一位亲人,是你们的支持是我走完了在学校的求学生涯,焉得谖草,言树之背。养育之恩。无以回报、父母,永远健康是我最大的心愿。在论文即将截稿之时,我的心情无法平静,从开始进入课题到论文的顺利完成,有很多可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意! 19






