当前位置:文档之家› 第2节 正弦发生器模块的设计

第2节 正弦发生器模块的设计

第2节 正弦发生器模块的设计
第2节 正弦发生器模块的设计

SinCtrl Altera DSP Builder Product SignalTap II

通过本例的学习可以掌握DSP Builder的使用方法。这个简单的正弦波发生器,主要由4

部分构成:IncCount是阶梯信号发生模块,产生一个按时钟线性递增的地址信号,送往SinLUT。SinLUT是一个正弦函数值的查找表模块,由递增的地址获得正弦波的离散值输出。由SinLUT输出的8位正弦波数据经过一个延时模块Delay后,送往Product乘法模块,与SinCtrl相乘,SinCtrl是一位输入,SinCtrl通过Product完成对正弦波输出有无的控制。SinOut是整个正弦波发生器模块的输出,送往D/A即可获得正弦波模拟输出信号。

5.2.1 建立设计模型

(1)运行Matlab,Matlab的主窗口被分成3部分:Command Window、

Workspace/Current Directory、Command History。

(2)建立工作目录。在建立一个新的设计模型前,先要建立一个文件夹,作为工作目录,来保存相应的设计文件,在进行设计之前要先切换到该文件夹下。新建和切换到工作目录

可以在命令窗口中使用Matlab 命令,也可以在Current Directory窗口中实现。

(3)启动Simulink,建立模型。

在命令窗口中,键入Simulink,按回车键,启动Matlab图形化仿真工具Simulink,出现了Simulink Library Browser窗口,在窗口的左侧为Simulink Library 列表,右侧窗口显示的

则是,被选中的库中的组件、子模块列表。安装完DSP Builder之后,在Simulink 库列表

中可以看到Altera DSP Builder的库出现在列表中。在下面设计中,主要使用该库中的组件、模块来完成各项设计,再使用Simulink库来完成模型的仿真和验证。

选择File菜单,然后单击new,在弹出的子菜单中选择Model,出现了一个未命名的模型

窗口。

(4)放置 SignalCompiler。单击Simulink库列表中的Altera DSP ,单击Altlab项,使之

展开。选中右侧窗口中的SignalCompiler组件,按住鼠标左键拖放到新模型窗口中。也可

以单击右键,选择Add to …untitled?,这里?untitled?是指我们新建的未命名的模型文件。

在选中SignalCompiler模块后,在Simulink窗口中的提示栏里会显示对应模块的说明,简

单的功能介绍。可以看到SignalCompiler的介绍为“Converts Model Files to VHDL files.”

即为进行模型文件mdl到VHDL文件的转换,所以SignalCompiler是进行任何DSP系统设

计必须要添加的模块。选中SignalCompiler选中Help for the …SignalCompiler? block。可以了解怎样使用SignalCompiler的具体信息。也可以按照此方法获得其它的模块相应的帮助信息。

(5)添加Increment Decrement模块。Increment Decrement模块是DSP Builder库中Arithmetic子库中的模块。选中Altera DSP Builder中的Arithmetic子库,然后在其中选择Increment Decrement模块。然后按照添加SignalCompiler的方法将Increment Decrement添加到模型文件中。

(7)添加正弦查找表。在Altera DSP Builder库的Gate &Control子库中找到查找表模块LUT,把LUT拖放到新建模型窗口,将LUT模块的名字修改为“SinLUT”。

双击SInLUT模块,打开模块参数设置对话框“Block Parameters:SinLUT”。把输出位宽设为8;查找表地址设为6;总线数据类型Bus Type选择为有符号整数 Signed Integer;在Matlab Array编辑框中输入计算查找表内容的计算式。在这里使用sin函数,sin函数的调用格式为:

sin([起始值:步进值:结束值])

SinLUT是一个输入地址为6位,输出值位宽为8位的正弦查找表模块,且输入地址总线为有符号数,所以设置起始值为0,结束值为2π,步进值为,计算式可写成:

127*sin([0:2*pi/2^6:2*pi])

其中pi就是常数π,这是Matlab中的语法。上式的数值变化范围是-127~+127,恰好是8

位二进制数可以表示的最大值,所以8位的输出值位宽可以表示上式所描述的正弦波形。

如果将SinLUT模块的总线数据类型设置为无符号整数Unsigned Integer,且输出位宽改为10,若想得到完成满度的波形输出,应将表达式改为:

511*sin([0:2*pi/2^6:2*pi])+512

选中”Use LPM”(LPM: Library of Parameterized Modules 参数化模块),如果选中”Use LPM”的话,Quartus II 将利用目标器件中的嵌入式RAM来构成SinLUT,即将生成的正弦

波数据放在嵌入式RAM构成的ROM中,这样可以节省大量的逻辑资源,否则SinLUT只

能用芯片中的LCs来构成。

选中”Register Address”,选中此选项会生成输入地址总线,如果目标器件是Straitix或者Cyclone,并且选中了LPM选项,用户必须选中”Register Address”选项。

(8)添加Delay模块。在Altera DSP Builder库中,选中Storage子库下的Delay模块,

拖放到新建模型窗口。Delay模块可以实现延时的功能,在这里可以使用其默认参数设置。

在Delay模块的参数设置的对话框中,参数Depth是描述信号延时深度的参数。当Depth

为1,模块传输函数为1/Z,通过Delay模块的信号被延时一个时钟周期;当Depth为整

数n时,其传输函数为1/Zn,通过Delay模块的信号将被延时n个时钟周期。Delay模

块在硬件上采用寄存器来实现,所以Delay模块被放在Storage子库中。

Clock Phase Selection 参数主要是控制采样的。当设置为1表示Delay模块总处于使能状态,所用的数据都通过Delay模块。如果设置为10则每隔一个脉冲处于使能状态,那么每隔一个的数据才能通过Delay模块。如设置为0100,表示Delay模块在每4个时钟中第二

个时钟是处于使能,那么每4个数据只有第二个数据可以通过。

(9)添加断口SinCtrl。在Altera DSP Builder库中选择IO & BUS子库,找到AltBus模块,拖放到新建模型窗口中。修改AltBus模块的名字为SinCtrl。SinCtrl是一个1位输入端口。双击SinCtrl模块,打开模块参数设置对话窗口。设置SInCtrl的Bus Type为”Single Bit”,Node Type参数为”Input Port”。

(10)添加Product(乘法)模块。在Altera DSP Builder库中选择Arithmetic子库,找到Product模块。

将之拖放到新建模型窗口中去,这里Product有两个输入一个是经过Delay的SinLUT输出,另一个是一位端口SinCtrl,Product实现了SinCtrl对SinLUT查找表输出的控制。双击Product模块,打开Product模块参数设置对话框。其中Pipeline(流水线)参数指定该乘

法器模块使用几级流水线,即乘积延时几个时钟周期后输出,选中”Use LPM”,表示使用

参数化的模块库来实现,选择”Use Dedicated Circuitry”表示可以使用FPGA中的专用模块

来实现.

(11) 添加输出端口Out。在Altera DSP Builder库中,选择IO & BUS子库,找到AltBus模块,拖放到信件模型窗口中,修改AltBus模块的名字为Out。

Out是一个8位输出端口,接到FPGA的输出引脚,与片外的8位D/A转换器相接,D/A 转换模块将数字信号转化成模拟信号。双击Out模块,打开参数设置对话框,设置Out的Bus Type为”Signed Integer”, Node Type参数为”Output Port”,然后单击Apply,然后修改”Number of bits”为8。。

Saturate选项如果被选中,则当输出大于要表达的值的最大正值或负值,则输出被强制为最大的正值或负值。若此选项未被选中,则最高位MSB被截断。此选项对输入端口和常数节点类型是无效的。

(12)保存设计文件。放置完Out模块,把新建模型中的DSP Builder模块连接起来,这样就完成了一个正弦波发生器的DSP Builder模型设计。在进行仿真验证和SignalCompiler 编译之前,先把设计保存起来。单击File菜单,选择Save操作,取名并保存。本例中,新建模型取名Sinout,生成模型文件Sinout.mdl。

模型保存之后,先要对模型进行仿真验证,如通过验证,则使用SignalCompiler进行编译将mdl文件转换为VHDL文件。

5.2.2 Simulink模型仿真

Matlab的Simulink环境具有强大的图形化仿真验证的功能。用DSP Builder模块设计好的模型,可以在simulink中进行算法级、系统级仿真验证。对一个模型进行仿真需要施加合适的激励,在特定的观察点添加必须的观察模块。

1. 加入Step模块

本例中,先加入一个step(阶跃模块),来实现模拟SinCtrl的按键使能操作。在simulink

的simulink基本库中,选择Source子库,把其中的Step模块拖放到Sinout模型窗口中去,并将其与SinCtrl的输入端口相连。

注意:凡是来自Altera DSP Builder库以外的模块,SignalCompiler都不能将其转换成硬件

描述语言的模块。

2. 添加波形观察模块

在Simulink中选择Simulink库,展开Simulink库,选中其中的Sinks子库,把Scope(示

波器)模块拖放到SinOut模型窗口中去。双击该模块,打开的是一个Scope窗口。如图

5-11所示,图中只有一个信号的波形观察窗口,若希望可以多观察记录信号,可以通过添

加多个Scope模块的方法来实现,也可以通过修改Scope的参数来实现Scope模块中的观

察窗口数。

3. Scope模块参数设置

用鼠标单击Scope模块窗口上侧工具栏的第二个按钮:Parameters,弹出参数设置对话框,以进行参数设置。

在Scope参数设置对话框中有两个设置页:General和Data History。在General页中,改

变Number of axes为2。在单击OK按钮后,可以看到Scope窗口出现了两个波形观察窗。每个观察窗可以独立地观察信号波形。同时Scope模块也多了一个输入端,将SinCtrl的信号接到这一新增的输入端,作为参考信号。

4. 设置仿真激励

先设置模型的仿真激励。在SinOut模型中,只有一个输入端口SinCtrl,需要设置与之相连的Step模块。双击Step模块,在弹出的Step模块参数设置对话框中设置对其输入端口SinCtrl施加的激励。

各参数值的含义如下:

阶跃时刻(Step time):Step模块的输出在该时刻发生阶跃,默认值为1,单位为秒。

初始值(Initial value):在阶跃时刻的之前的Step模块的输出值,默认值为0。

终值(Final value):在阶跃时刻之后Step模块的输出值,默认值为1。

采样时刻(Sample time):Step模块输出的采样频率。

设置Step time为30,则在30秒时该模块会发生输出值的阶跃。初始值设为0,那么在

30秒时刻之前,不输出正弦波;终值设为1。Sample time设为0,设为0的话,在大的

和小的时间间隔都进行采样,设成0的模块被称作连续采样;设成1的话,则只在大的时

间间隔上采样。选中底部的两项选择:“Interpret vector p arameters as 1-D” 和“Enable zerocrossing detection”

在SInOut模型窗口中,单击Simulation菜单,在下拉菜单中选择Simulation parameters。将弹出SinOut模型的仿真参数设置对话框:”Configuration Parameters:

SinOut/configuration”。

仿真参数设置对话框共有7个选项页:Solver、Data Import/Export、Optimization、Diagnostics、Hardware Implementation、Model Referencing、Real-Time Workshop。其中”Solver” 页中完成仿真时的基本时间设置、计算器和解算器(solver)的步进方式及输出选项等设置。

5. 启动仿真

在SinOut模型窗口中,选恶Simulation菜单下的Start项,开始仿真。仿真结束后,双击Scope模块,打开Scope观察窗。出现如图5-15所示的仿真结果。可以看到SinOut受到

了SinCtrl的控制。

6. 设计成无符号数据输出

由示波器的波形可以看到,输出的正弦波是有符号的数据,在 127间变化,但一般的D/A

器件的输入数据都是无符号的正数。因此为了能在硬件系统上D/A的输出也能观察到此波形,必须对此输出做一些改进,以便输出无符号数。最简单的方法就是将输出波形向上平

移127即可,SinLut的Bus Type设置为”Unsigned Integer”,SinLut的波形数据公式改为:127*sin([0:2*pi/(2^6):2*pi])+128。然后将输出端口Out的Bus Type改为”Unsigned integer”类型。修改完成之后,进行仿真,可以看到输出的波形都在0以上。

5.2.3 使用SignalCompiler进行从算法到硬件实现

在Matlab中完成仿真验证后,就要把设计转换到硬件上加以实现。通过DSP Builder可以

获得针对特定FPGA芯片的HDL代码。

1. 分析模型

双击SinOut模型中的”SignalCompiler”图标启动DSP Builder,出现如下的窗口:

单击”Analyze”按钮,SignalCompiler将会对模型进行分析,检查模型有无错误。如果设计

存在错误,将会停止分析过程,并在Matlab软件的命令窗口中给出相关信息。如果设计不

存在错误,则在分析结束后打开”SignalCompiler”窗口。Simulink具有强大的错误定位能力,对许多错误可以在simulink模型中直接定位,用不同的颜色来标示有错误的模块。如果SignalCompiler分析当前的DSP模型有错误时,必须修改正确才能继续下面的设计流程。

2. 设置SignalCompiler

在SignalCompiler窗口中,要进行一些必要的设置。SignalCompiler窗口大致上可以分为3个功能部分:

左上为项目设置选项——Project Setting Options;

右上为硬件的编译流程——Hardware Compilation;

下方为信息框——Messages。

SingalCompiler的设置集中在项目设置选项部分。

在Device下拉选择框中选择目标器件的系列。这里只能选择器件的系列,不能指定具体的器件型号,这需要由Quartus II自动决定使用该器件系列中的某一个具体型号的器件,或在手动流程中由用户指定。

在Synthesis(综合)下拉选择框中,可以选择综合器,共有3个选项:

Mentor的LeonardoSpectrum综合器;

Synplicity的Synplify综合器;

Altera的Quartus II,Quartus II是FPGA/CPLD的集成开发环境,其内含综合功能。

在Optimization(优化)下拉选择框,指明在综合、适配过程中的优化策略,是优先对面积(Area)优化还是速度优化(Speed)的选择,即资源占用优先还是性能优先。

项目设置选项部分的下部是一些选项页,包括下面的内容:

Main Clock:系统主时钟的周期的设置;

Reset:系统复位信号的设置;

Signal Tap II:嵌入式逻辑分析仪的设置;

Testbench:仿真测试文件生成的选择;

SOPC info: SOPC相关设置。

Main Clock的缺省值为20ns,即对应50MHz的频率。如果要使用第三方的仿真软件(如ModelSim)则在Testbench页中,选中”Generate Stimuli for VHDL Testbench.”,生成第三方VHDL仿真软件的激励测试文件。如若不然不要选择此选项,选择此选项的话,

simulink运行会比没选中此选项的情况下慢很多。

3. 把模型文件Mdl转化成VHDL文件

完成上面的设置之后,信息窗口会提示用户进行Mdl文件到VHDL文件的转换操作。

点击 1. Convert MDL to VHDL的图标,执行mdl模型文件到VHDL文件的转换。转换完成后,Message框中会出现如下的提示

> Generated top level file …Sinout.vhd?

> Completed MDL to VHDL conversion

> See …Sinout_DspBuilder_Report.html? report file for additional information

以上提示说明了:产生了Sinout.vhd的顶层文件,完成了mdl文件到VHDL文件的转换,更多的信息,参看Sinout_DspBuilder_Report.htm文件,点击Report File按钮即可。

4. 综合

单击步骤2的图标,执行综合过程,这里选择的综合工具是Quartus II,综合后生成Atom Netlist(网表)文件,以供第三步适配过程使用。综合过程完成之后,信息框中会给出此项目的一些信息:如器件的系列,使用的逻辑宏单元的数目、触发器的数目、引脚数、RAM容量等。详细的信息也是参照上面提到的项目报告文件。

5. Quartus II适配

单击步骤3的图标,调用Quartus II完成编译适配过程,生成编程文件:pof文件和sof文件。

单击Report按钮,查看详细的报告信息。以上的三个步骤可以分开单步执行,也可以点

击?execute steps 1,2 and 3”,一步执行。

6. 编程

完成了以上三步操作之后,program device的图标由不可用编程可用(由灰变亮),连接好硬件便可以进行下载了。但在下在之前,还要做一些必要的仿真和测试:使用ModelSim 进行RTL级仿真,使用Quartus II 进行时序仿真,进行硬件测试等。

5.2.4 使用ModelSim进行RTL级仿真

在Simulink中已经对模型进行过仿真验证,但是是属于系统级的验证,并没有对生成的VHDL代码进行过仿真。事实上,由Mdl文件转化而来的VHDL描述是RTL级的,而在simulink中的模型仿真是算法级的,转换后的代码实现可能与mdl模型描述的情况不完全相符。这就需要针对生成的RTL级VHDL代码进行功能仿真。

当在SignalCompiler设置窗口中的Testbench页中选中”Generate Stimuli for VHDL Testbench”,DSPBuilder在mdl转换到VHDL的过程中会生成对HDL仿真器ModelSim的测试文件。

ModelSim是Mentor Graphics的子公司Model Technology的产品,ModelSim是业界最优秀的HDL语言仿真器,具有快速的仿真性能和最先进的调试能力,支持众多的ASIC和FPGA厂家库,是作FPGA、ASIC设计的RTL级和门级电路仿真的首选。是唯一的单内核支持VHDL和Verilog混合仿真的仿真器,全面支持VHDL和Verilog语言的IEEE 标准,以及IEEE VITAL 1076.4-95 标准,支持C语言功能调用,支持 C模型、基于SWIFT的

SmartModel逻辑模型和硬件模型的仿真。它具有丰富而又易用的图形用户界面,提供最友好的调试环境,为加快调试提供强有力的手段。

仿真方法:

启动ModelSim软件,选择Tools菜单下的Execute Macro…,在打开的文件选择对话框中切换到SinOut模型SinOut.mdl文件所在的目录,选择tb_SinOut.tcl,ModelSim执行

tb_SinOut.tcl,开启仿真,随后会自动打开wave窗口,显示仿真结果。

但是显示的结果是以数字形式显示的,与simulink中的仿真结果没有可比性。为了能够进行对比,要改变输出波形的显示方式。选中”tb_sinout/outu”,单击右键,在弹出菜单中选择properties…,出现wave properties窗口,缺省显示的View页面。

在对话框中将Radix项的内容设为”Unsigned”。然后点击Format页,在Format页中将Format设成 Analog,Height设成100,Scale设成0.4,然后点击OK。

5.2.5 使用Quartus II 进行时序仿真

ModelSim软件只能实现对设计电路的功能仿真,其仿真结果没有反映电路的硬件的真实情况。为了使我们的设计与真实的电路更加接近,进行设计的时序仿真是非常必要的。SignalCompiler已经生成了用于quartus II进行时序仿真的激励文件sinout.vec和相关仿真文件,如sinout_quartus.tcl,可以很容易地在quartus II中实现时序仿真,在quartus II 进行时序仿真的步骤如下:

启动quartus II集成开发环境,执行File菜单的Open Project…的操作,在弹出的Open Project的对话框中,选择Sinout模型所在的目录,打开该目录,打开DSP Builder为Quartus II建立的设计项目——Sinout,并在项目中打开VHDL顶层设计文件sinout.vhd。在SignalCompiler中的编译过程中,我们已经指定了器件为Cyclone II系列了,但是在Quartus II中进行时序仿真时,需要指定器件的具体型号。执行Assignments菜单的Device…命令,为本设计选择目标芯片EP2C35F672C8。然后执行Processing菜单的Start Compilation命令对sinout.vhd顶层文件进行编译。

编译结束后,执行Processing菜单的Start Simulation命令,启动时序仿真。在仿真过程结束之后,出现quartus II 仿真波形界面,显示仿真结果。

通过观察仿真波形来检查设计的工程是否满足时序要求。也可以运行TimeQuest Timing Analyzer,生成时序分析报告,来获取时序仿真的数据。

5.2.6 硬件实现与测试

经过RTL级和时序仿真之后,还要将设计下载到芯片中进行实现和测试。

进行硬件测试时,需要使用开发平台上的DAC器件将正弦波信号发生器所输出的数字信号转换为模拟信号,然后将模拟信号接到示波器上。要使用DAC器件,需要将平台上的拨码开关的MODUL_SEL1设置成“ON”状态,将MODUL_SEL2和MODUL_SEL3设置成“OFF”状态。

开发平台上的DAC模块由一个并行8位DAC器件和一个并行DAC电压基准源组成,并行8位DAC器件采用Analog Device 公司的AD7302芯片,工作电压为2.7伏到5.5伏,功耗小适合于电池驱动应用,具有高速寄存器和双缓冲接口逻辑以及可与并行微处理器和DSP兼容的接口,

将产生的8位数据连接到并行ADC的输入管脚,再给三个功能选择管脚相应的输入信号,使得DAC能够正常工作。

三个功能管脚为ā/B、WR和CS。ā/B——通道选择信号,低电平选择A通道,高电平选择B通道;——写信号,低电平有效;——片选信号,低电平有效。

根据AD7302芯片的工作原理,需要在sinout.vhd文件中加入三个输出引脚,并且进行赋值。

在端口说明中加入如下的语句:

dac_ab : out std_logic;

dac_wr : out std_logic;

dac_cs : out_std_logic;

在结构体中加入如下的语句:

dac_ab <=?0?; 选择A通道

dac_wr <=?0?;

dac_cs <=?0?;

接下来进行引脚所定,如下表所示:

引脚锁定之后进行工程的编译,编译成功可以将设计下载到目标器件中去。此时在D/A输

出通道可以用示波器观察到数字信号转换成的模拟信号波形。

5.2.7 使用嵌入式逻辑分析仪SignalTap II进行测试

只进行工程的软件仿真远远不够,必须还要进行硬件仿真,使用传统的硬件方法进行测试

会有如下的一些缺点:

缺少空余I/O引脚。设计中器件的选择依据设计规模而定,通常所选器件的I/O引脚数目

和设计的需求是恰好匹配的。

I/O引脚难以引出。设计者为减小电路板的面积,大都采用细间距工艺技术,在不改变PCB板布线的情况下引出I/O引脚非常困难。

接逻辑分析仪有改变FPGA设计中信号原来状态的可能,因此难以保证信号的正确性。

传统的逻辑分析仪价格昂贵,将会加重设计方的经济负担。

针对传统硬件测试的局限,Altera公司和Xilinx公司分别推出了基于JTAG的内部逻辑分析仪,Altera公司的嵌入式逻辑分析仪为SignalTap。嵌入式逻辑分析仪可以随设计文件一起

下载到目标芯片中,通过JTAG引脚捕捉目标芯片内部设计者感兴趣的信号节点处的信息,而又不影响系统的正常工作。嵌入式逻辑分析仪将测得的信号样本暂存与目标器件中的嵌

入式RAM中,然后通过器件的JTAG端口或ByteBlaster下载线将采得的信息传给计算机

进行分析。

嵌入式逻辑分析仪SignalTap II允许对设计中的所有层次的模块的信号节点进行测试,可

以使用多时钟驱动。SignalTap II具有可以灵活配置的特点,下面会介绍到。嵌入式逻辑

分析仪的三项主要优点:

它们的使用不增加引脚。可通过FPGA 上已有的专门JTAG引脚访问,即使没有其它可用

引脚,这种调试方法也能得到内部可视能力。

简单的探测。探测包括把结点路由到内部逻辑分析仪的输入,不需要担心为得到有效信息,应如何连接到电路板上,也不存在信号完整性问题。

内核是便宜的。FPGA厂商把他们的业务模型建立于用芯片所获取价值的基础上,所以所

用的调试IP 通常能以低于$1,000美元的价格获得。

但是,从嵌入式的逻辑分析仪的工作原理可以看出,嵌入式逻辑分析仪也有一些缺点:

内核的尺寸限制了FPGA中逻辑资源的利用。此外由于波形数据占用FPGA内部存储器,

使信号采样的数据量有限。

设计工程师必须放弃把内部存储器用于调试,存储器的利用取决于系统的设计。

内部逻辑分析仪只工作于状态模式。它们捕获的数据与规定的时钟同步,而不能提供信号

定时关系。

这里应用嵌入式逻辑分析仪对正弦波发生器进行测试,同时也可以掌握SignalTap II的基

本使用方。在使用SignalTap II进行测试之前应该现对工程sinout进行引脚分配,引脚少

了硬件测试用的DAC模块的引脚。

引脚分配使用的方法见第二章,引脚分配完毕后,进行工程的编译,编译结束后就可以进

行SignalTap II的设置了。

使用SignalTap II嵌入式逻辑分析仪进行测试的步骤如下:

(1)打开SignalCompiler转换成的sinout.qpf,选择file菜单,点击new,出现new窗口,在其中选择other files页,选择SignalTap II file,出现SignalTap II编辑窗口。

能产生方波,三角波,正弦波地信号发生器(用741)

模拟电子技术 ——课程设计报告 题目:信号发生器 专业: 班级: 学号: : 日期: 指导老师: 目录(信号发生器) 1 信号发生器的总方案及原理框图 1.1 电路设计原理框图 1.2 电路设计方案设计

2 设计的目的及任务 2.1 课程设计的目的 2.2 课程设计的任务与要求 2.3 课程设计的技术指标 3 各部分电路设计 3.1 正弦波产生电路的工作原理 3.2 正弦波——方波发生电路的工作原理3.3 方波——三角波转换电路的工作原理3.4 电路的参数选择与计算 3.5 总电路图 4 电路的仿真 4.1 正弦波发生电路仿真 4.2 方波——三角波发生电路的仿真 5 电路的安装与调试 5.1 正弦波发生电路的安装与调试 5.2 正弦波——方波的安装与调试 5.3 方波——三角波的安装与调试 5.4 总电路的安装与调试 5.5 电路安装与调试中遇到的问题及分析解决方法 6 电路的实验结果 6.1 正弦波发生电路的实验结果

6.2 正弦波——方波转换电路的实验结果6.3 方波——三角波转换电路的实验结果 6.4 实测电路误差分析及改进方法 7 实验总结 1 信号发生器的总方案及原理框图 1.1 电路设计原理框图 电路设计原理框图如图1所示。 三角波

图1 电路设计原理框图 1.2 电路设计方案设计 1、采用RC串并联网络构成的RC桥式振荡电路产生正弦波。 2、将第一级送出的正弦波经过第二级的滞回电压比较器输出方波。 3、将第二级的方波通过第三级的积分器输出三角波。 4、电路完成。 2 设计的目的及任务 2.1 课程设计的目的 1、学习用集成运放构成正弦波、方波、三角波发生器。 2、学习波形发生器的调整和主要性能指标的测试方法。

正弦信号发生器的设计

XXXX大学现代科技学院DSP硬件电路设计基础课程设计 设计名称正弦信号发生器的设计 专业班级 学号 姓名DENG 指导教师XXXX

课程设计任务书 注: 上交(大张图纸不必装订) 2.可根据实际内容需要续表,但应保持原格式不变。 日期:2014-12-10

专业班级 XXXXXXX 学号 姓名 DENG 成绩 设计题目 正弦波信号发生器 设计目的 学会使用CCS(Code Composer Studio)集成开发环境软件,在此集成开发环境下完成工程项目创建,程序编写,编译,链接,调试以及数据的分析。同时完成一个正弦波信号发生器的程序的编写,并在集成开发环境下进行模拟运行,观察结果。 设计内容 编写一个产生正弦波信号的程序,在CCS 软件下进行模拟运行,观察输出结果。 设计原理 正弦波信号发生器已被广泛地应用于通信、仪器仪表和工业控制等领域的信号处理系统中。通常有两种方法可以产生正弦波,分别为查表法和泰勒级数展开法。查表法是通过查表的方式来实现正弦波,主要用于对精度要求不很高的场合。泰勒级数展开法是根据泰勒展开式进行计算来实现正弦信号,它能精确地计算出一个角度的正弦和余弦值,且只需要较小的存储空间。本次课程设计只要使用泰勒级数展开法来实现正弦波信号。 1. 产生正弦波的算法 在高等数学中,正弦函数和余弦函数可以展开成泰勒级数,其表达式为 若要计算一个角度x 的正弦和余弦值,可取泰勒级数的前5项进行近似计算。 ……………………………………装………………………………………订…………………………………………线………………………………………

由上述两个式子可以推导出递推公式,即 sin(nx)=2cos(x)sin[(n-1)x]-sin[(n-2)x] cos(nx)=2cos(x)sin[(n-1)x]-cos[(n-2)x] 由递推公式可以看出,在计算正弦和余弦值时,不仅需要已知cos(x),而且还需要sin[(n-1)x]、sin[(n-2)x]和cos[(n-2)x]。 2. 正弦波的实现 ⑴计算一个角度的正弦值 利用泰勒级数的展开式,可计算一个角度x的正弦值,并采用子程序的调用方式。在调用前先在数据存储器d_xs单元中存放x的弧度值,计算结果存放在d_sinx单元中。 ⑵计算一个角度的余弦值 利用余弦函数展开的泰勒级数的前五项计算一个角度的余弦值,可采用子程序的调用方式来实现。调用前先将x弧度值放在数据存储器d_xc单元中,计算结果存放在d_cosx单元中。 ⑶正弦波的实现 利用计算一个角度的正弦值和余弦值程序可实现正弦波。其实现步骤如下:第一步:利用sin_start和cos_start 子程序,计算 45°~0°(间隔为 0.5°)的正弦和余弦值; 第二步:利用sin(2x)=2sin(x)cos(x)公式,计算 90°~0°的正弦值(间隔为1°);第三步:通过复制,获得359°~0°的正弦值; 第四步:将359°~0°的正弦值重复从PA口输出,便可得到正弦波。 在实际应用中,正弦波是通过D/A口输出的。选择每个正弦周期中的样点数、改变每个样点之间的延迟,就能够产生不同频率的波形,也可以利用软件改变波形的幅度以及起始相位。 总体方案设计 1. 总体实现方案 我们知道一个角度为x的正弦和余弦函数,都可以展开为泰勒级数,且其前五项可以看为:

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

课程设计说明书 课程设计名称:电子课程设计 课程设计题目:设计制作一个产生方波-三角波-正弦波函数转换器学院名称:信息工程学院 专业:电子信息科学与技术班级: xxxxxxxx 学号: xxxxxxx 姓名: xxxxx 评分:教师: xxxxxx 20 13 年 10 月 15 日

电子课程设计 课程设计任务书 20 13 -20 14 学年 第 1 学期 第 1 周- 3 周 注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份备查。 2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档。

摘要 当今世界在以电子信息技术为前提下推动了社会跨越式的进步,科学技术的飞速发展日新月异带动了各国生产力的大规模提高。由此可见科技已成为各国竞争的核心,尤其是电子通信方面更显得尤为重要,在国民生产各部门都得到了广泛的应用,而各种仪器在科技的作用性也非常重要,如信号发生器、单片机、集成电路等。 信号发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和 教学实验等领域。常用超低频信号发生器的输出只有几种固定的波形,有方波、 三角波、正弦波、锯齿波等,不能更改信号发生器作为一种常见的应用电子仪器 设备,传统的可以完全由硬件电路搭接而成,如采用LM324振荡电路发生正弦波、 三角波和方波的电路便是可取的路径之一,不用依靠单片机。 本系统本课题将介绍由LM324集成电路组成的方波——三角波——正弦波 函数信号发生器的设计方法,了解多功能函数信号发生器的功能及特点,进一步 掌握波形参数的测试方法,制作这种低频的函数信号发生器成本较低,适合学生 学习电子技术测量使用。制作时只需要个别的外部元件就能产生正弦波、三角波、 方波等脉冲信号。输出波形的频率和占空比还可以由电流或电阻控制。 关键字:信号发生器、波形转换、LM324

正弦波-方波-三角波信号发生器设计要点

苏州科技学院天平学院 模拟电子技术课程设计指导书 课设名称正弦波-方波-三角波信号发生器设计 组长李为学号1232106101 组员谢渊博学号1232106102 组员张翔学号1232106104 专业电子物联网 指导教师 二〇一二年七月 模拟电子技术课程设计指导书

一设计课题名称 正弦波-方波-三角波信号发生器设计 二课程设计目的、要求与技术指标 2.1课程设计目的 (1)巩固所学的相关理论知识; (2)实践所掌握的电子制作技能; (3)会运用EDA工具对所作出的理论设计进行模拟仿真测试,进一步完善理论设计;(4)通过查阅手册和文献资料,熟悉常用电子器件的类型和特性,并掌握合理选用元器件的原则; (5)掌握模拟电路的安装\测量与调试的基本技能,熟悉电子仪器的正确使用方法,能力分析实验中出现的正常或不正常现象(或数据)独立解决调试中所发生的问题; (6)学会撰写课程设计报告; (7)培养实事求是,严谨的工作态度和严肃的工作作风; (8)完成一个实际的电子产品,提高分析问题、解决问题的能力。 2.2课程设计要求 (1)根据技术指标要求及实验室条件设计出电路图,分析工作原理,计算元件参数;(2)列出所有元器件清单; (3)安装调试所设计的电路,达到设计要求; 2.3技术指标 (1)输出波形:方波-三角波-正弦波; (2)频率范围:100HZ~200HZ连续可调;

(3)输出电压:正弦波-方波的输出信号幅值为6V.三角波输出信号幅值为0~2V连续可调; γ。 (4)正弦波失真度:% ≤ 5 三系统知识介绍 3 函数发生器原理 本设计要求产生三种不同的波形分别为正弦波\方波\ 三角波。实现该要求有多种方案。 方案一:首先产生正弦波,然后通过整形电路将正弦波变换成方波,再由积分电路将方波变成三角波。 方案二:首先产生方波——三角波,再将方波变成正弦波或将三角波变成正弦波。 3.1函数发生器的各方案比较 我选的是第一个方案,上述两个方案均可以产生三种波形。方案二的电路过多连接部方便而且这样用了很多元器件,但是方案的在调节的时候比较方便可以很快的调节出波形。方案一电路简洁利于连接可以节省元器件,但是在调节波形的时候会比较费力,由于整个电路时一起的只要调节前面部分就会影响后面的波形。 四电路方案与系统、参数设计 4.1基于集成运算放大器与晶体管差分放大器的函数发生器 4.1.1设计思路 我们组总体设计思路为:先通过比较器产生方波,方波通过积分器产生三角波,三角波通过差分放大器产生正弦波。 函数发生器电路组成框图如下所示

正弦信号发生器2

正弦信号发生器[2005年电子大赛一等奖] 文章来源:凌阳科技教育推广中心 作者:华中科技大学(华中科技大学曹震陈国英孟芳宇)发布时间:2006-4-21 17:33:13 本系统基于直接数字频率合成技术;以凌阳SPCE061A单片机为控制核心;采用宽带运放AD811和AGC技术使得50Ω负载上峰值达到6V±1V;由模拟乘法器AD835产生调幅信号;由数控电位器程控调制度;通过单片机改变频率字实现调频信号,最大频偏可控;通过模拟开关产生ASK、PSK信号。系统的频率范围在100Hz~12MHz,稳定度优于10-5,最小步进为10Hz。 一、方案论证 根据题目要求和本系统的设计思想,系统主要包括图1.1所示的模块。 图1.1 系统模块框图

1、单片机选型 方案一:采用现在比较通用的51系列单片机。51系列单片机的发展已经有比较长的时间,应用比较广泛,各种技术都比较成熟,但此系列单片机是8位机,处理速度不是很快,资源不够充足,而且其最小系统的外围电路都要自己设计和制作,使用起来不是很方便,故不采用。 方案二:选用凌阳公司的SPCE061A单片机。SPCE061A单片机是16位的处理器,主频可以达到49MHz,速度很快,再加上其方便的ADC接口,非常适合对高频信号进行数字调频,如果对音频信号进行A/D采样,经过数字调频并发射,完全可以达到调频广播的效果。 结合题目的要求及SPCE061A单片机的特点,本系统选用凌阳公司的此款单片机。 2、频率合成模块 方案一:锁相环频率合成。如图1.2,锁相环主要由压控LC振荡器,环路滤波器,鉴相器,可编程分频器,晶振构成。且频率稳定度与晶振的稳定度相同,达10-5,集成度高,稳定性好;但是锁相环锁定频率较慢,且有稳态相位误差,故不采用。 图1.2 锁相环的基本原理 方案二: 直接数字频率合成。直接数字频率合成DDFS(Direct Digital Frequency Synthesizer)基于Nyquist定理,将模拟信号采集,量化后存入存储器中,通过寻址查表输出波形数据,再经D/A转

EDA课程设计-正弦信号发生器的设计

《EDA技术》设计报告 设计题目正弦信号发生器的设计 院系:信息工程学院 专业:通信工程____ 学号: 姓名:__________

一.设计任务及要求 1.设计任务: 利用实验箱上的D/A 转换器和示波器设计正弦波发生器,可以在示波器上观察到正弦波 2.设计要求: (1) 用VHDL 编写正弦波扫描驱动电路 (2)设计可以产生正弦波信号的电路 (3)连接实验箱上的D/A 转换器和示波器,观察正弦波波形 二.设计方案 (1)设计能存储数据的ROM 模块,将正弦波的正弦信号数据存储在在ROM 中,通过地址发生器读取,将正弦波信号输入八位D/A 转化器,在示波器上观察波形 (2)用VHDL 编写正弦波信号数据,将正弦波信号输入八位D/A 转化器,在示波器上观察波形 三.设计框图 图 1 设计框图 信号发生器主要由以下几个部分构成:计数器用于对数据进行采样,ROM 用于存储待采样的波形幅度数值,TLV5620用于将采集的到正弦波数字量变为模拟量,最后通过示波器进行测量获得的波形。其中,ROM 设置为7根地址线,8个数据位,8位并行输出。TLV5260为串行输入的D/A 转换芯片,因此要把ROM 中并行输出的数据进行并转串。 四.实现步骤 1.定制ROM 计 数 器 7根地址线 8 位 R O M 并转串输出 CLK TLV5620D/A 转换 RST

ROM的数据位选择为8位,数据数选择128个。利用megawizard plug-in manager定制正弦信号数据ROM宏功能块,并将上面的波形数据加载于此ROM中。如图3所示。 图2 ROM存储的数据 图3 调入ROM初始化数据文件并选择在系统读写功能 2.设计顶层

正弦信号发生器(参考2)

正弦信号发生器 作者:曾立丁运鸿陈亮 赛前辅导及文稿整理辅导教师:肖看 摘要 本系统以51单片机及FPGA为控制核心,由正弦信号发生模块、功率放大模块、调幅(AM)、调频(FM)模块、数字键控(ASK,PSK)模块以及测试信号发生模块组成。采用数控的方法控制DDS芯片AD9851产生5Hz-20MHz正弦信号,经滤波、放大和功放模块放大至6v并具有一定的驱动能力。测试信号发生模块产生的1kHz正弦信号经过调幅(AM)模块、调频(FM)模块,对高频载波进行调幅或调频。二进制基带序列信号送入数字键控模块,产生二进制PSK或ASK 信号,同时对ASK信号进行解调,恢复出原始数字序列。另外,本系统还配备有液晶显示屏、遥控键盘,提供了友好的人机交互界面。 ABSTRACT This system is in the core of Micro-Processor and FPGA (Field Programmable Gate Array), consist of sine signal generating module, Power amplifier, Amplitude Modulator, Frequency Modulator, ASK/PSK module and test signal generating module. The AD9851 controlled by Micro-Process in digital way to generate sine signal with the bandwidth 5Hz to 20MHz adjustable per 1Hz. After processing by LPF & power amplifier, the output signal has a peak value of move than 6V. The sine signal at 1 KHz was send to AM and FM module to modulate the high frequency carrier waveform. The binary sequential was send to the relative module to generate ASK and PSK signal. At last demodulate module demodulate the ASK signal and got the same binary sequential as set before. In order to provide a friendly user interface, the LCD and remote infrared control keyboard was introduced in this system.

正弦波函数信号发生器

电子技术课程设计报告 电子技术课程设计报告——正弦波函数信号发生器的设计 作品40% 报告 20% 答辩 20% 平时 20% 总分 100% 设计题目:班级:班级学号:学生姓名:

目录 一、预备知识 (1) 二、课程设计题目:正弦波函数信号发生器 (2) 三、课程设计目的及基本要求 (2) 四、设计内容提要及说明 (3) 4.1设计内容 (3) 4.2设计说明 (3) 五、原理图及原理 (8) 5.1功能模块电路原理图 (9) 5.2模块工作原理说明 (10) 六、课程设计中涉及的实验仪器和工具 (12) 七、课程设计心得体会 (12) 八、参考文献 (12)

一、预备知识 函数发生器是一种在科研和生产中经常用到的基本波形生产期,现在多功能的信号发生器已经被制作成专用的集成电路,在国内生产的8038单片函数波形发生器,可以产生高精度的正弦波、方波、矩形波、锯齿波等多种信号波,这中产品和国外的lcl8038功能相同。产品的各种信号频率可以通过调节外接电阻和电容的参数进行调节,快速而准确地实现函数信号发生器提供了极大的方便。发生器是可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。顾名思义肯定可以产生函数信号源,如一定频率的正弦波,有的可以电压输出也有的可以功率输出。下面我们用简单的例子,来说明函数信号发生器原理。 (a) 信号发生器系统主要由下面几个部分组成:主振级、主振输出调节电位器、电压放大器、输出衰减器、功率放大器、阻抗变换器(输出变压器)和指示电压表。 (b) 工作模式:当输入端输入小信号正弦波时,该信号分两路传输,其一路径回路,完成整流倍压功能,提供工作电源;另一路径电容耦合,进入一个反相器的输入端,完成信号放大功能。该放大信号经后级的门电路处理,变换成方波后经输出。输出端为可调电阻。 (c) 工作流程:首先主振级产生低频正弦振荡信号,信号则需要经过电压放大器放大,放大的倍数必须达到电压输出幅度的要求,最后通过输出衰减器来直接输出信号器实际可以输出的电压,输出电压的大小则可以用主振输出调节电位器来进行具体的调节。 它一般由一片单片机进行管理,主要是为了实现下面的几种功能: (a) 控制函数发生器产生的频率; (b) 控制输出信号的波形; (c) 测量输出的频率或测量外部输入的频率并显示; (d) 测量输出信号的幅度并显示; (e) 控制输出单次脉冲。 查找其他资料知:在正弦波发生器中比较器与积分器组成正反馈闭环电路,方波、三角波同时输出。电位器与要事先调整到设定值,否则电路可能会不起振。只要接线正确,接通电源后便可输出方波、三角波。微调Rp1,使三角波的输出幅度满足设计要求,调节Rp2,则输出频率在对应波段内连续可变。 调整电位器及电阻,可以使传输特性曲线对称。调节电位器使三角波的输出幅度经R输出等于U值,这时输出波形应接近正弦波,调节电位器的大小可改善波形。 因为运放输出级由PNP型与NPN型两种晶体管组成复合互补对称电路,输

正弦信号发生器方案设计

正弦信号发生器设计方案 一、方案比较论证 所有方案可按模拟式和数字式分为两大类 模拟式: ①利用电阻、电容、运放等传统器件搭建LC或RC正弦信号发生器。通过改变电路中的 元件的参数值来调节输出频率。这种方式成本低廉,但由于采用大量分立器件,受其工作原理的限制频率稳定度较低(只有10-3量级)。另外实现扩展功能中的各种调制等也比较麻烦,电路复杂,调试困难,精度差。 ②采用专用信号发生芯片MAX038来实现正弦信号波形的输出。是美信公司的低失真单片 信号发生集成电路,内部电路完善,使用该器件能够产生精确的高频三角、锯齿、正弦及方波。使用该芯片设计简单,但扩展功能电路部分实现起来和采用分立器件同样复杂,而且频率精度和稳度均难以达到要求。 ③采用基于锁相环(PLL)技术或者非线性器件频率变换技术的频率合成器。由晶体振荡 器和锁相环组成的系统中,前者保证工作频率稳定度,后者完成输出频率的调整,但是这时输出频率只能是晶体谐振频率的整数倍。故虽然频率稳定能达到要求却很难做到频率输出范围1KHZ—10MHZ和100HZ步进的要求。 数字式: ①采用AD公司专用的DDS芯片AD9851合成FM和AM的载波,采用传统的模拟调制 方式来实现AM调制和FM调制。但该方案需要额外的模拟调制FM和AM的调制电路,且制作和调制电路都比较麻烦,还难免引入一定的干扰,而且此方案中的PSK调制也不容易实现。 ②采用AD公司的AD9856作为调制芯片,是内含DDS的正交调制芯片,可以实现多进 制的数字幅度调制,多进制的数字相位调制和多进制的数字幅度相位联合调制。故AM 调制,PSK调、ASK调制都可以通过它实现但是AD9856不便于调频且控制复杂。 ③利用微处理器和DAC实现DDS信号产生器。微处理器能够实现DDS的电路结构,即 实现相位累加器、波形的数据表、同时实现数字/模拟转换器的控制时序。利用微处理器完成加法运算需要读取的数据进行运算,再把运算结果送到目标单元。由于微处理器工作的顺序性,这时的相位累加频率将比微处理器的时钟频率低得多。同时微处理器还要完成人机交互的相关任务,故这种方案输出频率受到很大限制。 ④利用微处理器和可编程逻辑器件实现DDS信号产生器。微处理器程序执行的顺序性限 制了它的工作速度,可编程逻辑器件的并行运行能力使它适用于高速工作的场合。同时FM、AM、PSK、ASK调制均由FPGA在数字域内完成,大大简化了电路,同时具有良好的精度和可控性。微处理器完成键盘输入,液晶显示等人机交换任务。 综上所述:数字类的第四方案为最优选择。

信号发生器分析报告

信号发生器报告

————————————————————————————————作者:————————————————————————————————日期:

基于虚拟仪器的信号发生器的设计 【摘要】虚拟仪器是将仪器技术、计算机技术、总线技术和软件技术紧密的融合在一起,利用计算机强大的数字处理能力实现仪器的大部分功能,打破了传统仪器的框架,形成的一种新的仪器模式。 本次设计主要是阐述虚拟信号发生器的前面板和程序框图的设计。设计完的信号发生器的功能包括能够产生正弦波、矩形波、三角波、锯齿波四种信号波形;波形的频率、幅值、相位、偏移量及占空比等参数由前面板控件实时可调。 【关键词】虚拟仪器,信号发生器,LABVIEW 引言 信号发生器作为科学实验必不可少的装置,被广泛地应用到教学、科研等各个领域。高等学校特别是理工科的教学、科研需要大量的仪器设备,例如信号源、示波器等,常用仪器都必须配置多套,但是有些仪器设备价格昂贵,如果按照传统模式新建或者改造实验室投资巨大,造成许多学校仪器设备缺乏或过时陈旧,严重影响教学科研。如果运用虚拟仪器技术构建系统,代替常规仪器、仪表,不但可以满足实验教学的需要、节约大量的经费、降低实验室建设的成本,而且能够提高教学科研的质量与效率。 1.信号发生器的发展 信号发生器是一种悠久的测量仪器,早在20年代电子设备刚出现时它就产生了。随着通信和雷达技术的发展,40年代出现了主要用于测试各种接收机的标准信号发生器,使信号发生器从定性分析的测试仪器发展成定量分析的测量仪器。同时还出现了可用来测量脉冲电路或用作脉冲调制器的脉冲信号发生器。由于早期的信号发生器机械结构比较复杂,功率比较大,电路比较简单,因此发展速度比较慢。直到1964年才出现第一台全晶体管的信号发生器。 自60年代以来信号发生器有了迅速的发展,出现了函数发生器,这个时期的信号发生器多采用模拟电子技术,由分立元件或模拟集成电路构成,其电路结构复杂,且仅能产生正弦波、方波、锯齿波和三角波等几种简单波形,由于模拟电路的漂移较大,使其输出的波形的幅度稳定性差,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形则电路结构非常复杂。自从70年代微处理器出现以后,利用微处理器、模数转换器和数

信号发生器设计---实验报告

信号发生器设计 一、设计任务 设计一信号发生器,能产生方波、三角波和正弦波并进行仿真。 二、设计要求 基本性能指标:(1)频率范围100Hz~1kHz;(2)输出电压:方波U p-p≤24V,三角波U =6V,正弦波U p-p>1V。 p-p 扩展性能指标:频率范围分段设置10Hz~100Hz, 100Hz~1kHz,1kHz~10kHz;波形特性方波t r<30u s(1kHz,最大输出时)用仪器测量上升时间,三角波r△<2%,正弦波r <5%。(计算参数) ~ 三、设计方案 信号发生器设计方案有多种,图1是先产生方波、三角波,再将三角波转换为正弦波的组成框图。 图1 信号发生器组成框图 主要原理是:由迟滞比较器和积分器构成方波——三角波产生电路,三角波在经过差分放大器变换为正弦波。方波——三角波产生基本电路和差分放大器电路分别如图2和图4所示。 图2所示,是由滞回比较器和积分器首尾相接形成的正反馈闭环系统,则比较器A1输出的方波经积分器A2积分可得到三角波,三角波又触发比较器自动翻转形成方波,这样即可构成三角波、方波发生器。其工作原理如图3所示。

图2 方波和三角波产生电路 图3 比较器传输特性和波形 利用差分放大器的特点和传输特性,可以将频率较低的三角波变换为正弦波。(差模传输特性)其基本工作原理如图5所示。为了使输出波形更接近正弦波,设计时需注 应接近晶体意:差分放大器的传输特性曲线越对称、线性区越窄越好;三角波的幅值V m 管的截止电压值。 图4 三角波→正弦波变换电路

图5 三角波→正弦波变换关系 在图4中,RP 1调节三角波的幅度,RP 2调整电路的对称性,并联电阻R E2用来减小差分放大器的线性区。C 1、C 2、C 3为隔直电容,C 4为滤波电容,以滤除谐波分量,改善输出波形。取Ic2上面的电流(看输出) 波形发生器的性能指标: ①输出波形种类:基本波形为正弦波、方波和三角波。 ②频率范围:输出信号的频率范围一般分为若干波段,根据需要,可设置n 个波段范围。(n>3) ③输出电压:一般指输出波形的峰-峰值U p-p 。 ④波形特性:表征正弦波和三角波特性的参数是非线性失真系数r ~和r △;表征方波特性的参数是上升时间t r 。 四、电路仿真与分析 实验仿真电路图如图

正弦波信号发生器设计(课设)

课程设计I(论文)说明书 (正弦波信号发生器设计) 2010年1月19日

摘要 正弦波是通过信号发生器,产生正弦信号得到的波形,方波是通过对原信号进行整形得到的波形。 本文主要介绍了基于op07和555芯片的正弦波-方波函数发生器。以op07和555定时器构成正弦波和方波的发生系统。Op07放大器可以用于设计正弦信号,而正弦波可以通过555定时器构成的斯密特触发器整形后产生方波信号。正弦波方波可以通过示波器检验所产生的信号。测量其波形的幅度和频率观察是否达到要求,观察波形是否失真。 关键词:正弦波方波 op07 555定时器

目录 引言 (2) 1 发生器系统设计 (2) 1.1系统设计目标 (2) 1.2 总体设计 (2) 1.3具体参数设计 (4) 2 发生器系统的仿真论证 (4) 3 系统硬件的制作 (4) 4 系统调试 (5) 5 结论 (5) 参考文献 (6) 附录 (7) 1

引言 正弦波和方波是在教学中经常遇到的两种波形。本文简单介绍正弦波和方波产生的一种方式。在这种方式中具体包含信号发生器的设计、系统的论证、硬件的制作,发生器系统的调制。 1、发生器系统的设计 1.1发生器系统的设计目标 设计正弦波和方波发生器,性能指标要求如下: 1)频率范围100Hz-1KHz ; 2)输出电压p p V ->1V ; 3)波形特性:非线性失真~γ<5%。 1.2总体设计 (1)正弦波设计:正弦波振荡电路由基本放大电路、反馈网络、选频网 络组成。

2 图1.1 正弦波振荡电路产生的条件是要满足振幅平衡和相位平衡,即AF=1; φa+φb=±2nπ;A=X。/Xid; F=Xf/X。;正弦波振荡电路必须有基本放大电路, 本设计以op07芯片作为其基本放大电路。 基本放大电路的输出和基本放大电路的负极连接电阻作为反馈网络。反馈网络中 两个反向二极管起到稳压的作用。振荡电路的振荡频率f0是由相位平衡条件决 定的。一个振荡电路只在一个频率下满足相位平衡条件,这要求AF环路中包含 一个具有选频特性的选频网络。f0=1/2πRC。要实现频率可调,在电容C不变的 情况下电阻R可调就可以实现频率f0的变化。 (2)方波设计:方波可以把正弦波通过斯密特触发器整形后产生。基于555定时器接成的斯密特触发器。 设斯密特触发器输出波形为V1,V2且V1>V2。 输入正弦波v1从0逐渐升高的过程:v1<1/3Vcc时,输出v0=V1; 当1/3Vcc2/3Vcc时,v0=V2; 输入正弦波v1从高于2/3Vcc开始下降的过程:当1/3Vcc

方波——三角波——正弦波函数信号发生器

1函数发生器的总方案及原理框图(1) 1.1电路设计原理框图(1) 1.2 电路设计方案设计(1) 2 设计的目的及任务(2) 2.1 课程设计的目的(2) 2.2课程设计的任务与要求(2) 2.3课程设计的技术指标(2) 3 各部分电路设计(3) 3.1方波发生电路的工作原理(3) 3.2方波---三角波转换电路的工作原理(3) 3.3三角波---正弦波转换电路的工作原理,,,,,,,(6) 3.4电路的参数选择及计算(8) 3.5 总电路图(10) 4 电路仿真(11) 4.1方波---三角波发生电路的仿真(11) 4.2三角波---正弦波转换电路的仿真(12) 5 电路的安装与调试(13) 5.1方波---三角波发生电路的安装与调试(13) 5.2三角波---正弦波转换电路的安装与调试,,,,,,,(13) 5.3总电路的安装与调试(13) 5.4电路安装与调试中遇到的问题及分析解决方法,,,,(13) 6 电路的实验结果(14) 6.1方波---三角波发生电路的实验结果(14) 6.2三角波---正弦波转换电路的实验结果(14) 6.3实测电路波形、误差分析及改进方法(15) ,,,,,,,,,,,,,,,,,,,,,,,, (17)7 实验总结 8 仪器仪表明细清单(18) 9 参考文献(19)

1. 函数发生器总方案及原理框图 1.1原理框图 1.2函数发生器的总方案 函数发生器一般是指能自动产生正弦波、三角波、方波及锯齿波、阶梯波等电压波形的电路或仪器。根据用途不同,有产生三种或多种波形的函数发生器,使用的器件可以是分立器件(如低频信号函数发生器S101全部采用晶体管), 也可以采用集成电路(如单片函数发生器模块8038)。为进一步掌握电路的基本理论及实验调试技术,本课题采用由集成运算放大器与晶体管差分放大器共同组成的方波一三角波一正弦波函数发生器的设计方法。 产生正弦波、方波、三角波的方案有多种,如首先产生正弦波,然后通过整 形电路将正弦波变换成方波,再由积分电路将方波变成三角波;也可以首先产生三角波一方波,再将三角波变成正弦波或将方波变成正弦波等等。本课题采用先产生方波一三角波,再将三角波变换成正弦波的电路设计方法, 本课题中函数发生器电路组成框图如下所示: 由比较器和积分器组成方波一三角波产生电路,比较器输出的方波经积分器 得到三角波,三角波到正弦波的变换电路主要由差分放大器来完成。差分放大器具有工作点稳定,输入阻抗高,抗干扰能力较强等优点。特别是作为直流放大器时,可以有效地抑制零点漂移,因此可将频率很低的三角波变换成正弦波。波形 变换的原理是利用差分放大器传输特性曲线的非线性。

实验1 示波器函数信号发生器的原理及使用(实验报告之实验数据表)

实验1 示波器、函数信号发生器的原理及使用 【实验目的】 1. 了解示波器、函数信号发生器的工作原理。 2. 学习调节函数信号发生器产生波形及正确设置参数的方法。 3. 学习用示波器观察测量信号波形的电压参数和时间参数。 4. 通过李萨如图形学习用示波器观察两个信号之间的关系。 【实验仪器】 1. 示波器DS5042型,1台。 2. 函数信号发生器DG1022型,1台。 3. 电缆线(BNC 型插头),2条。 【实验内容与步骤】 1. 利用示波器观测信号的电压和频率 (1)参照“实验1 示波器函数信号发生器的原理及使用(实验指导书)”相关内容,产生如图1-1所示的正余弦波形,显示在示波屏上。 图1-1 函数信号发生器生成的正、余弦信号的波形 学生姓名/学号 指导教师 上课时间 第 周 节

(2)用示波器对图1-1中所示的正余弦波形进行测量并填写下表 表1-1 正余弦信号的电压和时间参数的测量 电压参数(V)时间参数 峰峰值最大值最小值频率(Hz)周期(ms)正弦信号 3sin(200πt) 余弦信号 3cos(200πt) 2. 用示波器观测函数信号发生器产生的正余弦信号的李萨如图形 (1)参照“实验1 示波器函数信号发生器的原理及使用(实验指导书)”相关内容,产生如图1-2所示的正余弦波形的李萨如图形,调节并正确显示在示波屏上。 图1-2 正弦信号3sin(200πt)和余弦信号3cos(200πt)的李萨如图形 3. 观测相同幅值、相同频率、不同相位差条件下的两正弦信号的李萨如图形 (1)在函数信号发生器CH1通道产生的正弦信号3sin(200πt)保持不变的情况下,调节函数信号发生器CH2通道产生正弦信号3sin(200πt+45o),观测并记录两正弦信号的李萨如图形于图1-3中。 (2)在函数信号发生器CH1通道产生的正弦信号3sin(200πt)保持不变的情况下,调节函数信号发生器CH2通道产生正弦信号3sin(200πt+135o),观测并记录两正弦信号的李萨如图形于图1-3中。

正弦信号发生器方案选择

研究生专业实践方案论证题目:中心频率1MHz正弦波信号发生器 学号 姓名 专业机械工程 院系机械科学与工程学院 2016年4月29日

中心频率1MHz正弦波信号发生器 1.选题背景 在电子技术领域,经常需要用到一些信号作为测量基准或输入信号,也就是所谓的信号源。函数信号发生器已成为电子技术领域不可或缺的仪器,尤其是在电路调试过程中,信号发生器起着相当重要的作用。按其频率产生方法,信号发生器可分为谐振法和合成法两种。一般传统的信号发生器均采用谐振法,也就是用具有频率选择性的回路来产生正弦振荡,获得所需频率。近些年来,随着集成集成电路的不断发展,各大厂商生产的信号发生器大部分都采用分立元件及模拟集成电路构成频率合成器,不仅实现了仪器体积的进一步缩小,且准确度和精度得到了进一步提升。 2.方案设计 2.1 方案一 用分立元件组成的函数发生器。分立器件是相对于集成芯片而言的。随着科学技术的不断发展,人们渐渐步入电子时代,分立器件也被也被广泛应用到各种领域,如计算机外设、消费电子、仪器仪表等。它包括:半导体二极管、半导体三极管、电容、电阻、逻辑器件、传感器、敏感器件以及装好的压电晶体类似半导体器件等。 用分立器件组成的函数信号发生器,其机构简单、成本较低。但是由于元器件的分散性及环境条件的改变等因素,致使波形频率易产生偏差,它通常是单频率函数信号发生器,并且其频率较低,工作状态易产生波动,不易于调试。 2.1.2 方案二 用晶体管、运放IC等通用器件制作函数信号发生器。函数信号发生器可以由晶体管、运放IC等通用器件制作。早期的函数信号发生器IC,如L8038、BA205、XR2207等,它们的功能较少,精度不高,频率上限只有300kHz,无法产生更高的频率信号,调节方式也不够灵活,频率和占空比不能独立调节,二者互相影响。 由于用通用器件制作的函数信号发生器和方案一有同意的确定,即产生出信号的频率较低。因此,在本设计中,此种方案也不宜采用。

函数信号发生器与示波器的使用实验报告书

函数信号发生器与示波器的使用实验报告书 专业:班级:学号: 姓名:实验时间: 实验目的 1、学会数字合成函数信号发生器常用功能的设置、使用; 2、会从函数信号发生器胡频率计上读出信号频率; 3、在了解数字双踪示波器显示波形的工作原理基础上,观察 并测量以下信号:(见下表)学会数字示波器的基本操作与 读书; 实验仪器 F40函数信号发生器、UTD2102CE数字示波器、探头。 实验原理 1、函数信号发生器的原理

该仪器采用直接数字合成技术,可以输出函数信号、调频、调幅、FSK、PSK、猝发、频率扫描等信号,还具有测频、计数、任意波形发生器功能。 2、示波器显示波形原理 如果在示波器CH1或CH2端口加上正弦波,在示波器的X 偏转板加上示波器内部的锯齿波,当锯齿波电压的变化周期与 正弦波电压相等时,则显示完整的周期的正弦波形,若在示波 器CH1和YCH2同时加上正弦波,在示波器的X偏转板上加上 示波器的锯齿波,则在荧光屏上将的到两个正弦波。 实验内容 1、做好准备工作,连接实验仪器电路,设置好函数信号发生 器、示波器; (1)、把函数信号发生器的“函数输出”输出端与示波器的 X CH1信号输入端连接,两台仪器的接通220V交流电源。 (2)、启动函数信号发生器,开机后仪器不需要设置,短暂 时间后,即输出10K Hz的正弦波形。 (3)、需要信号源的其他信号,到时在进行相关的数据设定 (如正弦波2的波形、频率、点频输出、信号幅度)等。 2、用示波器观察上表中序号1的信号波形(10KHz);过程如下: (1)、打开示波器的电源开关,将数字存储示波器探头连接到CH1输入端,按下“AUTO”按键,示波器将自动设置垂直偏转系数、扫描时基以及触发方式;按下CH1按键。

函数信号发生器使用说明(超级详细)

1-1 SG1651A函数信号发生器使用说明 一、概述 本仪器是一台具有高度稳定性、多功能等特点的函数信号发生器。能直接产生正弦波、三角波、方波、斜波、脉冲波,波形对称可调并具有反向输出,直流电平可连续调节。TTL可与主信号做同步输出。还具有VCF输入控制功能。频率计可做内部频率显示,也可外测1Hz~的信号频率,电压用LED显示。 二、使用说明 面板标志说明及功能见表1和图1 图1 序 号 面板标志名称作用1电源电源开关按下开关,电源接通,电源指示灯亮 2 波形波形选择1、输出波形选择 2、与1 3、19配合使用可得到正负相锯齿波和脉冲波 3频率频率选择开关频率选择开关与“9”配合选择工作频率外测频率时选择闸门时间 4Hz频率单位指示频率单位,灯亮有效 5K Hz频率单位指示频率单位,灯亮有效 6闸门闸门显示此灯闪烁,说明频率计正在工作 7溢出频率溢出显示当频率超过5个LED所显示范围时灯亮 8频率LED 所有内部产生频率或外测时的频率均由此5个LED显示 9频率调节频率调节与“3”配合选择工作频率 10直流/拉出直流偏置调节输 出 拉出此旋钮可设定任何波形的直流工作点,顺时 针方向为正,逆时针方向为负

DC1641数字函数信号发生器使用说明 一、概述 DC1641使用LCD显示、微处理器(CPU)控制的函数信号发生器,是一种小型的、由集成电路、单片机与半导体管构成的便携式通用函数信号发生器,其函数信号有正弦波、三角波、方波、锯齿波、脉冲五种不同的波形。信号频率可调范围从~2MHz,分七个档级,频率段、频率值、波形选择均由LCD显示。信号的最大幅度可达20Vp-p。脉冲的占空比系数由10%~90%连续可调,五种信号均可加±10V的直流偏置电压。并具有TTL电平的同步信号输出,脉冲信号反向及输出幅度衰减等多种功能。除此以外,能外接计数输入,作频率计数器使用,其频率范围从10Hz~10MHz(50、100MHz[根据用户需要])。计数频率等功能信息均由LCD 显示,发光二极管指示计数闸门、占空比、直流偏置、电源。读数直观、方便、准确。 二、技术要求 函数发生器 产生正弦波、三角波、方波、锯齿波和脉冲波。 2.1.1函数信号频率范围和精度 a、频率范围 由~2MHz分七个频率档级LCD显示,各档级之间有很宽的覆盖度, 如下所示: 频率档级频率范围(Hz) 1 ~2 10 1~20 100 10~200 1K 100~2K 10K 1K ~20K 100K 10K ~200K

函数信号发生器设计报告

目录 1设计的目的及任务 1.1 课程设计的目的 1.2 课程设计的任务与要求 2函数信号发生器的总方案及原理图 2.1 电路设计原理框图 2.2 电路设计方案设计 3 各部分电路设计及选择 3.1 方波发生电路的工作原理 3.2 方波、三角波发生电路的选择 3.3三角波---正弦波转换电路的选择 3.4总电路图 4 电路仿真与调试 4.1 方波---三角波发生电路、三角波---正弦波转换电路的仿真与调试 4.2方波---三角波发生电路、三角波---正弦波转换电路的实验结果 5 PCB制版

6 设计总结 7仪器仪表明细清单 8 参考文献 1.课程设计的目的和设计的任务 1.1 设计目的 1.掌握用集成运算放大器构成正弦波、方波和三角波函数发生器的设计方法。 2.学会安装、调试与仿真由分立器件、调试与仿真由分立器件与集成电路组成的多级电子电路小系统。 2.2设计任务与要求: 设计一台波形信号发生器,具体要求如下: 1.输出波形:方波、三角波、正弦波。

2.频率范围:在1 Hz-10Hz,10 Hz -100 Hz,100 Hz -1000 Hz 等三个波段。 3.频率控制方式:通过改变RC时间常数手控信号频率。 4.输出电压:方波UP-P≤24V,三角波UP-P=8V,正弦波UP-P>1V。 5.合理的设计硬件电路,说明工作原理及设计过程,画出相关的电路原理图。 6.选用常用的电器元件(说明电器元件选择过程和依据)。 7.画出设计的原理电路图,作出电路的仿真。 8.提交课程设计报告书一份,A3图纸两张,完成相应答辩。 2.函数发生器总方案及原理框图

正弦信号发生器设计

正弦信号发生器设计方案 1 引言 为了精确地输出正弦波、调幅波、调频波、PSK及ASK等信号,并依据直接数字频率合成(Direct Digital FrequencySvnthesizer,简称DDFS)技术及各种调制信号相关原理,设计了一种采用新型DDS器件产生正弦波信号和各种调制信号的设计方法。采用该方法设计的正弦信号发生器已广泛用于工程领域,且具有系统结构简单,界面友好等特点。 2 系统总体设计方案 图1给出系统总体设计方框图,它由单片机、现场可编程门阵列(FPGA)及其外围的模拟部分组成。在FPGA的内部数字部分中,利用FPGA内部的总线控制模块实现与键盘扫描、液晶控制等人机交互模块的通信,并在单片机与系统工作总控制模块之间的交互通信中起桥梁作用。系统工作总控制可统一控制各个时序模块;各时序模块用于完成相应的控制功能。在模拟部分中,利用无源低通滤波器及放大电路,使AD9851型DDS模块的输出信号成为正弦波和FM调制信号;再利用调幅电路,使FPGA内部DDS模块产生的信号与AD9851输出的载波信号变为调幅信号,同时在基带码控制下通过PSK/ASK调制电路得到PsK和ASK信号。最后,各路信号选择通道后,经功率放大电路驱动50Ω负载。 3 理论分析与计算 3.1 调幅信号 调幅信号表达式为:

式中:ω0t,ωt分别为调制信号和载波信号的角频率;MA为调制度。 令V(O)=Vocos(ω0t),V(ω)=MAcos(ωt),则V(t)=V(O)+V(O)V(ω)。故调幅信号可通过乘法器和加法器得到;通过改变调制信号V(ω)的幅值改变MA,V(ω)的范围为0.1~l V,MA对应为10%~100%。 3.2 调频信号 采用DDS调频法产生调频信号,具体实现方法:通过相位累加器和波形存储器在FPGA内部构成一个DDS模块,用于产生1 kHz的调制信号。其中,波形存储器的数据即为调制信号的幅度值。将这些表示幅度值的数据直接与中心频率对应的控制字相加,即可得到调频信号的瞬时频率控制字,再按调制信号的频率切换这些频率控制字,即可得到与DDS模块输出相对应的调频信号。 3.3 PSK和ASK信号 ASK信号是振幅键控信号,可用一个多路复用器实现。当控制信号为1时,选择载波信号输出;当控制信号为0时,不选择载波信号输出;当控制信号由速率为10 Kb/s的数字脉冲序列给出时,可以产生ASK信号。PSK信号是移相键控信号,这里只产生二相移相键控,即BPSK信号。它的实现方法与ASK基本相同,只是在控制信号为0时,选择与原载波信号倒相的输出信号,该倒相信号可由增益倍数为l的反相放大电路实现。 4 主要功能电路设计 图2给出调幅电路。它采用ADI公司的乘法器AD835实现。该器件内部自带加法器,可直接构成调幅电路。图3给出PSK/ASK电路。它主要由多路复用器和移相器构成。其中,移相器采用Maxim公司的高速运算放大器MAX477所构成的反相放大电路实现,多路复用器采用ADI公司的AD7502。当两条通道选择控制线A1AO为ll时,输出原信号;当A1A0为00时,输出原信号的反相信号;当A1A0为01时,无信号输出。这样只要FPGA按固定速率通过Al和AO两条控制线给出基带序列信号,就能相应输出PSK和ASK信号。

相关主题
文本预览
相关文档 最新文档