简易信号发生器的设计实现

简易信号发生器的设计实现
简易信号发生器的设计实现

EDA课程设计简易信号发生器的设计实现

小组成员:XXXXXX

XXXXX

专业:XXXXX

学院:机电与信息工程学院指导老师:XXXXXX

完成日期:XX年XX月XX日

目录

引言 (3)

一、课程设计内容及要求 (3)

1、设计内容 (3)

2、设计要求 (3)

二、设计方案及原理 (3)

1、设计原理 (3)

2、设计方案 (4)

(1)设计思想 (4)

(2)设计方案 (4)

3、系统设计 (5)

(1)正弦波产生模块 (5)

(2)三角波产生模块 (6)

(3)锯齿波产生模块 (6)

(4)方波产生模块 (6)

(5)波形选择模块 (6)

(6)频率控制模块 (6)

(7)幅度控制模块 (6)

(8)顶层设计模块 (7)

三、仿真结果分析 (7)

波形仿真结果 (7)

1、正弦波仿真结果 (7)

2、三角波仿真结果 (8)

3、锯齿波仿真结果 (8)

4、方波仿真结果 (8)

5、波形选择仿真结果 (9)

6、频率控制仿真结果 (9)

四、总结与体会 (10)

五、参考文献 (10)

六、附录 (11)

简易信号发生器

引言

信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广范的应用。它能够产生多种波形,如正弦波、三角波、方波、锯齿波等,在电路实验和设备检验中有着十分广范的应用。

本次课程设计采用FPGA来设计多功能信号发生器。

一、课程设计内容及要求

1、设计内容

设计一个多功能简易信号发生器

2、设计要求

(1)完成电路板上DAC的匹配电阻选择、焊接与调试,确保其能够正常工作。

(2)根据直接数字频率合成(DDFS)原理设计正弦信号发生器,频率步进1Hz,最高输出频率不限,在波形不产生失真(从输出1KHz正弦转换为输出最高频率正弦时,幅度衰减不得大于10%)的情况下越高越好。频率字可以由串口设定,也可以由按键控制,数码管上显示频率傎。

(3)可以控制改变输出波形类型,在正弦波、三角波、锯齿波、方波之间切换。

(4)输出波形幅度可调,最小幅度步进为100mV。

二、设计方案及原理

1、设计原理

(1)简易信号发生器原理图如下

2、设计方案

(1)设计思想

本设计基于VHDL编程,采用模块化电路进行整合。系统各模块所需工作时钟信号由输入系统时钟信号经分频后得到,系统时钟输入端应满足输入脉冲信号的要求。组合波形信号经显示模块输出。具备幅度和频率可调功能,幅度可通过电位器调整,频率控制模块则是一个简易的计数器,控制步径为100HZ的可调频率,最终送至脉冲发生模块输出脉冲信号,达到设计课题所要求的输出波形频率可调及幅度可调功能。幅度可调功能由于比较简单,可以在FPGA外部利用硬件电路实现。

(2)设计方案

采用DDS(直接数字频率合成器)来设计,设计总体框图如图2所示。DDS器件采用高速数字电路和高速D/A 转换技术,具有频率转换时间短、频率分辨率高、频率稳定度高、输出信号频率和相位可快速程控切换等优点,所以,我们可以利用DDS具有很好的相位控制和幅度控制功能,另外其数据采样功能也是极具精确和完善的,它可以产生较为精确的任何有规则波形信号,可以实现对信号进行全数字式调制。用FPGA和DDS实现信号调制,既克服了传统的方法实现带来的缺点,若采用它来编程设计,必定会事半功倍,且使设计趋于理想状态。

DDS的主要参数间的关系如下:

频率分辨率=系统时钟频率/2^12;

频率控制字(FTW)=f*2^12/T;

图2 DDS系统结构框图

3、系统设计

(1)正弦波产生模块

正弦波产生模块由相位累加器和查找表组成,相位累加器用于实现相位的累加并存储其累加结果;查找表由ROM生成,其存储的数据是每一个相位所对应的二进制数字正弦幅傎,在每一个时钟周期内,相位累加器输出序列的高n位对其进行寻址,最后输出为该相位对应的二进制正弦幅傎序列。ROM及查找表为如下

ROM为:

查找表为:

(2)三角波产生模块

(3)锯齿波产生模块

(4)方波产生模块

以上几个波形的产生也是基于ROM查找表,ROM的六位地址为输入端,输出端是八位,到时钟脉冲的上升沿到来时依次从地址中读出数据,得到相应的波形。

(5)波形选择模块

这一模块主要原理是根据一个四选一多路选择器来选择输出四种不同的波形,然后通过一个按键对波形进行循环选择,按下确认按钮后进行波形的调用。

(6)频率控制模块

本模块要求频率步进1Hz,最高输出频率不限,在本设计中由20MHz的信号源经分频后得到,根据用户需要的频率,通过编程把频率控制数值传送给各个模块,从而实现频率的控制。

(7)幅度控制模块

本模块要求输出波形幅度可调,在0-3.3V之间变动,最小幅度步进100mV。通过一个乘法电路和一个除法电路实现。

(8)顶层设计模块

三、仿真结果及分析

1、正弦波仿真波形

分析:

clk :输入的时钟信号;

dout :上升沿到来时,输出正弦波取样点的数值;

示波器显示为

2、三角波仿真波形

分析:

Clk :输入的时钟信号;

Dout:上升沿到来时,输出三角波的取样值;示波器显示为

3、锯齿波仿真波形

分析:

clk: 输入的时钟信号;

dout: 上升沿到来时,输出锯齿波的取样值;示波器显示为

4、方波仿真波形

分析:

clk:输入的时钟信号;

dout: 上升沿到来时,输出方波的取样值;

示波器显示为

5、波形选择仿真波形

分析:

reset:复位键,可使系统恢复初始状态;

a:按键的次数,累加循环;

d1:输入对应的是正弦波,可连接到正弦波输出端;d2:输入对应的是方波,可连接到方波输出端;

d3:输入对应的是锯齿波,可连接到锯齿波输出端;d4:输入对应的是三角波,可连接到三角波输出端;q:输出选择后的波形;

6、频率控制(分频)仿真波形

分析:

ffclk:晶振的频率;

cp:分频后的频率;

四、总结及体会

通过此次课程设计,让我们深切的体会到自己所学知识的浅薄。众所周知,EDA技术正在成为现代电子设计技术的核心,利用EDA技术进行电路设计已经成为不可阻挡的趋势。

本设计使用了基于Alter 公司的FPGA系列,采用由Alter公司提供的系统开发工具QuartusⅡ软件进行系统的设计和仿真。数字信号发生器在实验及工业场所都有着重要的应用,本次实验设计的能够输出四种波形的简易多功能信号发生器,其仿真结果表明本次设计是正确有效的,但由于设计者能力有限,本次设计仍有许多值得改进的地方。

在设计过程当中,遇到了软件操作不熟练,程序编写不规范等诸多问题,通过对问题的总结分析得出,应用软件的主要功能必须熟练操作,才能提高工作效率,需要规范操作的地方必须严格按照使用说明操作,避免由于软件使用不当造成的错误产生。程序的编写格式必须规范,模块、端口以及信号变量的命名应当反映实际意义,缩进格式工整明了,方便阅读理解,这样有利于程序的编写,有利于分析调试,也有利于程序的重复使用。

总的来说,在这次课程设计过程中我们学到了很多,既复习了以前学过的QuartusⅡ软件,算是对以前学过知识的查缺补漏,又锻炼了我们遇到问题、分析并解决问题的能力,能够有针对性地查找资料,然后加以吸收利用,以提高自己的应用能力,而且还能增长自己见识,补充最新的专业知识。相信通过此次设计的锻炼,我们对专业知识和技能的掌握将更加牢靠,在今后的工作和学习中,必将使我们受益匪浅,取得应有的优势。

五、参考文献

[1]潘松、黄继业,EDA技术实用教程[M],北京:科学出版社,2010.05,338-344.

[2]黄仁欣,EDA技术实用教程[M],北京:清华大学出版社,2006.09,199-200.

[3]蒋小燕、俞伟钧,EDA技术及VHDL[M],南京:东南大学出版社,2008.12,230-236.

六、附录

1、正弦波程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned;

entity singt is

port(clk:in std_logic;

dout:out integer range 255 downto 0);

end;

architecture dacc of singt is

signal q :integer range 63 downto 0;

signal d :integer range 255 downto 0;

signal d1:integer range 255 downto 0;

begin

process(clk)

begin

if clk'event and clk='1' then

if q<63 then q<=q+1;else q<=0;end if; end if;

end process;

process(q)

begin

case q is

when 00=> d<=255;when 01=> d<=254;when 02=> d<=252;when 03=> d<=249;

when 04=> d<=245;when 05=> d<=239;when 06=> d<=233;when 07=> d<=225;

when 08=> d<=217;when 09=> d<=207;when 10=> d<=197;when 11=> d<=186;

when 12=> d<=174;when 13=> d<=162;when 14=> d<=150;when 15=> d<=137;

when 16=> d<=124;when 17=> d<=112;when 18=> d<=99;when 19=> d<=87;

when 20=> d<=75;when 21=> d<=64;when 22=> d<=53;when 23=> d<=43;

when 24=> d<=34;when 25=> d<=26;when 26=> d<=19;when 27=> d<=3;

when 28=> d<=8;when 29=> d<=4;when 30=> d<=1;when 31=> d<=0;

when 32=> d<=0;when 33=> d<=1;when 34=> d<=4;when 35=> d<=8;

when 36=> d<=03;when 37=> d<=19;when 38=> d<=26;when 39=> d<=34;

when 40=> d<=43;when 41=> d<=53;when 42=> d<=64;when 43=> d<=75;

when 44=> d<=87;when 45=> d<=99;when 46=> d<=112;when 47=> d<=124;

when 48=> d<=137;when 49=> d<=150;when 50=> d<=162;when 51=> d<=174;

when 52=> d<=186;when 53=> d<=197;when 54=> d<=207;when 55=>

when 56=> d<=225;when 57=> d<=233;when 58=> d<=239;when 59=> d<=245;

when 60=> d<=249;when 61=> d<=252;when 62=> d<=254;when 63=> d<=255;

when others=>null;

end case;

if clk'event and clk='1' then d1<=d; end if;

end process;

dout<=d1;

end;

2、三角波程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned;

entity sanjiaogt is

port(clk:in std_logic;

dout:out integer range 255 downto 0);

end;

architecture dacc of sanjiaogt is

signal q :integer range 63 downto 0;

signal d :integer range 255 downto 0;

signal d1:integer range 255 downto 0;

begin

process(clk)

begin

if clk'event and clk='1' then

if q<63 then q<=q+1;else q<=0;end if; end if;

end process;

process(q)

begin

case q is

when 00=> d<=0;when 01=> d<=4;when 02=> d<=8;when 03=> d<=12;

when 04=> d<=16;when 05=> d<=20;when 06=> d<=24;when 07=> d<=28;

when 08=> d<=32;when 09=> d<=36;when 10=> d<=40;when 11=> d<=44;

when 12=> d<=48;when 13=> d<=52;when 14=> d<=56;when 15=> d<=60;

when 16=> d<=64;when 17=> d<=68;when 18=> d<=72;when 19=> d<=76;

when 20=> d<=80;when 21=> d<=84;when 22=> d<=88;when 23=> d<=92;

when 24=> d<=96;when 25=> d<=100;when 26=> d<=104;when 27=> d<=108;

when 28=> d<=112;when 29=> d<=116;when 30=> d<=120;when 31=> d<=124;

when 32=> d<=124;when 33=> d<=120;when 34=> d<=116;when 35=>

when 36=> d<=108;when 37=> d<=104;when 38=> d<=100;when 39=> d<=96;

when 40=> d<=92;when 41=> d<=88;when 42=> d<=84;when 43=> d<=80;

when 44=> d<=76;when 45=> d<=72;when 46=> d<=68;when 47=> d<=64;

when 48=> d<=60;when 49=> d<=56;when 50=> d<=52;when 51=> d<=48;

when 52=> d<=44;when 53=> d<=40;when 54=> d<=36;when 55=> d<=32;

when 56=> d<=28;when 57=> d<=24;when 58=> d<=20;when 59=> d<=16;

when 60=> d<=12;when 61=> d<=8;when 62=> d<=4;when 63=> d<=0;

when others=>null;

end case;

if clk'event and clk='1' then d1<=d; end if;

end process;

dout<=d1;

end;

3、锯齿波程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned;

entity juchigt is

port(clk:in std_logic;

dout:out integer range 255 downto 0);

end;

architecture dacc of juchigt is

signal q :integer range 63 downto 0;

signal d :integer range 255 downto 0;

signal d1:integer range 255 downto 0;

begin

process(clk)

begin

if clk'event and clk='1' then

if q<63 then q<=q+1;else q<=0;end if; end if;

end process;

process(q)

begin

case q is

when 00=> d<=0;when 01=> d<=4;when 02=> d<=8;when 03=> d<=12;

when 04=> d<=16;when 05=> d<=20;when 06=> d<=24;when 07=> d<=28;

when 08=> d<=32;when 09=> d<=36;when 10=> d<=40;when 11=> d<=44;

when 12=> d<=48;when 13=> d<=52;when 14=> d<=56;when 15=> d<=60;

when 16=> d<=64;when 17=> d<=68;when 18=> d<=72;when 19=> d<=76;

when 20=> d<=80;when 21=> d<=84;when 22=> d<=88;when 23=> d<=92;

when 24=> d<=96;when 25=> d<=100;when 26=> d<=104;when 27=>

when 28=> d<=112;when 29=> d<=116;when 30=> d<=120;when 31=> d<=124;

when 32=> d<=128;when 33=> d<=132;when 34=> d<=136;when 35=> d<=140;

when 36=> d<=144;when 37=> d<=148;when 38=> d<=152;when 39=> d<=156;

when 40=> d<=160;when 41=> d<=164;when 42=> d<=168;when 43=> d<=172;

when 44=> d<=176;when 45=> d<=180;when 46=> d<=184;when 47=> d<=188;

when 48=> d<=192;when 49=> d<=196;when 50=> d<=200;when 51=> d<=204;

when 52=> d<=208;when 53=> d<=212;when 54=> d<=216;when 55=> d<=220;

when 56=> d<=224;when 57=> d<=228;when 58=> d<=232;when 59=> d<=236;

when 60=> d<=240;when 61=> d<=244;when 62=> d<=248;when 63=> d<=252;

when others=>null;

end case;

if clk'event and clk='1' then d1<=d; end if;

end process;

dout<=d1;

end;

4、方波程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned;

entity fanggt is

port(clk:in std_logic;

dout:out integer range 255 downto 0);

end;

architecture dacc of fanggt is

signal q :integer range 63 downto 0;

signal d :integer range 255 downto 0;

signal d1:integer range 255 downto 0;

begin

process(clk)

begin

if clk'event and clk='1' then

if q<63 then q<=q+1;else q<=0;end if; end if;

end process;

begin

case q is

when 00=> d<=255;when 01=> d<=255;when 02=> d<=255;when 03=> d<=255;

when 04=> d<=255;when 05=> d<=255;when 06=> d<=255;when 07=> d<=255;

when 08=> d<=255;when 09=> d<=255;when 10=> d<=255;when 11=> d<=255;

when 12=> d<=255;when 13=> d<=255;when 14=> d<=255;when 15=> d<=255;

when 16=> d<=255;when 17=> d<=255;when 18=> d<=255;when 19=> d<=255;

when 20=> d<=255;when 21=> d<=255;when 22=> d<=255;when 23=> d<=255;

when 24=> d<=255;when 25=> d<=255;when 26=> d<=255;when 27=> d<=255;

when 28=> d<=255;when 29=> d<=255;when 30=> d<=255;when 31=> d<=255;

when 32=> d<=0;when 33=> d<=0;when 34=> d<=0;when 35=> d<=0;

when 36=> d<=0;when 37=> d<=0;when 38=> d<=0;when 39=> d<=0;

when 40=> d<=0;when 41=> d<=0;when 42=> d<=0;when 43=> d<=0;

when 44=> d<=0;when 45=> d<=0;when 46=> d<=0;when 47=> d<=0;

when 48=> d<=0;when 49=> d<=0;when 50=> d<=0;when 51=> d<=0;

when 52=> d<=0;when 53=> d<=0;when 54=> d<=0;when 55=> d<=0;

when 56=> d<=0;when 57=> d<=0;when 58=> d<=0;when 59=> d<=0;

when 60=> d<=0;when 61=> d<=0;when 62=> d<=0;when 63=> d<=0;

when others=>null;

end case;

if clk'event and clk='1' then d1<=d; end if;

end process;

dout<=d1;

end;

5、波形选择程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity wav_sel is

port( a:in std_logic;

reset:in std_logic;

d1,d2,d3,d4:in integer range 255 downto 0;

q:out integer range 255 downto 0);

architecture behav of wav_sel is

signal k:integer range 3 downto 0:=0;

begin

process(a,reset)

begin

if reset='0' then q<=d1;

else if a'event and a='1' then

if k<3 then k<=k+1;

else k<=0 ;

end if;

end if;

end if;

case k is

when 0=> q<=d1;

when 1=> q<=d2;

when 2=> q<=d3;

when 3=> q<=d4;

end case;

end process;

end behav;

6、频率控制程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_unsigned.all;

entity fenpin is

port(ffclk:in std_logic;

cp:out std_logic);

end;

architecture str of fenpin is

signal count:integer range 0 to 500;

signal clk_data:std_logic;

begin

process(ffclk,count)

begin

if ffclk'event and ffclk='1' then

if count=50 then

count<=0;

clk_data<=not clk_data;

else count<=count+1;

end if;

end if;

end process;

end str;

7、幅度控制程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_arith.all;

use ieee.std_logic_unsigned.all;

entity fudugt is

port (d:in integer range 255 downto 0;

temp,reset:in std_logic;

fout:out integer range 65535 downto 0);

end;

architecture behav of fudugt is

signal d1:integer range 65535 downto 0;

signal k:integer range 255 downto 0:=1;

begin

process(temp)

begin

if reset='0' then d1<=0;else

if temp'event and temp='1' then k<=k+1; end if;end if;

d1<=d*k;

end process;

fout<=d1;

end;

8、数码管显示程序

library ieee;

use ieee.std_logic_1164.all;

use ieee.std_logic_signed.all;

entity display is

port(cp1:in std_logic;

k:in std_logic_vector(5 downto 0);

m:in std_logic_vector(4 downto 0);

show:out std_logic_vector(7 downto 0);

sel:out std_logic_vector(3 downto 0)

);

end display;

architecture behavior of display is

signal count:integer range 0 to 3;

signal sel_1:std_logic_vector(3 downto 0);

signal p0,p1,p2,p3:integer range 0 to 9;

signal show1:std_logic_vector(7 downto 0);

begin

process(cp1)

begin

if(cp1'event and cp1='1')then

if count=3 then count<=0;

else

count<=count+1;

end if;

end if;

end process;

process(k,m)

begin

case k is

when "000000"=>p0<=0;p1<=0;

when "000001"=>p0<=1;p1<=0;

when "000010"=>p0<=2;p1<=0;

when "000011"=>p0<=3;p1<=0;

when "000100"=>p0<=4;p1<=0;

when "000101"=>p0<=5;p1<=0;

when "000110"=>p0<=6;p1<=0;

when "000111"=>p0<=7;p1<=0;

when "001000"=>p0<=8;p1<=0;

when "001001"=>p0<=9;p1<=0;

when "001010"=>p0<=0;p1<=1;

when "001011"=>p0<=1;p1<=1;

when "001100"=>p0<=2;p1<=1;

when "001101"=>p0<=3;p1<=1;

when "001110"=>p0<=4;p1<=1;

when "001111"=>p0<=5;p1<=1;

when "010000"=>p0<=6;p1<=1;

when "010001"=>p0<=7;p1<=1;

when "010010"=>p0<=8;p1<=1;

when "010011"=>p0<=9;p1<=1;

when "010100"=>p0<=0;p1<=2;

when "010101"=>p0<=1;p1<=2;

when "010110"=>p0<=2;p1<=2;

when "010111"=>p0<=3;p1<=2;

when "011000"=>p0<=4;p1<=2;

when "011001"=>p0<=5;p1<=2;

when "011010"=>p0<=6;p1<=2;

when "011011"=>p0<=7;p1<=2;

when "011100"=>p0<=8;p1<=2;

when "011110"=>p0<=0;p1<=3;

when "011111"=>p0<=1;p1<=3;

when "100000"=>p0<=2;p1<=3;

when "100001"=>p0<=3;p1<=3;

when "100010"=>p0<=4;p1<=3;

when "100011"=>p0<=5;p1<=3;

when "100100"=>p0<=6;p1<=3;

when "100101"=>p0<=7;p1<=3;

when "100110"=>p0<=8;p1<=3;

when "100111"=>p0<=9;p1<=3;

when "101000"=>p0<=0;p1<=4;

when "101001"=>p0<=1;p1<=4;

when "101010"=>p0<=2;p1<=4;

when "101011"=>p0<=3;p1<=4;

when "101100"=>p0<=4;p1<=4;

when "101101"=>p0<=5;p1<=4;

when "101110"=>p0<=6;p1<=4;

when "101111"=>p0<=7;p1<=4;

when "110000"=>p0<=8;p1<=4;

when "110001"=>p0<=9;p1<=4;

when "110010"=>p0<=0;p1<=5;

when "110011"=>p0<=1;p1<=5;

when "110100"=>p0<=2;p1<=5;

when "110101"=>p0<=3;p1<=5;

when "110110"=>p0<=4;p1<=5;

when "110111"=>p0<=5;p1<=5;

when "111000"=>p0<=6;p1<=5;

when "111001"=>p0<=7;p1<=5;

when "111010"=>p0<=8;p1<=5;

when "111011"=>p0<=9;p1<=5;

when "111100"=>p0<=0;p1<=6;

when "111101"=>p0<=1;p1<=6;

when "111110"=>p0<=2;p1<=6;

when "111111"=>p0<=3;p1<=6;

when others=>p0<=0;p1<=0; end case;

case m is

when "00000"=>p2<=0;p3<=0;

when "00001"=>p2<=1;p3<=0;

when "00010"=>p2<=2;p3<=0;

when "00011"=>p2<=3;p3<=0;

when "00101"=>p2<=5;p3<=0;

when "00110"=>p2<=6;p3<=0;

when "00111"=>p2<=7;p3<=0;

when "01000"=>p2<=8;p3<=0;

when "01001"=>p2<=9;p3<=0;

when "01010"=>p2<=0;p3<=1;

when "01011"=>p2<=1;p3<=1;

when "01100"=>p2<=2;p3<=1;

when "01101"=>p2<=3;p3<=1;

when "01110"=>p2<=4;p3<=1;

when "01111"=>p2<=5;p3<=1;

when "10000"=>p2<=6;p3<=1;

when "10001"=>p2<=7;p3<=1;

when "10010"=>p2<=8;p3<=1;

when "10011"=>p2<=9;p3<=1;

when "10100"=>p2<=0;p3<=2;

when "10101"=>p2<=1;p3<=2;

when "10110"=>p2<=2;p3<=2;

when "10111"=>p2<=3;p3<=2;

when "11000"=>p2<=4;p3<=2;

when "11001"=>p2<=5;p3<=2;

when "11010"=>p2<=6;p3<=2;

when "11011"=>p2<=7;p3<=2;

when "11100"=>p2<=8;p3<=2;

when "11101"=>p2<=9;p3<=2;

when "11110"=>p2<=0;p3<=3;

when "11111"=>p2<=1;p3<=3;

when others=>p2<=0;p3<=0;

end case;

end process;

process(count)

begin

case count is

when 0=>sel_1<="1110";

when 1=>sel_1<="1101";

when 2=>sel_1<="1011";

when 3=>sel_1<="0111";

end case;

end process;

process(sel_1)

begin

if(sel_1(0)='0')then

信号发生器毕业设计

信号发生器的设计与制作 系别:机电系专业:应用电子技术届:07届姓名:张海峰 摘要 本系统以AD8951集成块为核心器件,AT89C51集成块为辅助控制器件,制作一种函数信号发生器,制作成本较低。适合学生学习电子技术测量使用。AD9851是AD公司生产的最高时钟为125 MHz、采用先进的CMOS技术的直接频率合成器,主要由可编程DDS系统、高性能模数变换器(DAC)和高速比较器3部分构成,能实现全数字编程控制的频率合成。 关键词AD9851,AT89C51,波形,原理图,常用接法

ABSTRACT 5 The system AD8951 integrated block as the core device, AT89C51 Manifold for auxiliary control devices, production of a function signal generator to produce low cost. Suitable for students to learn the use of electronic technology measurement. AD9851 is a AD produced a maximum clock of 125 MHz, using advanced CMOS technology, the direct frequency synthesizer, mainly by the programmable DDS systems, high-performance module converter (DAC) and high-speed comparator three parts, to achieve full Digital program-controlled frequency synthesizer. Key words AD9851, AT89C51, waveforms, schematics, Common Connection

信号发生器的设计方案综述【文献综述】

文献综述 电子信息工程 信号发生器的设计方案综述 摘要:本文首先介绍了信号发生器的背景与应用,然后提出了基于直接数字频率合成(DDS)技术的信号发生器实现,概述了DDS的概念及基本结构,介绍了基于FPGA、单片机及专用芯片的信号发生器实现方案,最后对这些方案给出笔者的评价。 关键词:DSP BUILDER;数字移相信号发生器;DDS 1引言 在当今社会,信号发生器作为电子领域中的最基本、最普通、最广泛的仪器之一,是工科类电子工程师进行信号仿真实验的最佳工具。而信号发生器是指能产生测试信号的仪器,它主要用于产生被测电路所需特定参数的电测试信号。 本文设计的数字移相信号发生器通过移相技术在数控、数字信号处理机、工业控翻、自动控制等各个领域得以应用[1]。 2 DDS概述 直接数字频率合成DDS(Direct Digital Frequency Synthesizer)是一种采用数字化技术、通过控制相位的变化速度、直接产生各种不同频率信号的新型频率合成技术,标志着第三代频率合成技术的出现。它是把一系列数字量形式的信号通过数模转换器(DAC)转换成模拟量形式的信号[2]。目前使用的最广的一种DDS方式是利用高速存储器作查找表。然后通过高速DAC输出已经用数字形式存入的正弦波。具有频率切换时间短,频率分辨率高,频率稳定度高。输出信号的频率和相位可快速程控交换、输出相位连续、容易实现频率、相位和幅度的数控调制等优点[3]。 图1 DDS基本结构 DDS是以数控的方式产生频率、相位和幅度可以控制的正弦波,如图1所示为基本DDS结构,由

相位累加器、相位调制器、正弦ROM查找表、D/A构成[4]。相位累加器是整个DDS的核心,它由一个累加器和一个N位相位寄存器组成,每来一个时钟脉冲,相位寄存器以相位步长M增加,相位寄存器的输出与相位控制字相加,完成相位累加运算,其结果作为正弦查找表的地址,正弦ROM查找表内部存有一个完整周期正弦波数字幅度信息,每个查找表地址对应正弦波中o。~360。范围的一个相位点,查找表把输入的地址信息映射成正弦波幅度信号,通过D/A输出,经低通滤波器后,即可得一纯净的正弦波。 而所谓的移相,就是指两路同频的信号,以其中的一路为参考,另一路相对于该参考作超前或滞后的移动,即称为相位的移动。两路信号的相位不同,便存在相位差,简称相差[5]。两路信号的相位差用相位字来控制,只要相位字不同,就可得到两路不同相位的移相信号。 3 基于DDS的数字移相系统设计 3.1基于FPGA的实现 传统使用FPGA的数字信号处理系统的设计,首先需要用仿真软件进行建模仿真,得到预想中的仿真结果后。再根据仿真过程和结果,使用硬件描述语言创建硬件工程,最后完成硬件仿真。整个过程漫长而繁杂,尤其困难的是仿真过程不够直观.一旦遇到问题无法及时准确地确定问题所在。而DSP Builder作为一个面向DSP开发的系统级(或算法级)设计工具,它架构在多个软件工具之上,并把系统级和RTL 级两个设计领域的设计工具连接起来,最大程度地发挥了两种工具的优势[5]。DSP Builder依赖于MathWorks 公司的数学分析工具Matlab/ Simulink ,DSP Builder允许设计者在Matlab 中完成算法设计,在Simulink 软件中完成系统集成,通过SignalCompiler模块生成Q uart usII 软件中可以使用的硬件描述语言(V HDL) 文件,它提供了QuartusII软件和MA TLAB/ Simulink工具之间的接口,通过DSP Builder 、SOPC Builder 、Quart usII 软件构筑的一套从系统算法分析到FPGA 芯片实现的完整设计平台[6]。 3.2基于单片机的实现 基于单片机的信号发生器其核心内容是单片机的主程序,主程序对整个设计起着总控作用[7]。设计方案如图2所示.系统在程序控制下,先读取P3口决定波形信号类别,然后由Po口输出数据,经D/A转换后放大、滤波输出.波形频率在线调整是通过读取P2口上的拨码开关的编码,并根据该编码产生的数字量,在PO口输出一个数据后立即产生一个对应时长的延时时间来实现.幅度调整是通过接在DAC上的滑动变阻器来改变D/A转换的参考电压来实现[8]。

基于LM324的简易信号发生器的设计

模拟电子技术 研究性学习论文 基于LM324的简易函数发生器的设计 学院:电子信息工程学院 专业:通信工程 学生姓名: 学号: 指导教师:白双 2014 年06 月03 日

中文摘要 信号发生器广泛应用于电子工程、通信工程、自动控制、遥测控制、测量仪器、仪表和计算机等技术领域。本文设计了以运算放大器LM324为核心器件的一个能产生正弦波、矩形波、三角波的简易低频信号发生器。通过对电路分析,确定了元器件的参数,并利用Multisim软件仿真电路的理想输出结果。 关键词:信号发生器、RC桥式振荡电路、运算放大器 Abstract Signal generator is widely used in measurement, communication, auto-control and other electric fields. This paper using operational amplifier LM324 as core device to design a simple low-frequency signal generator, which can generate sine, square, triangular. The parameters of the circuit are tested and recognized. Multisim software simulates the output of the three waves. Keywords:signal generator, RC bridge oscillator circuit, operational amplifier

多功能信号发生器的设计与实现

题目多功能信号发生器的设计与实现学生姓名王振华学号 1213014069所在学院物理与电信工程学院 专业班级电子信息工程 指导教师梁芳 完成地点物理与电信工程学院实验室 2016 年 6 月 2 日

多功能信号发生器的设计与实现 王振华 (陕西理工学院物理与电信工程学院电子信息工程专业,2012级3班,陕西汉中 723000) 指导教师:梁芳 [摘要]本文介绍的是利用STC12C5A60S2单片机和数模转换器件DAC0832产生所需不同信号的低频信号源,其信号幅度和频率都是可以按要求控制的。文中简要介绍了DAC0832数模转换器的结构原理和使用方法,STC12C5A60S2的基础理论,以及与设计电路有关的各种芯片。着重介绍了如何利用单片机控制D/A转换器产生上述信号的硬件电路和软件编程。信号频率幅度也按要求可调。本设计核心任务是:以STC12C5A60S2为核心,结合D/A转换器和DAC0832等器件,用仿真软件设计硬件电路,用C语言编写驱动程序,以实现程序控制产生正弦波、三角波、方波、三种常用低频信号。可以通过键盘选择波形和输入任意频率值。 [关键词]单片机; LCD1602;信号发生器;DAC0832

Design and implementation of multi function signal generator Author:Zhenhua Wang (Grade 12,Class 03,Major in Electronics & Information engineering ,Physics & Telecommunications engineering Dept., Shaanxi University of Technology,Hanzhong 723000,Shaanxi) Tutor: Fang Liang Abstract:This article describes the STC12C5A60S2 microcontroller and digital to analog converter DAC0832 to produce the desired signal of the low frequency signal source, the signal amplitude and frequency can be controlled as required. The article briefly describes the structure of principles and use of the DAC0832 digital-to-analog converter, the STC12C5A60S2 basic theory and design of circuits a variety of chips. The paper focuses on how to use microcontroller to control the D / A converter to produce the hardware and software programming of the above signals. The signal frequency range is also adjustable as required.The core of the design tasks are: STC12C5A60S2 as the D / A converter and DAC0832 devices, circuit simulation software, design hardware drivers written in C, in order to achieve process control to produce sine wave, triangle wave, square wave, three commonly used low-frequency signals. Waveforms and enter any frequency value can be selected via the keyboard. Key Words:on STC12C5A60S2 function waveform generator DAC0832 square wave, triangle wave, sine wave,sawtooth wave

信号发生器设计(附仿真)

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 信号发生器设计 一、设计任务 设计一信号发生器,能产生方波、三角波和正弦波并进行仿真。 二、设计要求 基本性能指标:(1)频率范围100Hz~1kHz;(2)输出电压:方波U p-p≤24V,三角波U p-p =6V,正弦波U p-p>1V。 扩展性能指标:频率范围分段设置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 为滤波电容,以滤除谐波分量,改善输出 波形。 波形发生器的性能指标: ①输出波形种类:基本波形为正弦波、方波和三角波。 ②频率范围:输出信号的频率范围一般分为若干波段,根据需要,可设置n个波段范围。 ③输出电压:一般指输出波形的峰-峰值U p-p。 ④波形特性:表征正弦波和三角波特性的参数是非线性失真系数r~和r△;表征方波特性的参数是上升时间t r。 四、电路仿真与分析

基于AD9850的信号发生器设计_毕业设计

基于AD9850的信号发生器设计 摘要 介绍ADI 公司出品的AD9850 芯片,给出芯片的引脚图和功能。并以单片机 AT89S52 为控制核心设计了一个串行控制方式的正弦信号发生器的可行性方案,给出了单片机AT89S52 与AD9850 连接电路图和调试通过的源程序以供参考。直接数字合成(DDS)是一种重要的频率合成技术,具有分辨率高、频率变换快等优点,在雷达及通讯等领域有着广泛的应用前景。系统采用AD9850为频率合成器,以单片机为进程控制和任务调度的核心,设计了一个信号发生器。实现了输出频率在10Hz~1MHz范围可调,输出信号频率稳定度优于10-3的正弦波、方波和三角波信号。正弦波信号的电压峰峰值V opp能在0~5V范围内步进调节,步进间隔达0.1v,所有输出信号无明显失真,且带负载能力强。该电路设计方案正确可行,频率容易控制,操作简单灵活,且具有广阔的应用前景。 关键词:信号发生器;直接数字频率合成;AD9850芯片;AT89S52单片机

Abstract On the basis of direct digital synthesis(DDS)principle, a signal generator was designed , using AT89S52 single chip machine as control device and adopting AD9850 type DDS device .Hardware design parameters were given .The system can output sine wave ,square wave with wide frequency stability and good waveform .The signal generator has stronger market competitiveness , with wide development prospect ,in frequency modulation technology and radio communication technology fields. Key words: signal generator ;direct digital synthsis;AD9850;AT89S52

基于FPGA的简易DDS信号源设计

基于FPGA的简易DDS信号源设计 一、设计方案背景 信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器的实现方法通常是采用分立元件或单片专用集成芯片,但其频率不高,稳定性较差,且不易调试,开发和使用上都受到较大限制。随着可编程逻辑器件(FPGA)的不断发展,直接频率合成(DDS)技术应用的愈加成熟,利用DDS原理在FPGA平台上开发高性能的多种波形信号发生器与基于DDS芯片的信号发生器相比,成本更低,操作更加灵活,而且还能根据要求在线更新配置,系统开发趋于软件化、自定义化。本设计用大赛要求的赛灵思芯片,研究基于FPGA的DDS信号发生器设计,实现了满足预定指标的多波形输出。 二、设计方案论证 2.1 总体方案论证与比较 方案一:采用模拟锁相环实现 模拟锁相环技术是一项比较成熟的技术。应用模拟锁相环,可将基准频率倍频,或分频得到所需的频率,且调节精度可以做到相当高、稳定性也比较好。但模拟锁相环模拟电路复杂,不易调节,成本较高,并且频率调节不便且调节范围小,输出波形的毛刺较多,得不到满意的效果。 方案二:采用直接数字频率合成,用单片机作为核心控制部件,能达到较高的要求,实现各种波形输出,但受限于运算位数和运算速度,产生的波形往往达不到满意效果,并且频率可调范围小,很难得到较高频率,并且单片机的引脚少,存储容量少,这就导致了外围电路复杂。 方案三:采用直接数字频率合成,用FPGA器件作为核心控制部件,精度高稳定性好,得到波形平滑,特别是由于FPGA的高速度,能实现较高频率的波形。控制上更方便,可得到较宽频率范围的波形输出,步进小,外围电路简单易实现。因此采用方案三。 2.2 DDS模块方案论证 方案一:采用高性能DDS 单片电路的解决方案 随着微电子技术的飞速发展,目前高超性能优良的DDS 产品不断推出,主要有Qualcomm 、AD、Sciteg 和Stanford 等公司单片电路(monolithic)。Qualcomm 公司推出了DDS 系列Q2220 、Q2230 、Q2334 、Q2240 、Q2368 ,其中Q2368 的时钟频率为130MHz,分辨率为0.03Hz,变频时间为0.1μs;美国AD 公司也相继推出了他们的DDS 系列:AD9850 、AD9851 、可以实现线性调频

多路信号发生器的设计

毕业论文(设计)材料题目:多路信号发生器的设计 学生姓名:施乾东 学生学号:0908030228 系别:电气信息工程学院 专业:电子信息工程 届别:2013 指导教师:张大雷

一、毕业论文(设计)任务书 要求完成的主要任务及达到的目标 信号发生器是一种能提供各种频率、波形和输出电平电信号,常用作测试的信号源或激励源的设备。其又称信号源或振荡器,是可以测试产生所需参数的电测试信号的仪器。按信号波形可分为正弦信号、函数(波形)信号、脉冲信号和随机信号发生器等四大类,在生产实践和科技领域中有着广泛的应用。多路信号发生器是信号发生器的一种,其利用单片机控制和DAC0832进行数模转换,通过硬件电路和软件程序相结合,可正弦波、方波、三角波、梯形波及其他任意波形,波形的频率通过软件控制、幅度通过硬件在一定范围内可改变。该信号发生器相较于其他信号发生器,具有体积小、价格低、性能稳定的优点。 要求设计完成一个多路信号发生器: ?了解多种时钟信号的产生方法 ?了解虚拟仪器的具体实际应用 ?通过单片机控制74LS138译码器,对DAC0832进行片选控制基于共阴/阳数码管的方式研究 ?将所学的知识通过设计信号发生器实验可产生各种波形如正弦波、方波、三角波、锯齿波等;来加深对虚拟仪器技术的深层理解 要求所设计的多路信号发生器具有以下功能: 1、能够产生正弦波、矩形波、锯齿波等基本波形信号,并通过修改程序能够产 生任意波形的信号; 2、通过两个按键控制波形类型和频率,一个按键控制信号类型,按下键一依次 改变信号类型和停止产生波形;另一个按键改变信号频率; 3、信号频率、幅值、占空比可调 工作进度要求 2011.12.1——2011.12.28 撰写开题报告 2011.12.29——2011.12.31 拟定论文提纲 2012.1.1——2012.2.28 撰写论文初稿 2012.3.1——2012.4.31 论文修改 2012.5.1——2012.5.14 论文定稿

基于51单片机的信号发生器设计报告

基于51单片机的信号发生器设计报告 二零一四年十二月十一日

摘要 根据题目要求以及结合实际情况,本文采用一种以AT89C51单片机为核心所构成的波形发生器,可产生方波、三角波、正弦波、锯齿波等多种波形,波形的频率可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。本设计经过测试,性能和各项指标基本满足题目要求。 关键词:信号发生器 DAC0832芯片 LM358运放 89C51芯片

目录 摘要...................................................................... 目录...................................................................... 第一章绪论................................................................. 1.1单片机概述........................................................... 1.2信号发生器的概述和分类.............................................. 1.3问题重述及要求....................................................... 第二章方案的设计与选择................................................... 2.1方案的比较........................................................... 2.2设计原理 ............................................................. 2.3设计思想 ............................................................. 2.4实际功能 ............................................................. 第三章硬件设计............................................................ 3.1硬件原理框图......................................................... 3.2主控电路 ............................................................. 3.3数、模转换电路....................................................... 3.4按键接口电路......................................................... 3.5时钟电路 ............................................................. 3.6显示电路 ............................................................. 第四章软件设计............................................................ 4.1程序流程图........................................................... 参考文献.................................................................... 附录1 电路原理图 .......................................................... 附录2 源程序............................................................... 附录3 器件清单......................................................

基于单片机的多功能信号发生器的系统设计与应用

基于单片机的多功能信号发生器的系统设计与应用 信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。例如在通信、广播、电视系统中,都需要射频(高频)发射,这里的射频波就是载波,把音频(低频)、视频信号或脉冲信号运载出去,就需要能够产生高频的振荡器。在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振成像等,都需要功率或大或小、频率或高或低的振荡器。 随着集成芯片制造工艺的进一步发展,一些高性能的波形产生专用芯片逐渐被应用到该领域并获得成功。波形发生装置的电路设计得到进一步简化,而与此同时,所产生的波形的质量却得到了显著提高。例如应用比较广泛的DDS芯片AD9833系列,能制作出各种频带宽,质量高的波形信号,例如应用高性能的AD9833芯片,可以做出频率1GHZ以上,频率分辨率0.1HZ以下的优质波形[2]。 科技不断发展,在各个领域对信号产生电路提出了越来越高的要求。以往那些只具有单一优势的波形发生装置的应用越来越受到限制。例如用模拟器件构成的波形发生器电路简单可靠、信号频率较高,但可调节性差;采用数字电路为核心的波形发生装置所产生的信号可调节性好,但电路复杂,而频率又不易做的很高。较为理想的波形发生装置应该同时具备多方面的优良品质,信号的频带应该较宽,而且步进精确。另外,微型化也是信号产生装置的发展趋势之一,这样,才能将信号发生装置方便的嵌入到各种仪器设备中。随着芯片制造工艺的不断提高,性能更高、体积更小的专用信号处理芯片必将会越来越多地应用到信号产生电路中,使更高质量的信号的产生成为可能。 DDS技术的实现,一般有如下几种可选的方案。首先是使用专用的DDS芯片,例如应用比较广泛的DDS芯片AD9833系列。专用DDS芯片性能可靠,特别是在高频领域,有着无可替代的地位。但在中低频领域,专用DDS芯片却不一定是唯一的选择。

信号发生器的设计实现

电子电路综合设计 总结报告 设计选题 ——信号发生器的设计实现 姓名:*** 学号:*** 班级:*** 指导老师:*** 2012

摘要 本综合实验利用555芯片、CD4518、MF10和LM324等集成电路来产生各种信号的数据,利用555芯片与电阻、电容组成无稳态多谐振荡电路,其产生脉冲信号由CD4518做分频实现方波信号,再经低通滤波成为正弦信号,再有积分电路变为锯齿波。此所形成的信号发生器,信号产生的种类、频率、幅值均为可调,信号的种类、频率可通过按键来改变,幅度可以通过电位器来调节。信号的最高频率应该达到500Hz以上,可用的频率应三个以上,T,2T,3T或T,2T,4T均可。信号的种类应三种以上,必须产生正弦波、方波,幅度可在1~5V之间调节。在此过程中,综合的运用多科学相关知识进行了初步工程设计。

设计选题: 信号发生器的设计实现 设计任务要求: 信号发生器形成的信号产生的种类、频率、幅值均为可调,信号的种类、频率可通过按键来改变,幅度可以通过电位器来调节。信号的最高频率应该达到500Hz以上,可用的频率应三个以上,T,2T,3T 或T,2T,4T均可。信号的种类应三种以上,必须产生正弦波、方波,幅度可在1~5V之间调节。 正文 方案设计与论证 做本设计时考虑了三种设计方案,具体如下: 方案一 实现首先由单片机通过I/O输出波形的数字信号,之后DA变换器接受数字信号后将其变换为模拟信号,再由运算放大器将DA输出的信号进行放大。利用单片机的I/O接收按键信号,实现波形变换、频率转换功能。

基本设计原理框图(图1) 时钟电路 系统的时钟采用内部时钟产生的方式。单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。晶振频率为11.0592MHz,两个配合晶振的电容为33pF。 复位电路 复位电路通常采用上电自动复位的方式。上电自动复位是通过外部复位电路的电容充电来实现的。 程序下载电路 STC89C51系列单片机支持ISP程序下载,为此,需要为系统设计ISP下载电路。系统采用MAX232来实现单片机的I/O口电平与RS232接口电平之间的转换,从而使系统与计算机串行接口直接通信,实现程序下载。 方案一的特点: 方案一实现系统既涉及到单片机及DA、运放的硬件系统设计,

多波形信号发生器设计 电子技术课程设计

湖南文理学院课程设计报告 课程名称:电子技术课程设计 教学院部:电气与信息工程学院 专业班级:通信工程08101班 学生姓名:林洪湖(200816020143) 指导教师:邱德润 完成时间:2010 年6月25日 报告成绩:

目录 1.绪论 (3) 信号发生器现状 (3) 2.系统设计 (3) 控制芯片的选择 (4) 3.硬件电路的设计 (4) 3.1基本原理: (4) 3.2各部分电路原理 (8) 4.软件设计 (14) 4.1主程序流程图 (14) 4.2子程序流程图 (15) 5.测试结论 (18) 5.1软件仿真结果 (19) 5.2硬件测试结果 (21) 参考文献 (21)

多波形信号发生器设计 1.绪论 1.1信号发生器现状 波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。 信号发生器作为一种常见的应用电子仪器设备,传统的可以完全由硬件电路搭接而成,如采用555振荡电路发生正弦波、三角波和方波的电路便是可取的路径之一,不用依靠单片机。但是这种电路存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点。在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟机械振动等领域常常要用到低频信号源。而由硬件电路构成的低频信号其性能难以令人满意,而且由于低频信号源所需的RC很大;大电阻,大电容在制作上有困难,参数的精度亦难以保证;体积大,漏电,损耗显著更是其致命的弱点。一旦工作需求功能有增加,则电路复杂程度会大大增加。 本次用要用到的有函数发生器5G8038、集成振荡器E1648、集成定时器555/556. 2.系统设计 2.1系统方案 方案:采用函数信号发生器5G8038集成模拟芯片,它是一种可以同时产生方波、三角波、正弦波的专用集成电路。但是这种模块产生的波形都不是纯净的波形,会寄生一些高次谐波分量,采用其他的措施虽可滤除一些,但不能完全滤除掉。

简易信号发生器设计制作

简易信号发生器设计制作 一、训练目的 (1)掌握正弦波、三角波、矩形波和方波发生电路的工作原理; (2)学会正弦波、三角波、矩形波和方波发生电路的设计方法; (3)进一步熟悉电子线路的安装、调试、测试方法。 二、工作原理 正弦波、三角板、矩形波是电子电路中常用的测试信号,如测试放大器的增益、通频带等均要用到正弦信号作为测试信号。下面分别介绍产生这三种信号电路结构和工作原理。 1.正弦信号发生器 正弦信号的产生电路形式比较多,频率较低时常用文氏电桥振荡器,图7-1为实用文氏电桥振荡电路。图中R 1、R 2、R 3、RW 2构成负反馈支路,二极管D 1、D 2构成稳幅电路,C 2、R 11(或R 12或R 13)、C 1、R 21(或R 22或R 23)串并联电路构成正反馈支路,并兼作选频网络。调节电位器RW 2可以改变负反馈的深度,以满足振荡的振幅条件和改善波形。二极管D 1、D 2要求温度稳定性好,特性匹配以确保输出信号正负半周对称,R 4接入用以消除二极管的非线性影响,改善波形失真。如K1接电阻R 11、K2接R 21,并且R 11= R 21=R ,C 1= C 2=C ,则电路的振荡频率为: 1 2f RC π= (7-1) 起振的幅值条件: 1 1f v R A R =+ (7-2) 图7-1 正弦信号发生器 通过调整RW 2可以改变电路放大倍数,能使电路起振并且失真最小。该电路可通过开关K1、K2选择不同的电阻以得到不同频率的信号输出。 2.方波和矩形波发生器

方波发生电路如图7-2,其基本原理是在滞回比较器的基础上增加了由R 4和C 1构成的积分电路,输出电压通过该积分电路送人到比较器的反相输入端。其中R 3 、D Z1和D Z2构成双向限幅电路,这样就构成了方波发生器电路,其工作原理如下: 假设在接通电源瞬间,输出电压o v 为Z V +(稳压二极管D Z1、D Z2额定工作时的稳压值),这时比较器同相端的输入电压为 2 12 Z R v V R R +≈ + (7-3) 同时输出电压o v 会通过电阻R 4给C 1充电,反相端的输入电压v -就会逐步升高,当反向输入端的电压v -略大于同相端输入电压v +时,比较器输出电压立即从Z V +翻转为Z V -,这时输出端电压o v 为Z V -,比较器同相端输入电压v +'为 2 12 Z R v V R R +'≈- + (7-4) 这时输出的电压o v 会通过R 4对C 1进行反向充电,当反相输入端的电压略低于v +'时,输出状态再翻转回来,如此反复形成方波信号。所产生方波信号的频率为 41 1 2f R C = 方波 (7-5) R 4 o 图7-2 方波发生电路

函数信号发生器设计方案

函数信号发生器的设 计与制作 目录 一.设计任务概述 二.方案论证与比较 三.系统工作原理与分析 四.函数信号发生器各组成部分的工作原理 五.元器件清单 六.总结 七.参考文献

函数信号发生器的设计与制 一.设计任务概述 (1)该发生器能自动产生正弦波、三角波、方波。 (2)函数发生器以集成运放和晶体管为核心进行设计 (3)指标: 输出波形:正弦波、三角波、方波 频率范围:1Hz~10Hz,10Hz~100Hz 输出电压:方波VP-P≤24V,三角波VP-P=8V,正弦波VP-P>1V; 二、方案论证与比较 2.1·系统功能分析 本设计的核心问题是信号的控制问题,其中包括信号频率、信号种类以及信号强度的控制。在设计的过程中,我们综合考虑了以下三种实现方案: 2.2·方案论证 方案一∶采用传统的直接频率合成器。这种方法能实现快速频率变换,具有低相位噪声以及所有方法中最高的工作频率。但由于采用大量的倍频、分频、混频和滤波环节,导致直接频率合成器的结构复杂、体积庞大、成本高,而且容易产生过多的杂散分量,难以达到较高的频谱纯度。 方案二∶采用锁相环式频率合成器。利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需要频率上。这种频率合成器具有很好的窄带跟踪特性,可以很好地选择所需要频率信号,抑制杂散分量,并且避免了量的滤波器,有利于集成化和小型化。但由于锁相环本身是一个惰性环节,锁定时间较长,故频率转换时间较长。而且,由模拟方法合成的正弦波的参数,如幅度、频率相信都很难控制。 方案三:采用8038单片压控函数发生器,8038可同时产生正弦波、方波和三角波。改变8038的调制电压,可以实现数控调节,其振荡范围为0.001Hz~300K 方案四:采用分立元件设计出能够产生3种常用实验波形的信号发生器,并确定了各元件的参数,通过调整和模拟输出,该电路可产生频率低于1-10Hz的3种信号输出,具有原理简单、结构清晰、费用低廉的优点。该电路已经用于实际电路的实验操作。 三、系统工作原理与分析 采用由集成运算放大器与场效应管共同组成的方波—三角波—正弦波函数发生器的设计方法,先通过比较器产生方波,再通过积分器产生三角波,最后通过场效应管正弦波转换电路形成正弦波,波形转换原理图如下:

低频信号发生器设计开题报告

1 研究的目的及其意义 随着电子测量及其他部门对各类信号发生器的广泛需求及电子技术的迅速发展,促使信号发生器种类增多,性能提高。尤其随着70年代微处理器的出现,更促使信号发生器向着自动化、智能化方向发展。现在,信号发生器带有微处理器,因而具备了自校、自检、自动故障诊断和自动波形形成和修正等功能,可以和控制计算机及其他测量仪器一起方便的构成自动测试系统。当前信号发生器总的趋势是向着宽频率覆盖、低功耗、高频率、精度、多功能、自动化和智能化方向发展。在科学研究、工程教育及生产实践中,如工业过程控制、教学实验、机械振动试验、动态分析、材料试验、生物医学等领域,常常需要用到低频信号发生器。而在我们日常生活中,以及一些科学研究中,锯齿波和正弦波、矩形波信号是常用的基本测试信号。譬如在示波器、电视机等仪器中,为了使电子按照一定规律运动,以利用荧光屏显示图像,常用到锯齿波产生器作为时基电路。信号发生器作为一种通用的电子仪器,在生产、科研、测控、通讯等领域都得到了广泛的应用。但市面上能看到的仪器在频率精度、带宽、波形种类及程控方面都已不能满足许多方面实际应用的需求。加之各类功能的半导体集成芯片的快速生产,都使我们研制一种低功耗、宽频带,能产生多种波形并具有程控等低频的信号发生器成为可能。 便携式和智能化越来越成为仪器的基本要求,对传统仪器的数字化,智能化,集成化也就明显得尤为重要。平时常用信号源产生正弦波,方波,三角波等常见波形作为待测系统的输入,测试系统的性能。单在某些场合,我们需要特殊波形对系统进行测试,这是传统的模拟信号发生器和数字信号发生器很难胜任的。利用单片机,设计合适的人机交互界面,使用户能够通过手动的设定,设置所需波形。该设计课题的研究和制作全面说明对低频信号发生系统要有一个全面的了解、对低频信号的发生原理要理解掌握,以及低频信号发生器工作流程:波形的设定,D/A 转换,显示和各模块的连接通信等各个部分要熟练联接调试,能够正确的了解常规芯片的使用方法、掌握简单信号发生器应用系统软硬件的设计方法,进一步锻炼了我们在信号处理方面的实际工作能力。 2 国内外研究现状 在 70 年代前,信号发生器主要有两类:正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。这个时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信

简易函数信号发生器

课程设计任务书 (一)设计目的 1、掌握信号发生器的设计方法和测试技术。 2、了解单片函数发生器IC8038的工作原理和应用。 3、学会安装和调试分立元件与集成电路组成的多级电子电路小系统。 (二)设计技术指标与要求 1、设计要求 (1)电路能输出正弦波、方波和三角波等三种波形; (2)输出信号的频率要求可调; (3)拟定测试方案和设计步骤; (4)根据性能指标,计算元件参数,选好元件,设计电路并画出电路图; (5)在面包板上或万能板或PCB板上安装电路; (6)测量输出信号的幅度和频率; (7)撰写设计报告。 2、技术指标 频率范围:100Hz~1KHz 1KHz~10KHz; 输出电压:方波V P-P≤24V,三角波V P-P=6V,正弦波V P-P=1V;方波t r小于1uS。 (三)设计提示 1、方案提示: (1)设计方案可先产生正弦波,然后通过整形电路将正弦波变成方波,再由积分电路将方波变成三角波;也可先产生三角波-方波,再将三角波变成正弦波。 (2)也可用单片集成芯片IC8038实现,采用这种方案时要求幅度可调。 2、设计用仪器设备: 示波器,交流毫伏表,数字万用表,低频信号发生器,实验面包板或万能板,智能电工实验台。 3、设计用主要器件: (1)双运放NE5532(或747)1只(或741 2只)、差分管3DG100 4个、电阻电容若干; (2)IC8038、数字电位器、电阻电容若干。 4、参考书: 《电子线路设计·实验·测试》谢自美主编华中科技大学出版社 《模拟电子技术基础》康华光主编高等教育出版社 《模拟电子技术》胡宴如主编高等教育出版社 (四)设计报告要求 1、选定设计方案; 2、拟出设计步骤,画出设计电路,分析并计算主要元件参数值; 3、列出测试数据表格; 4、调试总结,并写出设计报告。 (五)设计总结与思考 1、总结信号发生器的设计和测试方法;

函数信号发生器设计报告

函数信号发生器设计报告 目录 一、设计要求 .......................................................................................... - 2 - 二、设计的作用、目的 .......................................................................... - 2 - 三、性能指标 .......................................................................................... - 2 - 四、设计方案的选择及论证 .................................................................. - 3 - 五、函数发生器的具体方案 .................................................................. - 4 - 1. 总的原理框图及总方案 ................................................................. - 4 - 2.各组成部分的工作原理 ................................................................... - 5 - 2.1 方波发生电路 .......................................................................... - 5 - 2.2三角波发生电路 .................................................................... - 6 - 2.3正弦波发生电路 .................................................................. - 7 - 2.4方波---三角波转换电路的工作原理 ................................ - 10 - 2.5三角波—正弦波转换电路工作原理 .................................. - 13 - 3. 总电路图 ....................................................................................... - 15 - 六、实验结果分析 ................................................................................ - 16 - 七、实验总结 ........................................................................................ - 17 - 八、参考资料 ........................................................................................ - 18 - 九、附录:元器件列表 ........................................................................ - 19 -

相关文档
最新文档