EDA课程设计_多功能波形信号发生器

合集下载

多波形信号发生器设计实验报告

多波形信号发生器设计实验报告

多波形信号发生器实验报告1. 背景多波形信号发生器是一种用于产生不同形状、频率和幅度的信号的设备。

它在各种领域中都有广泛的应用,包括电子工程、通信和音频领域。

在实验室中,多波形信号发生器通常用于测试和验证电路的性能。

本实验旨在设计一个多波形信号发生器,并对其进行性能测试和分析。

通过实际搭建和测试,我们将评估所设计的信号发生器的波形质量、频率稳定性、幅度准确性等关键指标,同时寻找可能的改进方向。

2. 设计与分析2.1 设计思路我们的设计思路是基于数字信号处理技术,使用微处理器控制和生成不同波形的信号。

具体来说,我们采用以下步骤来设计多波形信号发生器:1.选择合适的数字信号处理芯片,并与微处理器进行连接。

2.在微处理器上编程,实现不同波形信号的生成算法,如正弦波、方波、三角波等。

3.通过微处理器控制模拟输出电路,将数字信号转换为模拟信号。

4.设计合适的幅度控制电路,使得可以精确控制信号的幅度。

5.设计合适的频率控制电路,使得可以通过微处理器对信号的频率进行调节。

2.2 组件选择和连接首先,我们选择了一款高性能的数字信号处理芯片,并将其与微处理器进行连接。

通过对芯片的编程,我们可以实现生成不同波形的功能。

然后,我们将芯片的数字输出连接到模拟电路的输入端,通过合适的滤波电路进行信号滤波。

同时,将微处理器的控制端与模拟电路的控制电路相连接,以实现对幅度和频率的控制。

2.3 算法设计在微处理器上编写程序,实现不同波形信号的生成算法。

以正弦波为例,我们可以使用如下的算法:#define PI 3.1415926float sin_wave(float amplitude, float frequency, float time){return amplitude * sin(2 * PI * frequency * time);}对于方波和三角波等其他波形,我们可以采用类似的算法进行设计。

2.4 电路设计由于波形质量是信号发生器的重要性能指标之一,我们需要设计合适的模拟电路来提供稳定的、低噪声的模拟输出信号。

eda课程信号发生器课程设计

eda课程信号发生器课程设计

eda课程信号发生器课程设计一、课程目标知识目标:1. 学生能理解EDA课程中信号发生器的原理与功能,掌握相关电子元件的工作特性。

2. 学生能够掌握信号发生器的分类、特点及应用场景,了解各类信号发生器的优缺点。

3. 学生能够运用所学知识,分析并设计简单的信号发生器电路。

技能目标:1. 学生能够熟练运用EDA软件进行信号发生器电路的设计、仿真与调试。

2. 学生能够独立完成信号发生器的硬件搭建,并进行基本的性能测试。

3. 学生能够通过实际操作,提高动手实践能力,培养解决实际问题的能力。

情感态度价值观目标:1. 学生能够培养对电子工程的兴趣,激发创新意识,形成主动学习的习惯。

2. 学生能够培养团队协作精神,学会与他人沟通交流,共同解决问题。

3. 学生能够认识到信号发生器在现代社会中的重要作用,增强社会责任感和使命感。

本课程针对高年级学生,在分析课程性质、学生特点和教学要求的基础上,明确以上课程目标。

通过分解目标为具体的学习成果,使学生在掌握专业知识的同时,提高实践操作能力和团队协作能力,培养良好的情感态度价值观。

为后续的教学设计和评估提供明确的方向。

二、教学内容本章节教学内容依据课程目标,紧密结合教材,确保科学性和系统性。

主要内容包括:1. 信号发生器原理与分类:讲解信号发生器的基本原理、功能及分类,重点介绍函数发生器、脉冲发生器等常见类型的工作原理及应用。

2. 电子元件特性分析:分析常用电子元件(如运放、晶体管、二极管等)在信号发生器中的作用,掌握其工作特性。

3. 信号发生器电路设计:根据实际需求,设计不同类型的信号发生器电路,分析电路性能,优化设计方案。

4. EDA软件应用:教授学生如何使用EDA软件进行信号发生器电路的设计、仿真与调试,提高实际操作能力。

5. 硬件搭建与性能测试:指导学生搭建信号发生器硬件电路,进行基本性能测试,分析测试结果,找出问题并解决。

教学内容安排如下:1. 第1周:信号发生器原理与分类,电子元件特性分析。

多功能波形发生器

多功能波形发生器

考试序列号____通识教育课程论文课程设计名称多功能波形发生器课程名称 EDA技术课程设计学院物理学院专业班级学号姓名20 15 年1月17日概述函数信号发生器是一种能够产生多种波形,如三角波、 锯齿波、矩形波(含方波)、正弦波等波形的电路。

函数信号发生器在电路实验和设备检测中具有十分广泛的用途。

现在我们通过对函数信号发生器的原理以及构成设计一个能变换出三角波、正弦波、方波的简易发生器。

本设计采用FPGA 来设计制作多功能信号发生器。

在实验室用EDA 完成设计并进行引脚锁定下载连接用SignalTap II Logic Analyer 调试。

一、设计原理本设计由信号产生,信号选择,信号控制输出三大模块组合而成。

其中信号产生模块有:三角波模块、方波模块、正弦波模块。

本设计采用K0~K2这三个按键为信号选择开关,选择信号产生模块输出的信号。

其控制模块(SIG_CONTROL )是由数据选择器实现对以上三种信号的选择,并产生相应波形。

其结构框图如下:二、设计原理概述(1) 函数信号发生器的结构:三角波信号、方波信号、正弦信号的发生器各一个,数据选择器。

(2) VHDL 顶层设计。

(3)SignalTap II Logic Analyer 的仿真分析。

(4) 顶层文件在FPGA 中实现,通过外加按键控制波形输出,三个波形数据由三个开始波形选择三角波方波 正弦波波形输出结束信号选择图1.信号发生器结构框图信号发生模块(delta—三角波、square—方波、sin—正弦波)提供,信号发生器时钟由实验箱提供。

三、设计步骤(1)三角波、方波和正弦波源文件的编写并把VHDL程序转换成原理图。

(2) 数据选择器的源文件编写,并把VHDL程序转换成原理图。

(3) 用原理图完成函数发生器的设计。

(4) 编译完成后,建立 SingnalTap‖的工程文件。

(5) 锁定引脚,下载连接。

(6) 运行程序并观察结果。

(7)记录数据完成报告。

eda信号发生器的设计

eda信号发生器的设计

1 引言简易多功能信号发生器是信号发生器的一种,在生产实践和科研领域中有着广泛的应用。

在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都需要有信号源,由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察、测量被测仪器的输出响应,以分析确定它们的性能参数。

信号发生器是电子测量领域中最基本、应用最广泛的一类电子仪器。

它可以产生多种波形信号,如正弦波,三角波,方波和锯齿波等,因而广泛用于通信、雷达、导航、宇航等领域。

在本设计中它能够产生多种波形,如正弦波,三角波,方波和锯齿波等,并能实现对各种波频率和幅度的改变。

正因为其在生活中应用的重要性,人们它做了大量的研究,总结出了许多实现方式。

可以基于FPGA 、VHDL、单片机、DOS技能、数字电路等多种方法实现。

本设计是采用VHDL来实现的简易多功能信号发生器。

它能产生正弦波,三角波,方波和锯齿波。

且对各种波形的要求如下:(1)根据按键选择不同的波形(实现正弦波,三角波,方波和锯齿波);(2)各波形的频率范围为100Hz-20KHz;(3)各波形频率可调(通过按键控制频率的变化,步进值为500Hz);(4)用LED数码管实时显示输出波形的频率值;(5)用按键控制实现输出信号的幅度调节(幅度调节为2.5V和5V)。

2 EDA技术介绍2.1 EDA介绍EDA是电子设计自动化(Electronic Design Automation)缩写。

EDA技术是以计算机为工具,根据硬件描述语言HDL(Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。

硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。

HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。

基于EDA技术的多功能信号发生器的设计

基于EDA技术的多功能信号发生器的设计

基于EDA技术的多功能信号发生器的设计摘要在现代电子技术的研究及应用领域中,常常需要高精度且频率可调的信号源。

随着通信技术的发展,频道的分布日趋密集,高精度、高稳定度的通信频率就显得更加重要。

本课题的研究EDA频率可调数字信号发生器的设计方案和具体实现。

按照EDA开发流程,采用VHDL语言对FPGA进行编程来实现DDS功能。

详细介绍了信号发生器得发展,数字波形的基本原理和波形发生器的设计过程。

用VHDL语言编写了波形发生器的代码,进行了时序仿真,各模块都在逻辑综合工具QuartusⅡ下进行了综合,完全符合设计要求,并编程下载到EPF10KLC84-4,经D/A转换器将波形数据转换成模拟数据,再通过低通滤波器输出。

并且可以通过控制实验箱上的四个按键,能在示波器上观察到频率可调的正弦波、三角波、方波和锯齿波,频率范围是10HZ~250KHZ。

关键词:EDA;FPGA;D/A转换器;信号发生器;频率可调IIA Study of Multi-Functional Signal GeneratorBased on EDAIIIIAbstractIn the study and applied field of modern electric technology, highprecise and changeable signal source is needed. With communication technology developing and the distribution of channel tending dense, high precise and high stable communication frequency appears to be more and more important.This subject is to study design scheme and implementation of EDA changeable signal digital signal generator. According to EDA developing process, FPGA is programmed in VHDL language to achieve DDS function. This paper in detail introduces the development of signal generator, the basic principle of digital waveform and the design process of waveform generator. The code of waveform generator programmed in VHDL language will be simulated by time sequence. If each module synthesized by logically combined tool-QuartusⅡcorresponds completely to the design demand, they will be programmed and loaded down to EPF10KLC84-4. Waveform data will be shifted to analog data through D/A converter, then will be outputthrough low pass filter. Meantime, by controlling the four keys on the IIIIIIexperiment case, changeable signal sinusoid wave, triangular wave, square wave and sawtooth wave can be seen on the oscillogragh, whose frequency scope is 10HZ~250HZ.Keywords:EDA;FPGA;D/A converter;signal generator;changeable signalIVIV目录摘要 (I)Abstract .................................................................................................................. I I第1章引言 (7)1.1 概述(小三号、黑体,段前6磅、段后6磅) (7)1.2 信号发生器的国内外发展状况 (7)1.3 信号发生器的分类 (7)1.4 各类信号发生器特点 (8)1.4.1 传统信号发生器的设计原理 (8)1.4.2 数模转换型信号发生器 (8)1.5 本文的主要研究内容 (9)第2章 EDA简介与FPGA基础 (10)2.1 EDA简介 (10)2.1.1 EDA技术 (10)2.1.2 从传统的电子电路设计方法到EDA技术 (10)2.2 FPGA可编程逻辑器件原理与结构 (12)2.3 FPGA开发过程 (13)2.4 硬件描述语言VHDL (17)2.4.1 概述 (17)2.4.2 VHDL语言的特点 (17)2.4.3 VHDL的基本结构 (18)第3章多功能信号发生器的整体方案 (20)3.1概述 (20)3.2数字信号发生器的方案综述 (20)3.1.1 直接数字法 (20)3.1.2 基于相位累加器的直接数字合成法的工作原理 (21)3.2 数字波形生成的基础知识 (21)3.2.1存储器与波形数据 (21)3.2.1 波形发生器的系统组成 (22)3.2.2 多功能信号发生器的总体系统方框图 (23)第4章QuartusⅡ的基本使用 (24)4.1概述 (24)VV4.2 QuartusⅡ在Windows XP上的安装设置 (24)第5章频率可调的多功能信号发生器 (26)5.1各种波形产生模块 (26)5.1.1正弦波产生的原理 (26)5.1.2波形数据产生器实现程序 (27)5.2数据选择器模块 (29)4.1 5.3 D/A转换模块 (29)5.4仿真波形 (30)结论 (33)致谢 (34)附录 (36)VIVI第1章引言1.1概述(小三号、黑体,段前6磅、段后6磅)信号发生器是一种常用的信号源,广泛应用于电子电路、自动控制和科学试验等领域。

eda-信号发生器三角波正弦波方波

eda-信号发生器三角波正弦波方波

1 引言简易多功能信号发生器是信号发生器的一种,在生产实践和科研领域中有着广泛的应用。

信号源主要给被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。

可见信号源在电子实验和测试处理中,并不测量任何参数,而是根据使用者的要求,仿真各种测试信号,提供给被测电路,以达到测试的需要。

信号发生器是电子测量领域中最基本、应用最广泛的一类电子仪器。

它可以产生多种波形信号,如正弦波,三角波和方波等,因而广泛用于通信、雷达、导航、宇航等领域。

在本设计中它能够产生多种波形,如正弦波,三角波和方波等,并能实现对各种波频率和幅度的改变.正因为其在生活中应用的重要性,人们它做了大量的研究,总结出了许多实现方式。

可以基于FPGA 、VHDL、单片机、DOS技能、数字电路等多种方法实现.本设计是采用VHDL来实现的简易多功能信号发生器。

它能产生正弦波,三角波和方波.且对各种波形的要求如下:(1)设计任意信号发生器,使之能够生成正弦波、三角波和方波;(2)电路的外部频率为40MHz,要求信号发生器可产生0—1KHz、1KHz~10KHz、10KHz~1MHz 三档频率的信号;(3)要求具有波形选择和频率选择的功能;(4)在同一频率档内,可实现频率的加减;(5)要求显示波形的同时能够进行频率的调节;(6)要求能够显示波形:A--正弦波;B—-三角波;C——方波;(7)要求能够显示频率值;(8)可用示波器进行波形的观测.2 设计流程2。

1设计思想及流程图本次课程设计按模块式实现,据任务书要求,设计总共分三大步骤完成:(1)产生波形(三种波形:方波、三角波、正弦波)信号;(2)频率控制;(3)显示频率值。

利用VHDL编程,依据基本数字电路模块原理进行整合。

系统各部分所需工作时钟信号由输入系统时钟信号经分频得到,系统时钟输入端应满足输入脉冲信号的要求。

频率控制模块有多个可选频率,最终送至脉冲发生模块输出脉冲信号,同时将信号的频率输出至数码管显示当前信号的频率值,达到设计课题所要求的输出波形频率可调功能。

EDA课程设计——函数信号发生器

EDA课程设计——函数信号发生器

EDA课程设计——函数信号发生器实验报告学院(系)专业、班级学生姓名学号小组其他队员:指导教师(1)实验要求(2)总体设计思路(3)程序仿真(4)实验结果(5)心得体会一.实验要求(1)利用VHDL语言设计一个多功能信号发生器,可以产生正弦波,三角波,锯齿波和方波的数字信号。

(2)焊接一个D/A转换器,对输出的数字信号转换成模拟信号并在示波器上产生波形。

(3)在电路板上可以对波形进行选择输出。

(4)在电路板上可以对波形的频率与幅度进行调节。

二.总体设计思路信号发生器主要由分频,波形数据的产生,四选一多路选择,调幅和D/A转换五个部分组成。

总体框架图如下:(1)分频分频器是数字电路中最常用的电路之一,在FPGA的设计中也是使用效率非常高的基本设计。

实现的分频电路一般有两种方法:一是使用FPGA芯片内部提供的锁相环电路,如ALTERA提供的PLL(Phase Locked Loop),Xilinx提供的DLL(Delay Locked Loop);二是使用硬件描述语言,如VHDL、Verilog HDL等。

本次我们使用VHDL进行分频器设计,将奇数分频,和偶数分频结合起来,可以实现50%占空比任意正整数的分频。

分频器原理图:在我们本次试验中的实现即为当按下按键时,频率自动减半。

如当输入为100MHZ,输出为50MHZ。

(2)信号的产生。

根据查找资料,我们最终确定了在QUARTUS中波形数据产生的方法,即利用地址信号发生器和LPM_ROM模块。

ROM 的地址信号发生器,有七位计数器担任。

LPM_ROM底层是FPGA 中的M4K等模块。

然后在VHDL顶层程序设计中将两部分调用从而实现信号的发生。

ROM中存放不同的初始化MIF文件(存放不同波形的数据)从而产生不同的波形。

信号产生模块:信号产生RTL图:此环节最重要的还有MIF文件的建立,经过查找资料,下载了MIFMAKER 2010软件,从而较为简单的产生了MIF文件。

多功能信号发生器课程设计

多功能信号发生器课程设计

多功能信号发生器课程设计一、设计目的本课程设计旨在通过实际操作,让学生掌握信号发生器的设计、制作和调试方法,培养其动手能力、分析问题和解决问题的能力,并巩固和扩展理论知识。

二、设计任务与要求本设计主要实现以下功能:1. 能够产生正弦波、矩形波、三角波和锯齿波;2. 每种波形频率可在一定范围内调节;3. 矩形波占空比可在一定范围内调节;4. 输出电压满足要求(矩形波U P-P ≤12V,三角波U P-P ≤12V,正弦波U P-P ≥1V);5. 具有数码管显示功能,实时显示输出频率。

三、设计方案与步骤1. 设计方案采用FPGA(现场可编程逻辑门阵列)实现信号发生器功能。

FPGA是一种高度灵活的集成电路芯片,可通过编程实现各种数字电路功能。

本设计将利用Quartus II软件平台,采用Verilog HDL语言编写逻辑电路,并结合外围硬件电路实现多功能信号发生器。

2. 设计步骤(1)硬件设计a. 电源电路:为FPGA及其他外围电路提供稳定的工作电压。

b. 时钟电路:为FPGA提供时钟信号,以确保数字电路的正常运行。

c. 存储电路:存储波形数据和频率数据等信息。

d. 显示电路:与数码管驱动电路配合,实现输出波形的实时显示。

e. 波形产生电路:根据控制信号生成不同种类的波形信号。

f. 调节电路:实现对波形频率和矩形波占空比的调节。

(2)软件设计a. 编写Verilog HDL程序,实现FPGA逻辑功能。

程序应包括波形选择、频率控制、波形生成、调节控制等功能模块。

b. 通过Quartus II软件平台进行逻辑综合和布局布线,生成可下载到FPGA的配置文件。

(3)系统调试与优化a. 将配置文件下载到FPGA芯片中,进行系统调试。

b. 根据调试结果,对硬件电路和软件程序进行优化,确保系统的稳定性和性能。

c. 对输出电压、频率范围、矩形波占空比等指标进行测试,确保满足设计要求。

d. 对数码管显示的正确性进行测试,确保实时显示功能正常。

多波形信号发生器设计实验报告

多波形信号发生器设计实验报告

多波形信号发生器设计实验报告一、实验目的本实验的主要目的是设计一款多波形信号发生器,能够输出多种波形信号,并能够通过控制电路对波形进行调节和改变,以满足不同需求。

二、实验原理1. 多波形信号发生器的基本原理多波形信号发生器是一种用于产生不同类型信号的电子设备。

其基本原理是通过控制电路中的各种元器件,如晶体管、电容、电感等,来产生不同类型的信号波形。

常见的波形包括正弦波、方波、三角波等。

2. 信号源在多波形信号发生器中,信号源是最基础也是最重要的部分。

通常使用晶体管或集成电路作为信号源。

其输出频率和振幅可以通过控制元器件来调节。

3. 滤波电路为了保证输出的信号干净稳定,需要在信号源后面加入滤波电路。

滤波电路主要由电容和电感组成,可以滤除杂散噪声以及高频噪声。

4. 放大电路放大电路用于放大经过滤波后的低频部分。

常见放大电路有放大器、运算放大器等。

5. 输出电路输出电路用于将放大后的信号输出到外部设备,如示波器、扬声器等。

常见的输出电路包括隔离式输出和非隔离式输出。

三、实验步骤1. 搭建基本电路将信号源、滤波电路、放大电路和输出电路依次连接起来,形成一个基本的多波形信号发生器电路。

2. 调节元器件通过调节各个元器件的参数,如晶体管的偏置电压、滤波电容和电感的数值等,可以产生不同类型的波形信号。

3. 测试并调整将多波形信号发生器连接到示波器或扬声器上,在不同频率下测试并调整各个元器件,以获得最佳效果。

四、实验结果分析通过实验我们成功地设计出了一款多波形信号发生器,并能够产生多种类型的波形信号。

通过调节各个元器件,我们可以改变输出信号的频率、振幅和相位等参数。

同时,在测试中我们也发现了一些问题,并进行了相应的调整和优化。

五、实验总结与心得体会通过本次实验,我们深入了解了多波形信号发生器的基本原理和构成,掌握了如何设计和调节多波形信号发生器的方法。

同时,我们也意识到了电路设计中的细节问题对最终效果的影响,以及如何通过测试和调整来优化电路性能。

多波信号发生器课程设计报告

多波信号发生器课程设计报告

简介在人们认识自然、改造自然的过程中, 经常需要对各种各样的电子信号进行测量, 因而如何根据被测量电子信号的不同特征和测量要求, 灵活、快速的选用不同特征的信号源成了现代测量技术值得深入研究的课题。

信号源主要给被测电路提供所需要的已知信号(各种波形), 然后用其它仪表测量感兴趣的参数。

信号源在各种实验应用和实验测试处理中, 它不是测量仪器, 而是根据使用者的要求, 作为各种激励源, 仿真各种测试信号, 提供给被测电路, 以满足测量或各种实际需要。

多波信号发生器就是信号源的一种, 能够给被测电路提供所需要的波形。

多波信号发生器多采用模拟电子技术, 由分立元件或模拟集成电路构成, 产生正弦波、方波、三角波、矩形波等幅值可调的信号。

任务要求1、能产生矩形波、方波、三角波、正弦波等波形;2、产生的矩形波的占空比可调;3、产生的方波、三角波、正弦波的频率和幅度在一定范围内可调;4、产生的波形在一定程度上不失真。

设计方案方案一设计原理方框图:原理方框图(方案一)设计电路原理图:方案原理: 555定时器接成多谐振荡器工作形式, C2为定时电容, C2的充电回路是RV1→R2→RV2→C2;C2的放电回路是C2→RV1→R2→IC的7脚(放电管)。

由于RV1.RV2为可调电阻, 因此充放电时间常数可调, 同时频率在一定的范围内可调, 当充电时间常数与放电时间常数近似相等, 由IC的3脚输出的是近似对称方波;当充电时间常数与放电时间常数不相等时, 由IC的3脚输出的是矩形波。

IC的3脚输出的方波经过R5与C5组成的积分电路时, 此时会对C5进行充放电, 输出三角波。

三角波经过二级低通滤波器, 滤除高次谐波, 产生正弦波。

发光二极管VD用作电源指示灯。

方案二:方案原理方框图:原理方框图(方案二)设计电路原理图:方案原理: 上图为RC 桥式正弦波振荡器。

其中RC 串、并联电路构成正反馈支路, 同时兼作选频网络, R1.R2.RV1及二极管等元件构成负反馈和稳幅环节。

EDA课程设计-方波、三角波

EDA课程设计-方波、三角波

成绩1 设计要求设计一个能产生方波、三角波、正弦波、斜波等多种波形的智能函数发生器。

(1)智能函数发生器能够产生递增斜波、方波、三角波、正弦波等波形。

(2)由2个拨码开关控制选择相应的波形输出。

2 设计方案本次设计主要基于VHDL硬件描述语言设计制作一个函数信号发生器,使用QuartusII开发环境进行编译仿真。

由波形选择部分,波形发生部分和输出部分组成。

其中波形选择部分是数据选择器电路;波形发生部分包括递增斜波产生电路,递减斜波产生电路,三角波产生电路,正弦波产生电路和方波产生电路。

主要设计框图如图1所示。

图1.系统原理框图根据系统整体设计要求,信号发生器由信号产生模块、信号控制模块。

其中信号产生模块用来产生所需要的5种信号,这些信号的产生可以有多种方式,如用计数器直接产生信号输出,或者用计数器产生存储器的地址,在存储器中存放信号输出的数据。

信号发生器的控制模块可以用数据选择器来实现。

用一个6选1数据选择器可以实现对5种波形的选择,在本设计中应用VHDL语言针对5种信号分别设计出5种不同的子程序,通过不同的选择信号从主程序中调用与其相对应的子程序。

3 设计内容(根据设计任务,硬件要给出电路原理图、软件要给出程序流程图)1.硬件部分(1)FPGA原理图如图2所示。

图2.FPGA原理图(2).智能函数发生器电路原理图如图3所示。

图3.发生器电路原理图2.软件部分(1).程序流程图波形产生模块的递增、递减斜波是以一定常数递增、递减来产生的。

三角波的产生是在输出波形的前半周期内从0累加到最大值255,在后半周期从最大值递减到0来实现的,正弦波的产生原理是基于奈奎斯特采样定律,得到离散化波形序列。

方波的产生是在输出波形的前半周期输出低电平,后半周期输出高电平,从而得到占空比为50%的方波信号。

软件设计流程图如图4。

图4.软件流程图(2).递增斜波信号产生模块①递增斜波信号产生模块原理图图5.递增斜波模块②递增斜波程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY increase ISPORT(CLK,CLR:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END increase;ARCHITECTURE rtl OF increase ISBEGINPROCESS(CLK,CLR)VARIABLE TMP:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINIF CLR='1' THENTMP:="00000000";ELSIF CLK'EVENT AND CLK='1'THENIF TMP="11111111"THENTMP:="00000000";ELSETMP:=TMP+1;END IF;END IF;Q<=TMP;END PROCESS;END rtl;(3).递减斜波信号产生模块①递减斜波信号产生模块原理图图6.递减斜波模块②递减斜波程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY decrease ISPORT(CLK,CLR:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END decrease;ARCHITECTURE rtl OF decrease ISBEGINPROCESS(CLK,CLR)VARIABLE TMP:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINIF CLR='1'THENTMP:="11111111";ELSIF CLK'EVENT AND CLK='1'THENIF TMP="00000000"THENTMP:="11111111";ELSETMP:=TMP-1;END IF;END IF;Q<=TMP;END PROCESS;END rtl;(4).三角波①三角波信号产生模块电路图图7.三角波模块②三角波程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY triangle ISPORT(CLK,CLR:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );①方波信号产生模块电路图图8.方波模块②方波信号程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY square ISPORT(CLK,CLR:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END square;ARCHITECTURE rtl OF square ISSIGNAL TAG:STD_LOGIC;BEGINPROCESS(CLK,CLR)VARIABLE CNT:INTEGER RANGE 0 TO 63;BEGINIF CLR='1'THENTAG<='0';ELSIF CLK'EVENT AND CLK='1'THEN IF CNT<63 THENCNT:=CNT+1;ELSECNT:=0;TAG<=NOT TAG;END IF;END IF;END PROCESS;PROCESS(CLK,TAG)BEGINIF CLK'EVENT AND CLK='1'THENIF TAG='1'THENQ<="11111111";ELSEQ<="00000000";END IF;END IF;END PROCESS;END rtl;(6).正弦波①正弦波信号产生模块原理图图9.正弦波模块②正弦波程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY sin ISPORT(CLK,CLR:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );END sin;ARCHITECTURE rtl OF sin ISBEGIN(7).拨码开关——函数选择器①函数选择器原理图图10.函数选择器模块②函数选择器程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY selecter ISPORT(SEL:IN STD_LOGIC_VECTOR(2 DOWNTO 0);D0,D1,D2,D3,D4:IN STD_LOGIC_VECTOR(7 DOWNTO 0);Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END selecter;ARCHITECTURE rtl OF selecter ISBEGINPROCESS(SEL)BEGINCASE SEL ISWHEN "000"=>Q<=D0;WHEN "001"=>Q<=D1;WHEN "010"=>Q<=D2;WHEN "011"=>Q<=D3;WHEN "100"=>Q<=D4;WHEN OTHERS=>NULL;END CASE;END PROCESS;END rtl;(8).顶层设计①顶层设计RTL电路图11. 顶层设计RTL电路②顶层设计程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY lcy ISPORT(CLK,CLR:IN STD_LOGIC;SEL:IN STD_LOGIC_VECTOR(2 DOWNTO 0);Q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0) );图12.波形对应表2.递增斜波当CLR=0时,每检测到一个上升沿,计数器加一,加到最大时清零。

多功能信号发生器-课程设计

多功能信号发生器-课程设计

多功能信号发生器——专业技能训练/课程设计1. 设计任务1.设计一个基于运算放大器构成的能够产生正弦波、方波和三角波的多功能信号发生器;2.要求掌握运放在开环、正反馈下的工作特点,熟悉比较器电路,搞清其工作原理,掌握正弦波发生器,方波发生器,三角波发生器的电路及其工作原理3.设计技术要求:正弦波,1~3Hz和20~30Hz两个频率点用开关切换;方波,直接对正弦波整形得到,并用红色和绿色LED作限幅和显示;三角波,直接对方波积分得到。

4. 绘制多功能信号发生器的电原理图,并仿真;完成多功能信号发生器的实作,完成设计报告。

2. 实验原理2.1运放在开环,正反馈下的特点如果引入正反馈,可以构成具有回线形状传输特性的滞回比较器。

图2 (a) 所示为一反相输入的滞回比较器,该电路当OM O V V =时 上门限电压OM f111V R R R V +=当OM O V V -=时P 电路中采用二极管来实现稳幅作用,由于起振时输出电压幅度较小,尚不足以使二极管导通,此时1f R 2R >,而后随着输出幅度增加,正向二极管导通,其正向电阻逐渐减小,直至1f R 2R =时振荡稳定。

二极管两端并联电阻R 2用于适当削弱二极管的非线性影响,以改善输出波形。

3. 设计参考方案3.1 整机结构框图首先,利用文氏电桥振荡电路产生正弦波信号,频率在2Hz 和30Hz 左右(通过按键快关切换),然后设置以及电压放大器,可以提高输出电压幅度和带负载能力;其次,利用滞回比较器(施密特触发器)对正弦波信号整形得到同频率的方波信号;最后,利用积分电路对方波积分得到三角波信号。

图7 整机框图3.2 文氏电桥正弦波振荡电路:1)R1(R12)C4和R2(R13)C5构成RC 串并联选频网络,其谐振频率(及振荡频率)为:RC21f f 0π==,约为2Hz 和30Hz 左右(通过按键快关切换),2Hz 低频振荡是便于用LED 观察期闪烁,而30Hz 信号便于用示波器观察期波形;2)U1A 与R6\8\10构成增益为≥3倍的同相比例放大器,其R6可调节其增益,一般先将R6调节到最大位置,在产生了正弦波震荡后,逐渐调小R6 使之得到不失真的正弦波信号。

EDA课设报告--信号发生器的设计

EDA课设报告--信号发生器的设计

《集成电路VHDL设计》课程设计报告设计题目专业班级:电信0901设计者:___03 庄威___________06 邓智超_______42 郭乐安______指导教师:蔡剑华设计时间: 2012-06-23目录摘要 (2)Abstract (3)绪论 (4)1.V H D L简介 (5)1.1 VHDL的特点 (5)1.2 VHDL发展史 (5)2.设计的方案确定 (6)2.1.AD558工作原理 (6)2.2设计方案 (7)3.设计流程 (8)4.结束语 (14)5.参考文献 (15)附录 (16)摘要本说明书首先介绍了VHDL语言的特点及发展史;接着简要说明了D/A接口(函数发生器)的工作原理及设计思想和设计方案的确定;然后着重解释了使用VHDL语言设计D/A接口(函数发生器)的具体操作步骤及主要流程。

为了更加详细的解释清楚主要流程在本课程设计说明书中还附加了相应的图片。

最后还附加了实现设计的VHDL源程序。

关键词:VHDL D/A接口设计AbstractThis manual introduces the VHDL language features and development history; followed by a brief description of the D/A interface and the working principle and design ideas and the way that the design program was confirmed; and then I explain the emphasis on the use of VHDL language to design D/A interface and the specific steps and the main process. In order to explain in more details of the main process I also attached the corresponding pictures. Finally I added the VHDL design source codes in the addendum.Keywords: VHDL D/A Interface Design绪论EDA是电子设计自动化(Electronic Design Automation)的缩写。

电子电路课程设计报告 多功能信号发生器课程设计报告

电子电路课程设计报告  多功能信号发生器课程设计报告

《电子电路设计与实践》课程设计报告设计题目:多功能信号发生器所属学院:电子信息工程学院专业:电子设计自动化班级:10级电子设计自动化1班姓名学号:指导教师:完成日期:2012年12月10日目录一.课程设计目的二.设计任务和要求三.设计进度四.总体方案五.电路设计六.调试过程七.心得体会一.课程设计目的为了熟悉掌握电子电路设计与实践这门课程的具体内容、锻炼自己的实际操作能力,特按课程要求设计一个能产生正弦波、方波、三角波的信号发生器。

二.设计任务和要求设计一个能产生正弦波、方波和三角波的信号发生器,要求如下:◆输出频率f=20Hz~5kHz连续可调的正弦波、方波和三角波。

◆输出正弦波幅度V0=0~5V可调,波形非线性失真系数≤5%。

◆输出三角波幅度V0=0~5V可调。

◆输出方波幅度可在0~12V之间可调。

三.设计进度第十周确定课程设计题目;第十一周确定课程设计的总体方案;第十二周设计出电路图,确定各个元器件的型号;第十三周检测各个元器件是否完好;第十四周焊接电路;第十五周调试电路,准备完成课程设计报告。

四.总体方案随着集成制造技术的不断发展,多功能信号发生器已被制作成专用集成电路。

该集成电路使用方便,调试简单,性能稳定,它不仅能产生正弦波,同时还能产生三角波和方波。

5G8038就是其中的一种。

它只需外接很少的几只元件就能实现一个多种波形输出的信号发生器。

该器件产生频率的温度漂移小于50×10-6/℃;正弦波输出失真度小于1%;输出频率范围为0.01Hz~300kHz;方波输出电压幅度为零到外接电源电压。

使用5G8038集成函数发生器设计本任务书下达的技术指标,完全可以满足要求。

五.电路设计1. 5G8038集成函数发生器工作原理图1 ICL8038函数发生器的方框图图1是ICL8038多功能函数发生器的原理框图。

它由一个恒流充放电振荡电路和一个正弦波变换器组成,恒流充放电振荡器产生方波和三角波,三角波经正弦波变换器输出正弦波。

EDA课程设计-信号发生器与数字钟设计

EDA课程设计-信号发生器与数字钟设计

实用文档EDA综合设计报告题目:信号发生器与数字钟设计学院:电气信息学院专业:通信工程姓名:学号:指导老师:汪敏第一部分:信号发生器一、设计任务要求设计一个多功能信号发生器,根据输入信号的选择可以输出递增锯齿波,递减锯齿波,三角波,阶梯波,方波和正弦波六种信号,并能实现频率选择和幅度调节,信号发生器的控制模块可以用数据选择器实现,六种信号的选择可以用6选1数据选择器实现。

二、方案设计(一)设计思路1.利用VHDL语言,设计分频器,实现2分频,4分频,8分频及16分频,实现频率选择功能,生成模块。

与利用数据选择器原理设计的频率选择器模块相连,实现频率选择输出。

2.利用VHDL语言,分别实现六种信号(递增/递减锯齿波,三角波,阶梯波,方波和正弦波)的输出,生成模块。

3.将设计的各功能模块按要求连接,分配引脚接口,连接实验箱,进行硬件测试,验证实现功能。

(二)程序流程(三)设计软件Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。

具有运行速度快,界面统一,功能集中,易学易用等特点。

Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。

对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

Quartus II提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性。

三、硬件设计(一)分频器分频器的功能是:利用对时钟上升沿计数,从而实现可以输出二分频,四分频,八分频及十六分频模块,分频器模块是为了实现信号发生器的频率选择功能。

eda波形发生器课设详细

eda波形发生器课设详细

工程学院课程设计课程名称课题名称专业班级学号姓名指导教师年月日工程学院课程设计任务书课程名称:EDA技术题目:波形发生器专业班级:班学生:学号:指导教师:龙泳涛审批:任务书下达日期年月日设计完成日期年月日目录一、总体思路61.1设计思想61.2流程图6二、各单元设计72.1 分频器的实现72.2 正弦波、三角波、方波的实现82.2.1正弦波设计82.2.2三角波设计112.2.3方波设计132.3波形输出控制单元14三、总电路设计15四、安装与调试154.1正弦波154.2三角波164.3方波164.4频率控制16五、总结体会16参考文献17一、总体思路1.1设计思想基于VHDL语言设计一个简易多功能信号发生器,通过选入输入信号,可以输出正弦波、三角波、方波和锯齿波四种波形信号。

信号发生器的控4选1数据选1.2二、各单元设计2.1 分频器的实现本次设计采用50MHz的时钟频率,设计要求输出0.1KHz~1KHz的波形。

可知,需要一个分频模块对时钟频率进展分频。

结合三个波形发生模块的程序可知,正弦、方波、三角波产生算法分别进展了256、256、512分频。

要三个波形同频,三角波发生模块的输入脉冲应该是另外两者的2倍。

应为分频数较大,采用二次分频。

一次分频参数由外部输入,二次分频参数固定。

经过计算得出分频参数表如下:分频模块原理图如下:2.2 正弦波、三角波、方波的实现三个波形的发生:2.2.1正弦波设计正弦波的产生思想是将对模拟波形采样后的编码存入定义好的ROM 中,再根据时钟循环的将这些编码顺序输出,在输出端将经过数模转换器转换后的模拟信号接入示波器即可显示正弦波形。

产生正弦波的VHDL代码如下:--正弦波library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity zx isport(clk,reset:in std_logic;d:out integer range 0 to 255);end zx;architecture behave of zx isbeginprocess(clk,reset)variable tmp:integer range 0 to 127;beginif reset='0' thend<=0;elsif clk'event and clk='1' thenif tmp =127 thentmp:=0;elsetmp:=tmp+1;end if;case tmp is --""when 00=>d<=255;when 01=>d<=255;when 02=>d<=255;when 03=>d<=254;when 04=>d<=254;when 05=>d<=253;when 06=>d<=252;when 07=>d<=251;when 08=>d<=250;when 09=>d<=249;when 10=>d<=247;when 11=>d<=246;when 12=>d<=244;when 13=>d<=242;when 14=>d<=240;when 15=>d<=238;when 16=>d<=236;when 17=>d<=233;when 18=>d<=231;when 19=>d<=228;when 20=>d<=225;when 21=>d<=222;when 22=>d<=219;when 23=>d<=215;when 24=>d<=212;when 25=>d<=209;when 26=>d<=205;when 27=>d<=201;when 28=>d<=197;when 29=>d<=193;when 30=>d<=189;when 31=>d<=185;when 32=>d<=180;when 33=>d<=176;when 34=>d<=171;when 35=>d<=167;when 36=>d<=162;when 37=>d<=157;when 38=>d<=152;when 39=>d<=147;when 40=>d<=142;when 41=>d<=137;when 42=>d<=131;when 43=>d<=126;when 44=>d<=120;when 45=>d<=115;when 46=>d<=109;when47=>d<=103;when 48=>d<= 98;when 49=>d<= 92;when 50=>d<= 86;when 51=>d<= 80;when 52=>d<= 74;when 53=>d<= 68;when 54=>d<= 62;when 55=>d<= 56;when 56=>d<= 50;when 57=>d<= 44;when 58=>d<= 38;when 59=>d<= 31;when 60=>d<= 25;when 61=>d<= 19;when 62=>d<= 13;when 63=>d<= 6;when 64=>d<= 0;when 65=>d<= 6;when 66=>d<= 12;when67=>d<= 19;when 68=>d<= 25;when 69=>d<= 31;when 70=>d<= 37;when 71=>d<= 43;when 72=>d<= 50;when 73=>d<= 56;when 74=>d<= 62;when 75=>d<= 68;when 76=>d<= 74;when 77=>d<= 80;when 78=>d<= 86;when 79=>d<= 92;when 80=>d<= 97;when 81=>d<=103;when 82=>d<=109;when83=>d<=114;when 84=>d<=120;when 85=>d<=125;when 86=>d<=131;when87=>d<=136;when 88=>d<=141;when 89=>d<=147;when 90=>d<=152;when91=>d<=157;when 92=>d<=162;when 93=>d<=166;when 94=>d<=171;when95=>d<=176;when 96=>d<=180;when 97=>d<=184;when 98=>d<=189;when99=>d<=193;when 100=>d<=197;when 101=>d<=201;when 102=>d<=205;when 103=>d<=208;when 104=>d<=212;when 105=>d<=215;when 106=>d<=219;when 107=>d<=222;when 108=>d<=225;when 109=>d<=228;when 110=>d<=230;when 111=>d<=233;when 112=>d<=235;when 113=>d<=238;when 114=>d<=240;when 115=>d<=242;when 116=>d<=244;when 117=>d<=246;when 118=>d<=247;when 119=>d<=249;when 120=>d<=250;when 121=>d<=251;when 122=>d<=252;when 123=>d<=253;when 124=>d<=254;when 125=>d<=254;when 126=>d<=255;when 127=>d<=255;when others=>null;end case;end if;end process;end behave;2.2.2三角波设计三角波的产生思想是将对模拟波形采样后的编码存入定义好的ROM 中,再根据时钟循环的将这些编码顺序输出,在输出端将经过数模转换器转换后的模拟信号接入示波器即可显示三角波形。

EDA课程设计任意波形发生器

EDA课程设计任意波形发生器

目录第一章EDA技术概述 (2)1.1 EDA技术的发展 (2)1.2 EDA技术的基本设计方法 (3)1.2.1 电路级设计 (3)1.2.2 系统级设计 (4)1.2.3 数字系统设计模型及基本步骤 (6)1.3 数字系统设计 (8)1.3.1 数字系统设计概要 (8)1.3.2数字系统的设计模型 (8)1.3.3 数字系统的设计步骤 (9)第二章任意波形产生器 (11)2.1任意波形信号发生器的概述: (11)2.2发展趋势及应用 (11)2.3 任意波形产生器构成 (12)第三章任意波形产生器的设计 (14)3.1设计的意义 (14)3.2 设计步骤及程序 (15)心得体会 (19)参考引脚配置 (21)附录:下载板与主板主要器件连接关系 (22)第一章EDA技术概述EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。

EDA技术是以计算机为工具,根据硬件描述语言HDL( Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。

典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。

综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。

综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来。

也就是说,综合器是软件描述与硬件实现的一座桥梁。

综合过程就是将电路的高级语言描述转换低级的、可与目标器件FPGA/CPLD 相映射的网表文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录摘要 (1)一、设计要求 (3)三、系统设计思路 (4)3.1 波形函数发生装置的选择 (4)3.2 波形输入输出控制方式的选择 (5)四、各模块设计及仿真 (6)4.1函数发生模块 (6)4.1.1 正弦波模块 (6)4.1.2 方波模块 (7)4.1.3 递增锯齿波模块 (9)4.1.4 递减锯齿波模块 (10)4.1.5 阶梯波模块 (12)4.1.6 三角波模块 (13)4.2调控模块 (15)4.2.1波形输出控制单元 (15)4.2.2波形输入控制单元 (16)4.2.3频率控制单元 (18)4.2.4幅度控制单元 (20)4.3 D/A转换器 (21)4.4 总电路 (24)五、硬件测试 (25)5.1编译 (25)5.2 引脚的锁定 (26)5.3编程下载 (27)5.4 硬件验证 (28)六、课程设计心得体会 (31)参考文献 (32)附录 (33)摘要本次设计课题为应用VHDL语言及MAX+PLUSII软件提供的原理图输入设计功能,组合电子线路的设计加以完成一个任意波形信号发生器。

它具有结构紧凑,性能稳定,设计结构灵活,方便进行多功能组成的特点,经济实用,成本低廉的特点。

可产生正弦波、方波、三角波、递增锯齿波、递减锯齿波以及阶梯波,并可使用示波器观察波形。

实现了系统信号实时快速测量,也为其广泛应用于实际领域创造了条件。

在实现过程中,将整体功能模块化,分为函数发生模块和调控模块。

在调控模块中实现了调频调幅以及对于波形的输入输出控制。

对于D/A转化器,本实验选择的是TLC7528,利用简单的8进制计数控制CS和WR端口的同步输出,实现数模转换的同时,保持相应位的同步实现。

在课程设计中遇到了诸多困难,在用示波器显示波形时,却总是得不到稳定的波形,后来发现在输入控制中,仅需要3位二进制数即能完成简单的8进制计数,自己却习惯性的用了8位,这使得分频现象严重,更改后即得到了了稳定的输出波形,经过反复修改调试,最终试验成功。

关键词:智能信号发生器 VHDL MAX+PLUSII TLC7528一、设计要求要求设计一个智能函数发生器,该智能函数发生器能够产生递增锯齿波、递减锯齿波、方波、三角波、正弦波以及阶梯波,并且可以通过选择开关选择输出相应波形,具有一定的调幅和调频功能。

同时具有复位的功能,通过按键确定输出的波形及确定是否输出波形。

二、系统设计方案1、系统的整体原理框图:图 1 系统的整体原理框图2、系统框图图 2 任意波形信号发生器系统框图三、系统设计思路3.1 波形函数发生装置的选择波形函数发生方案众多,我们要选择一种易于实现且精度高的方案,以此来提高本设计的实用性。

方案一:通过单片机控制D/A,输出三种波形。

此方案输出的波形不够稳定,抗干扰能力弱,不易调节。

方案二:利用MAX038芯片组成的电路输出波形。

MAX038是精密高频波形产生电路,无法实现阶梯波和递增递减锯齿波的产生,所以舍弃此方案。

方案三:用VHDL语言编写程序,调试成功后下载至实验装置的芯片上,再利用外接D/A转换电路(TLC7528)实现以上设计功能。

此种方案完全可以生成设计要求的6种波形,而且通过软件仿真可以直观的观测的输出的波形参数,方便调试和更改波形参数,外围电路简单,减少器件损耗,精度高。

因此在本次设计中我们选择了VHDL。

3.2 波形输入输出控制方式的选择方案一:控制多路D/A开关输出方式此种方案为每一路输出的波形函数使用一路D/A转换后输出,通过控制开关控制每一路D/A是否工作,决定输出的波形。

此种方案可以同时输出多路波形,但是需要路D/A转化器,外围电路复杂,制作成本较高而且控制复杂。

方案二:采用数据选择器方式此种方案可以利用VHDL语言写出数据选择器,然后每种函数发生器的输出和数据选择器输入相连接,通过控制开关选择对应的波形输出。

方案二完全可以得到方案一的设计要求,而且只需一个D/A转换器就可以。

电路不需要外部搭建,节约成本且控制简单方便。

基于方案二的设计简便、节约制作元件和成本、控制简便等优点,选择方案二作为波形函数输出控制方式。

四、各模块设计及仿真经过功能分析,将系统分为两大模块,分别为函数发生模块和调控模块。

函数发生模块包括:正弦波模块、三角波模块、方波模块、阶梯波模块、递增或递减锯齿波模块;调控模块包括:选频模块、调幅模块、输入控制模块以及输出控制模块。

4.1函数发生模块4.1.1 正弦波模块正弦波sin的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,D_OUT[7..0]为八位二进制输出端口。

SIN_ROM正弦波函数发生模块框图如下图所示:图3 正弦波函数发生模块框图正弦波可用两种方法,即计算法和查表法产生。

计算法要用浮点运算,复杂且耗时太长,一般不采用。

查表法是事先将正弦波的数据计算出来,列表放在程序中,运行时直接调取数据。

用公式y=127.5+127.5sin(360n/m)可计算出正弦波的输出值,公式中的m为输出点数,n=1,2,…m。

m值取小一些可以提高波形频率,但波形畸变会增大,增加输出点虽然可以改善波形,但输出频率会降低,实践表明,m取64时,可以得到很好的正弦波。

BEGINIF RESET='1'THEND_OUT<=0;ELSIF CLK'EVENT AND CLK='1'THENIF TMP=63 THENTMP:=0;ELSETMP:=TMP+1;END IF;正弦波函数波形仿真图如下图所示:图4 正弦波函数波形仿真图如图所示,复位信号为高电平时,输出清零,否则正常输出,但幅度未从0-255,原因是考虑到示波器基准电平的问题,人为的提高最低电平到50. 4.1.2 方波模块方波的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,Q_OUT[7..0]为八位二进制输出端口。

方波波函数发生模块框图如下图所示:图5 方波函数发生模块框图方波只有两个值,可以采用两个极端值0和FFH。

根据输出标志A的数值输出对应的数值,当A=0输出0,也即是方波周期中的低电平,当A=1,输出255,也即是方波周期中的高电平。

连续的输出便成了观测到的方波波形。

其VHDL描述如下:IF (RESET='1') THENA<='0';ELSIF CLK'EVENT AND CLK='1' THENIF (TMP="1111")THENTMP:="0000";ELSETMP:=TMP+1;END IF;IF (TMP<="1000")THENA<='1';ELSEA<='0';END IF;END IF;END PROCESS;PROCESS(CLK,A)BEGINIF CLK'EVENT AND CLK='1' THENIF A='1'THENQ<="11111111";ELSEQ<="00000000";END IF;END IF;方波函数波形仿真图:图6 方波函数波形仿真图如图所示,复位信号为高电平时,输出清零,否则正常输出。

4.1.3 递增锯齿波模块递增锯齿波的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,Q_OUT[7..0]为八位二进制输出端口。

递增锯齿波函数发生模块框图如下图所示:图 7 递增锯齿波函数发生模块框图程序设计的当复位信号为1时,输出为0,无对应的波形产生。

当复位信号为0时,每当检测到时钟上升沿时,计数器值加1,当增加到最大后清零。

计数值增加呈现线性关系,因此输出的波形是递增的斜波。

从仿真波形图也能看出这种变化规律。

VHDL描述为:IF TMP="11111111" THENTMP:="00000000";ELSETMP:=TMP+1;END IF;END IF;递增锯齿波函数波形仿真图如下图所示:图 8 递增锯齿波函数波形仿真图4.1.4 递减锯齿波模块递减锯齿波的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,Q_OUT[7..0]为八位二进制输出端口。

递减锯齿波函数发生模块框图如下图所示:图 9 递减锯齿波函数发生模块框图程序设计的是复位信号为0时输出为0,无对应的波形产生。

当复位信号为1时,当每当检测到时钟上升沿时,计数值减1,当减到0后赋值到最大。

计数值减少呈现线性关系,因此输出的波形是递减的锯齿波。

从仿真波形图也能看出这种变化规律。

VHDL描述为:IF RESET='1' THENTMP:="11111111";ELSIF CLK'EVENT AND CLK='1' THENIF TMP="00000000" THENTMP:="11111111";ELSETMP:=TMP-1; --阶梯为1,递减信号的变化END IF;END IF;递减锯齿波函数波形仿真图如下图所示:图10 递减锯齿波函数波形仿真图4.1.5 阶梯波模块阶梯波的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,Q_OUT[7..0]为八位二进制输出端口。

阶梯波函数发生模块框图如下图所示:图 11 阶梯波函数发生模块框图阶梯波设计的是数据的递增是以一定的阶梯常数向上增加,所以输出的波形呈现是成阶梯状的,而不是,完全呈现是直线增长。

从仿真波形图也能看出这种变化规律。

VHDL描述如下:IF RESET='1' THENTMP:="00000000";ELSIF CLK'EVENT AND CLK='1' THENIF TMP="11111111"THENTMP:="10000000";ELSETMP:=TMP+16;END IF;END IF;阶梯波函数波形仿真图如下图所示:图 12 阶梯波函数波形仿真图如图所示,复位信号为高电平时,输出清零,否则正常输出。

4.1.6 三角波模块三角波的VHDL程序如附录所示,其中CLK是输入时钟端口,RESET为输入复位端口,Q_OUT[7..0]为八位二进制输出端口。

三角波函数发生模块框图如下图所示:图 13 三角波函数发生模块框图程序设计的是reset复位信号为0时输出为0,无对应的波形产生。

相关文档
最新文档