函数发生器设计论文

2024-06-12

函数发生器设计论文(精选9篇)

1.函数发生器设计论文 篇一

基于CPLD的三相多波形函数发生器设计

摘要:介绍了基于可编程逻辑器件CPLD和直接数字频率合成技术(DDS)的三相多波形函数发生器的基本原理,并在此基础上给出了基于CPLD的各模块设计方法及其VHDL源程序。

关键词:CPLD;直接数字频率合成;函数发生器;VHDL

1 引言

直接数字频率合成 ?Direct Digital Synthesis ,DDS?是20世纪60年代末出现的第三代频率合成技术。该技术从相位概念出发,以Nyquist时域采样定理为基础,在时域中进行频率合成。DDS频率转换速度快,频率分辨率高,并在频率转换时可保持相位的连续,因而易于实现多种调制功能。DDS是全数字化技术,其幅度、相位、频率均可实现程控,并可通过更换波形数据灵活实现任意波形。此外,DDS易于单片集成,体积小,价格低,功耗小,因此DDS技术近年来得到了飞速发展,其应用也越来越广泛。

基于CPLD和DDS技术的函数发生器可以实现信号波形的多样化,而且方便可靠,简单经济,系统易于扩展,同时可大大提高输出信号的带宽。

2 系统原理

2.1 CPLD内部设计

CPLD的内部结构框图如图1所示,图中,首先由控制寄存器将外部控制器(如单片机)送入的数据转换为频率和幅度控制字;然后再由分频器根据频率控制字进行分频并将输出作为寻址计数器的时钟;寻址计数器的寻址空间为360字节,可对ROM中的查找表进行寻址;而通过模360加法器可以产生120°的相位差。

(本网网收集整理)

2.2 CPLD的外围电路

图2所示是CPLD的外围电路连接图。图中,CPLD幅度控制字经D/A转换输出后,可作为查找表输出DAC的参考电压,该参考电压可通过改变幅度控制字来进行改变,从而改变输出信号的幅度。

3 CPLD各模块的设计

3.1 控制寄存器的设计

控制寄存器设计主要是将外部控制器输入的.数据转换为频率和幅度控制字。其程序代码如下:

--////////////调库////////////--

entity controller is

port(clk:in std_logic;

datain:in std_logic;

ad:out std_logic_vector(16 down to 0);

freq:out std_logic_ vector(16 down to 0));

end;

architecture dataflow of controller is

signal out1:std_logic_vector(16 down to 0);

begin

s2p:process(clk,datain)

variable temp:std_logic_vector(16 down to 0);?

begin

if clk'event and clk=‘1’ then

temp:=temp(15 down to 0)&datain;

end if;

out1<=temp;

end process s2p;

mux:process(out1(16))

begin

if out1(16)=‘1’ then

ad<=out1(15 down to 0); --1号寄存器为幅度控制字

else

freq<=out1(15 downto 0); --0号寄

存器为频率控制字

end if;

end process mux;

end;

图3

3.2 分频比可变的分频器模块设计

该设计主要是根据频率控制字决定分频倍数,从而输出与频率控制字相对应的频率时钟,此模块的输出可作为寻址计数器的时钟。具体代码如下:

process?clk? --clk为外部时钟(如晶振)

variable temp,fen:std_logic_vector(15 down to 0);?

constant temp1:std_logic_vector(15 down to 0):=“1111111111111111”;

variable a:std_logic;

begin

fen:=temp1-fen_in; --使分频后的频率正比于频率控制字

if clk=‘1’ and clk'event then

if temp=(‘0’&fen(15 down to 1)) then --相当于除2运算

a:=not a;

temp:=temp+1;

elsif temp=fen then

a:=not a;

temp:=“0000000000000000”;

else

temp:=temp+1;

end if;

end if;

fen out<=a; --fen out 为输入时钟的频率fen倍分频

end process;

3.3 寻址计数器设计

寻址计数器主要用于产生对ROM寻址输出波形数据的寻址信号,寻址空间为360字节,具体的程序代码如下:

process(clk)

variable temp:integer range 0 to 359;

begin

if clk=‘1' and clk'event then

if temp<359 then

temp:=temp+1;

else

temp:=0;

end if;

end if;

adress<=temp;

end process;

3.4 模360加法器设计

此模块用来产生120°的相移,以形成三相相差为120°的输出波形。由于寻址空间为360字节,故在输出寻址数大于360时,须对360取模。程序如下:

process(adress_in)

variable temp?integer range 0 to 511;

begin

temp:=adress in+120;--相移120°

if temp<360 then;

adress out<=temp?

else

adress_out<=temp-360;--综合工具不支持取模运算,故采用减法器来实现

end if;

end process;

3.5 查找表ROM设计

此模块主要用于存储各种波形数据,以便通过寻址计数器寻址输出并经D/A转换来输出各种波形,其中包括正弦波、三角波、方波以及锯齿波。代码如下:

process(adress,sel)

begin

if sel=“00” then --sel为波形选择端口,选择输出波形,00为正弦波

case adress is

when 000=>data<=0; when 001=>data<=4; ......--正弦波查找表

when others=>null;

end case;

else if sel=“01” then --01输出方波,

if adress<180 then

data<=255;

else

data<=0;

end if;

else if sel=“10” then --锯齿波

data<=adress/2;

else --三角波

if adress<180 then

data<=adress;

else

data<=adress-180;

end if;

end if;

end process;

由以上各模块组成的三相波形发生器原理图如图3所示。

4 结束语

此方案可以方便地输出多种三相波形,而且,由于CPLD具有可编程重置特性,因而可以方便地改变控制方式或更换波形数据,而且简单易行,易于系统升级,同时具有很高的性价比。

2.函数发生器设计论文 篇二

随着世界高科技技术的发展,中国电子测量仪器走进了高科技发展的道路。本设计利Edu Kit-IV型实验箱及该实验箱上的DAC模块,使用Intel PXA270处理器,同时结合VS2005集成开发环境[1],开发了一个便携的智能函数发生器原型。该系统具有结构简单、成本低、使用方便和实用价值高等优点。

2 系统总体设计

整个智能型函数发生器原型主要有三个功能模块:分别是“产生单一波形”模块、“产生组合波形”模块和“相关说明”模块。“相关说明”模块相对比较简单,描述了本系统主要能够实现的功能。而“产生单一波形”模块和“产生组合波形”模块则需要调用各自的子模块才能实现产生波形信号的功能,其功能图如图1。

3 系统详细设计

本阶段的主要任务是确定每个功能模块的算法和数据结构。主要分为系统人机界面设计、算法说明和系统各个功能模块详细说明三个部分。

3.1 系统人机界面设计

本系统主要由“产生单一波形”模块、“产生组合波形”模块和“相关说明”模块三个功能模块组成,为了使设计出来的界面简单明了,本系统采用选项卡的形式来分别设计各个模块,具体如图2所示。

3.2 算法说明

本系统中的波形信号最终显示在输出端子或LCD屏上,因此,主要包括“向输出端子送波形信号”和“在LCD屏上画模拟波形”两个部分。如图3是一种方波信号的形成原理。在这里,设周期值为m_cycle,幅度值为m_range。

由于每个周期内只有高、低两种电平的交替,并且这两种电平持续的时间相等。因此,每个周期m_cycle时间内要向DAC模块输入两次数据(一次高电平数据和一次低电平数据),间隔m_cycle/2微秒的时间。在每输入一次数据后的m_cycle/2微秒时间内,DAC模块的电压持续为高电平或低电平。幅度方面,由于DAC模块的转换精度为8位,在软件上的精度可达到2的8次方,范围从0~255,即DAC模块理论上能输出的最大电压值是255mV。而实际所用的DAC模块能输出的最大电压值是3.3V,鉴于理论上DAC模块能输出的最大电压值与实际上的最大值不同,因此要做一个转换,转换公式如下:

理论幅度值=实际幅度值×理论电压值÷实际电压值

当实际幅度值=m_range时,理论幅度值=m_range*255mV/3300mV。又由于DAC模块的范围是0到255,那么中间值就为127(假设用中间值代表X轴所在的纵坐标位置处)。因此对于方波,前半周期输送给DAC模块的数字量就是127+m_range*255/3300,而后半周期输送给DAC模块的数字量是127-m_range*255/3300(注意:为了保证127-m_range*255/3300不为负数,m_range*255/3300的最大值只能达到127),最后就可以在输出端子上看到方波了[2]。

结束语

经过了几个月的工作,我终于完成了《基于ARM9的智能函数发生器的设计》的论文。虽然本系统已经完成了相对比较强大的功能,但比较遗憾的是不能让LCD屏上的波形和输出端子上的波形同步显示,即不能使LCD屏和输出端子显示同步的动态波形,如果完成此功能,就可以用LCD屏直接代替输出端子显示动态波形了但是,在LCD屏上显示静态波形这一功能也是比较有意义的,因为用户选择了特定的波形种类、周期、幅度和相位值之后,LCD屏显示的将是静态波形,即某特定时刻下的波形,可以满足更多用户的需求。

摘要:传统的函数发生器成本高、精度低、体积大,嵌入式产业的快速发展为设计成本低、精度高和体积小的便携性函数发生器提供了技术基础,本设计就是利用相关的嵌入式技术设计一个成本低、精度高和体积小的便携性智能函数发生器原型。本文主要介绍了智能函数发生器原型的设计方案及设计实现过程。

关键词:函数发生器,DAC模块,WinCE PXA270

参考文献

[1]宋坤,刘锐宁,李伟明.Visual C++开发技术大全[M].北京:人民邮电出版社,2008.

3.《对数函数》教学设计 篇三

[关键词]指数函数;对数函数;反函数;合作;探究

一、教材分析

本节课是新课标高中数学必修一中第三章对数函数内容的第二课时,也就是对数函数的入门。对数函数对于学生来说是一个全新的函数模型,学习起来比较困难。而对数函数又是本章的重要内容,在高考中占有一定的分量,它是在指数函数的基础上,对函数类型的拓广,同时在解决一些日常生活问题及科研中起十分重要的作用。通过本节课的学习,可以让学生理解对数函的概念,从而进一步深化对对数模型的认识与理解。同时,通过对数概念的学习,对培养学生对立统一,相互联系、相互转化的思想,培养学生的逻辑思维能力都具有重要的意义。

二、学情分析

大部分学生学习的自主性较差,主动性不够,学习有依赖性,且学习的信心不足,对数学存在或多或少的恐惧感。通过对指数函与指数函数的学习,学生已多次体会了对立统一、相互联系、相互转化的思想,并且探究能力、逻辑思维能力得到了一定的锻炼。因此,学生已具备了探索发现研究对数函数定义的认识基础,故应通过指导,教会学生独立思考、大胆探索和灵活运用类比、转化、归纳等数学思想的学习方法。

三、设计思路

学生是教学的主体,本节课要给学生提供各种参与机会。为了调动学生学习的积极性,使学生化被动为主动。本节课我利用多媒体辅助教学,教学中我引导学生从指数函数出发,体会引入对数函数的必要性,实际上是渗透反函数的思想,利用指数函数的性质,研究对数函数的性质,提升学生逻辑思维能力。在教学重难点上,步步设问、启发学生的思维,通过课堂练习、探究活动,学生讨论的方式来加深理解,很好地突破难点和提高教学效率。让学生在教师的引导下,充分地动手、动口、动脑,掌握学习的主动权。

四、教学目标

1.理解对数函数的概念,理解对数函数的性质,掌握以上知识并形成技能。

2.通过对数函数的学习,树立相互联系,相互转化的观点,渗透数形结合,分类讨论的思想。

3.通过学生分组探究进行活动,掌握对数函数的重要性质。通过做练习,使学生感受到理论与实践的统一。

4.培养学生的类比、分析、归纳能力,严谨的思维品质以及在学习过程中培养学生探究的意识。

五、重点与难点

重点 :(1)对数函数的概念;(2)对数函数与指数函数的相互转化。

难点 :(1)对数函数概念的理解;(2)对数函数性质的理解。

六、教学过程设计

1.复习导入

(1)复习提问:

问题1:指数函数y=ax的定义域为____;值域为______;当x值增大时,y值应如何变化?此函数图像还有那些特征?

学生1:定义域为R,值域为(0,+∞),当01时,当x增大时,y值应增大;

学生2:图象恒过(0,1);图象恒x轴上方,并与x轴无限靠近;

学生3:当底数互为倒数,两函数图像关于y轴对称;当a>1时,底数越大图像越靠近y轴,当0

指数函数的图象和性质。

设计意图:设计的提问既与本节内容有密切关系,又有利于引入新课,为学生理解新知识清除了障碍,有意识地培养学生分析问题的能力。

问题2:指数函数y=ax,若把y看着已知值,解关于x的未知方程,则x=________;

学生1:x=loga y;;

教师:对于y在正实数集内的每一个确定的值,在实数集R内都有唯一确定的x值和它对应。根据函数的定义,这个式子确定了正实数集上的一个函数关系,其中y是自变量,x是因变量。函数x=logay(a>0且a≠1)叫做对数函数。习惯上把x当作自变量,y当作因变量,因此对数函数通常写成y=logax (a>0且a≠1)。教師板书对数函数定义;

数学定义:一般地,把函数y=logax (a>0且a≠1)叫做对数函数,其中x是自变量,函数的定义域是(0,+∞)。

提问: (1)在函数中,为什么要限定a>0且a≠1?

(2)为什么对数函数y=logax (a>0且a≠1)的定义域是(0,+∞)?

学生1:(1)根据对数与指数式的关系,知y=logax可化为ay=x,由指数的概念,若使ay=x有意义,必须规定a>0且a≠1。

学生2:(2)因为y=logax可化为ay=x,不管y取何值,由指数函数的性质,ay>0,所以。

教师:上述同学分析的很到位,紧紧把握了对数函数形成过程,实际上对数函数和指数函数是等价的,只是形式发生变化,那么对数函数的性质也就可以转化到指数函数中去得到。如对数函数的定义域是,那么值域应该是多少?

学生:R;

问题3:研究对数函数y=logax的解析式,你能得到对数函数的图像会有哪些特征?

学生1:图像应该在y轴的右侧;

教师:为什么?

学生1:因为定义域为;

学生2:对数函数的值域为R;当a>1时,对数函数是增函数;当0

教师:为什么?

学生2:根据指对数互换关系式,可以转化为指数函数ay=x,当a>1时,指数函数是一个增函数,把y看成自变量,x看成因变量,y越大,x也会越大,反之,x越大,y也会越大;因此,对数函数是增函数;同理,当0

教师:为什么?

学生2:根据单调性等价性质;

教师:大家同意学生2的看法吗?

同学们:同意!

教师:我也同意学生2的看法,请为他精彩的回答鼓掌,(同学们都鼓掌),实际上学生2给我们提供了一个研究对数函数性质的一个方法;请问是什么方法?

学生3: 指对数互换,把对数函数转化成指数函数;

教师:说的非常好,利用这个方法,我们还能得到那些对数函数的性质?

学生4:对数函数是以y轴为渐近线。

教师:哪是为什么呢?

学生4:根据学生2提供的方法,实际就是把指数函数中的x和y互换,指数函数的图像是以x轴为渐近线,把x看成y,对数函数图像是以y轴为渐近线;再比如,指数函数图像恒过点(0,1),对数函数图像恒过点(1,0);

教师:学生4已经很好揭示指数函数和对数函数的关系,请同学们课后认真思考对数函数和指数函数之间的微妙关系;我们刚才是通过对数函数的解析式了解到对数函数的性质,接下来,每位同学一定都很想知道对数函数图像到底长的是什么模样,我也从一个具体的例子出发来揭示对数函数的图像;

问题4:在同一坐标系作出对数函数的图像:

(1)y=log2x和 (2)y=log3x和

注:(同过这组例子让学生从两个角度画出对数函数的图像,一个利用对数函数的性质画图像,一个是利用描点法画函数图像。)

教师:通过这组图像同学们能得出什么样的结论,为什么?

学生5:对数函数y=logax的图像与的图像关于关于x轴对称,因为,所以自变量相同,函数值取相反数。

教师:大家同意学生5的看法吗?

同学们:同意!

教师:请同学们画出a>1,0

问题5:请同学们归纳一下这节课学到对数函数有哪些性质?

对数函数y=logax (a>0,且a≠1)性质如下:

(1)定义域:(0,+∞);

(2)值域:R;

(3)图象位于y轴的右方,以y轴为渐近线;

(4)当0

(5)当a>1时,此函数在(0,+∞)上是增函数。

(6) 圖象恒过定点(1,0)。

(7)当a>1时,底数越大图象越靠近x轴;

(8)当0

例1。 求下列函数的定义域:

(1)y=log a x2(2);

例2。(1)比较log 23与log 23。5的大小;

(2)已知,求m的取值范围。

思考题:求函数的定义域。

最后一个问题:

通过本节课的学习,你有哪些收获?

七、作业(略)

八、课后反思

4.简易函数信号发生器设计.doc 篇四

本方案主要用集成运放LM324和74HC04等元器件设计组成一个简易函数信号发生器。该函数信号发生器主要由振荡电路、模拟比较器电路、二阶RC有源低通滤波器电路和反相放大器电路等四部份组成。

振荡电路形成方波,再经模拟比较器电路升高幅度完成输出;二阶RC有源低通滤波器电路形成正弦波,再经过电位器实现1~12V可调。由此构成了一个简易的函数信号发生器。

本实验主要通过使用Orcad、DXP软件等完成电路的软件设计。

目 录 方案比较与选择(须详细阐述创新点或新见解)························· 3 2 电路分析与仿真················································································ 5 3电路板制作、焊接、调试 ······························································· 11 3.1 软件制作 ················································································ 11 3.2 硬件制作 ················································································ 13 3.3 电路板调试 ··········································································· 14 4讨论及进一步研究建议 ··································································· 18 5课程设计心得 ·················································································· 18 6 Abstract ····························································································· 19 7参考文献 ·························································································· 20

一、方案分析:

方案一:

方案

二、R3U1A1274HCT04R2R165k6.5kC150nvoR5210kLM324-1U2A274HCT043voVCC310k10kVCC1U3A+V+4R40OUTV-1R620kvo1VCC211R7C2100nR8vo11k1kC3R93VCC1U4A41k0V++OUT-V-1vo2C4vo3R1210kR13vo310kR14210kLM3243VCC1U7A+4V+0100n2LM324100nOUT-V-1Vo4VCC211R100VCC2R172kR112kVCC1VCC2V2-9Vdc5VdcVCC3V340k0R16112k009VdcV10

以上就是我们所查阅到的两个方案,对于方案一,此方案对比方案二,增加了由方波转 变为三角波部分,而且使用电位器来分压,方波--三角波部分主要是同一个积分器和一 个比较器组成的.积分器部分中的RC可以调整三角波的频率,而比较器部分可以调整三角

波的幅值,理论上存在很大的优越性,但经过仿真,却发现输出波形失真较大,跟理论有较大差别,而反复调试后没能改正,于是转向执行方案二,方案二虽然少了三角波部分,但经仿真,输出波形比较接近理想正弦波,而且此方案简单明了,各部分功能清晰,更易于操作。故最终选择方案二。

二、电路分析与仿真

1、多谐振荡器

由CMOS门电路组成的多谐振荡器主要是利用RC电路的充放电特性来实现,以获得所需要的振荡频率.方波电路图

0—5v仿真图如下

参数确定:

因为VDD=5V,74HCT04的输入高电平为3.5V,所以对于第一暂稳态(电压为0时)T1=R2*C1*㏑[VDD/(VDD-Vth)],第二暂稳态T2=R2*C1*㏑(VDD/Vth),T=T1+T2≈R2*C1*㏑4≈1.4*RC.又由f=1KHZ,f=1/T得,f=1/(1.4R2*C1).设C1=100nF,则可求得R2≈7.2K.2、比较器

比较器主要由LM324构成,VCC3=5V,R3=R4=10K,起到分压作用,因此3脚的电压为2.5V,当0—5V方波由2脚进入时,高于2.5V时1脚输出+5V,低于2.5V时1脚输出-5V,因此得到±5V方波.参数选择适合的即可.比较器

±9v仿真图

3、二阶低通滤波器

二阶低通滤波器由LM324和R,C组成,设置它的频率为1.5KHZ,则它的功能是从0到1.5KHZ的低频信号,而对大于1.5KHZ的所有频率则完全衰减.C4作用是过滤正弦波里的直流电压.参数确定:

f=1/(2*3.14*RC)=1.5KHZ,设C=100nF,则可求得R≈1K.因为增益A=1+R10/R11=2,所以取R10=R11=2K.二阶低通滤波器电路图

仿真图

4、反相比例放大器

对上述滤波器得到的正弦波进行放大或缩小,因为vo4=-(R16/R14)*vo3,所以R16/R14比例变化,vo4峰峰值就能由1伏调至12伏。

反相比例放大器电路图

仿真图

幅频响应

相频响应

三、板制作、焊接、调试 3.1、软件制作

1、绘制原理图

1).打开DXP软件,选择FILE,NEW,PCB PROJECT,新建一个项目文件,保存新建的项目文件,在项目文件中新建原理图文件和PCB文件,保存新建的原理图文件和PCB文件。

2).画出下面的原理图(图3.1)。

图3.1

3).双击各元件,更改数值,并通过【Tools】菜单【Annotate】命令来自动编号,校正原理图。

2、生成PCB图

1).在KEEP-OUT LAYER 层画出电气边界,在Mechanicall层画出机械边界。

2).原理图的元器件连接表的载入,打开原理图,打开【Design】菜单中的【Update pcb document„】命令,将PCB导入到PCB文件中。3).元器件布局,按照走线最短的原则放置元件的位置。

4).设定布线规则,步骤是在电气边界内部右击,选择【Design】/[Rules„]打开设置对话框设置相应的选项。

5).布线:先设定为制作单层板,然后使用【Auto Route】菜单中的【All】进行自动布线,打开对话框后,点击右下角的Route All按钮即可。但自动布线一般是不能达到最佳效果的,所以自动布线只是有一个大概的模型,之后还要经过手工调整才能达到想要的效果。

6)、最后做成PCB图如下所示:

3、在DXP中遇到的问题:

1)、布线没有调整线的宽度,用默认的0.25mm的线,但有些同学改为了0.5mm的线打印出来还是很细,这样腐蚀的时候就有可能断掉,所以我们最后又重新把每一根线改为了1mm。

2)、画图的时候没有注意焊盘的大小,虽然打印之前有逐一加大,但由于一开始没有考虑到线与焊盘之间的关系,以至于有些线与焊盘靠得太近,所以不能改太大,所以最后打印出来有些焊盘还是偏小。

3)、没有注意元器件的封装问题。我们一开始电容用的封装是RAD0.3,这个封装两个针脚之间可以穿越一条线,这与实物不相符。再用回RAD0.1封装时,两个针脚之间不穿越

线,所以也得重新布局。封装可以在原理图上改,也可以在PCB图里改。

4)、画线之前忘记设定为单层板,以至于画出来的线有一部分是红色的,后来改为只选取bottom layer,画出来的线就全部是蓝色的了。

5)、用自动布线的时候,系统有些线是重连的,就如地线是经常重连的,我们只需要一条线都共地就可以了;有些线是布置得密,我们就把那些线分开一点。以免敷铜时线会接在一起短路。

3.2、硬件制作

电路板的制作共分为四个部份:

第一、用热敏纸打印DXP电路图。

第二、将用热敏纸打印出来的DXP电路图印在电路板上。首先把用沙纸磨擦过的电路板(能更好地吸碳粉)对准热敏纸电路图封装好,尽量贴紧,然后放进封塑机进行封塑,封塑机的温度要保持在恒温150摄氏度,封塑过程要进行十几个来回,以保证热敏纸上的电路图形态的碳粉能尽量多地印在电路板上。这个过程要持有一定的耐心。有些同学在加热的时候把封塑机上加热/冷悼的健打到冷悼上,以至于虽然进行了二十多个来回,但最后也只是把一部分电路印在了电路板上,既浪费了时间,也浪费了电路板。

第三、电路板去铜。这个过程首先必须要注意安全。首先是调配溶液,溶液总量以刚没盘底为宜,以节省材料。所用的水、过氧化氢、盐酸的比例是2:1:1,但如果要争取时间也可以适当加多盐酸和过氧化氢的量,调配好溶液后,轻轻地把印有电路图的电路板放进去,然后观察板上铜的反应直至除碳粉覆盖的铜外全部铜都反应溶解完全。看到铜被溶解完之后就拿去用清水洗干净。在这一过程中还要注意手套是否穿了。

第四、打孔。这一步也具有一定的危险性,指导老师反复强调要注意安全。打孔时,固定好电路板,先将钻头对准电路板上的需要打孔的点,然后用手操作控制杆快速往下压,这样就可以。在打孔之前最后先调好钻头的转速,打快或太慢都不好。这一步要极具耐心与细心,否则容易出事故导致前功尽弃。

电路板的制作也就完成了,接下来就到了电路板的焊接。首先,测试好元器件的值,然后对照电路图对号入座,由于我们的布线比较细,所以在焊接的过程中一定要小心,否则很容易就会发生短路现象。

3.3电路板调试

电路板的制作与焊接都完成后,就到了电路的调试过程。连接电源,这一过程可先用万用表测量给出是否为±9V,连到器件上的时候千万不要接错工作电压,不然会烧掉运放LM324。

1、观察给+5V的方波输出:示波器一端接多谐振荡器输出测试点,一端接地;观察输出波形如图

3.1,该图为为输出幅度+5V

方波。

图3.1

2、观测±9V的方波输出:将示波器另一端接比较器输出点,这个主要是观测幅度是否达到±9V。如图3.2:

图3.2

4、最后观测输出波:经滤波放大后 如图3.3

图3.3

最后,因为我们用是电位器分压,而实际给出的正弦波与仿真时的Vpp相差较多,仿真时可以达到Vpp=14V,而实际出来的只是9V,最后因为实际与仿真相差过大,从而用电位器不能分到12V,这是本电路的一个缺点。

四、讨论及进一步研究建议

本设计虽然最终实现了正弦波形的输出,但仍存在较大的不足,尤其是多谐振荡器输出的方波不能实现占空比的调整,这就使最后输出的正弦波形的可调性产生了很大的局限性,这对一个函数信号发生器而言显然是个很大的缺陷,但由于在设计过程中的疏忽而最终没能实现这一功能,实在是一大败笔。另外,对于方案一中的电路,虽然我们不知什么原因没能通过仿真而最终舍弃了,但理论上确实存在着很大的可行性,尤其是三角波部分的电路,相当于一个过渡,使得方波到正弦波的转换更加自然,最终输出的波形当然就更加接近正弦波了,所以如果在我们的电路上再加上调节占空比与三角波电路的部分将使电路更加理想。

五、课程设计心得

通过对函数信号发生器的设计,我深刻认识到了“理论联系实际”的这句话的重要性与真实性。而且通过对此课程的设计,我不但知道了以前不知道的理论知识,而且也巩固了以前知道的知识。最重要的是在实践中理解了书本上的知识,明白了学以致用的

真谛。也明白老师为什么要求我们做好这个课程设计的原因。他是为了教会我们如何运用所学的知识去解决实际的问题,提高我们的动手能力。在整个设计到电路的焊接以及调试过程中,我个人感觉调试部分是最难的,因为你理论计算的值在实际当中并不一定是最佳参数,我们必须通过观察效果来改变参数的数值以期达到最好。而参数的调试是一个经验的积累过程,没有经验是不可能在短时间内将其完成的,而这个可能也是老师要求我们加以提高的一个重要方面吧!另外也学到了团队协作的重要性,在整个设计过程中,正是因为我们各位队员分工合作,携手合力,最终才能在规定的时间内顺利的完成了任务。虽然完成的结果仍然存在着种种的不如人意,但我们确实在实践过程中受益匪浅。

参考文献

[1].康华光,陈大钦等。电子技术基础数字部份(第四版)。高等教育出版社。2006.4:355~356。

[2].康华光,邹寿彬等。电子技术基础模拟部份(第四版)。高等教育出版社。2006.4:370~371。

5.简易函数信号发生器 篇五

二、系统设计

波形发生器原理方框图如下所示。波形的产生是通过AT89S51 执行某一波形发生程序,向D/A转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。在AT89S51的P2口接5个按扭,通过软件编程来选择各种波形、幅值电压和频率,另有3个P2口管脚接TEC6122芯片,以驱动数码管显示电压幅值和频率,每种波形对应一个按钮。此方案的有点是电路原理比较简单,实现起来比较容易。缺点是,采样频率由单片机内部产生故使整个系统的频率降低。

1、波形发生器技术指标

1)波形:方波、正弦波、锯齿波;

2)幅值电压:1V、2V、3V、4V、5V;

3)频率:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;

2、操作设计

1)上电后,系统初始化,数码显示6个‘-’,等待输入设置命令。

2)按钮分别控制“幅值”、“频率”、“方波”、“正弦波”、“锯齿波”。

3)“幅值“键初始值是1V,随后再次按下依次增长1V,到达5V后在按就回到1V。

4)“频率“键初始值是10HZ,随后在按下依次为20HZ、50HZ、100HZ、200HZ、500HZ、1000HZ循环。

三、硬件设计

本系统由单片机、显示接口电路,波形转换(D/A)电路和电源等四部分构成。电路图2附在后

1、单片机电路 功能:形成扫描码,键值识别、键处理、参数设置;形成显示段码;产生定时中断;形成波形的数字编码,并输出到D/A接口电路和显示驱动电路。

AT89S51外接12M晶振作为时钟频率。并采用电源复位设计。复位电路采用上电复位,它的工作原理是,通电时,电容两端相当于短路,于是RST引脚上为高电平,然后电源通过对电容充电。RST端电压慢慢下降,降到一定程序,即为低电平,单片机开始工作。

AT89S51的P2口作为功能按钮和TEC6122的接口。P1口做为D/A转换芯片0832的接口。用定时/计数器作为中断源。不同的频率值对应不同的定时初值,允许定时器溢出中断。定时器中断的特殊功能寄存器设置如下:

定时控制寄存器TCON=20H;

工作方式选择寄存器TMOD=01H;

中断允许控制寄存器IE=82H。

2、显示电路

功能:驱动6位数码管显示,扫描按钮。

由集成驱动芯片TEC6122、6位共阴极数码管和5个按钮组成。当某一按钮按下时,扫描程序扫描到之后,通过P2口将数字信号发送到 TEC6122芯片。TEC6122是一款数字集成芯片。它的外接电压也是+5V,并且由于数码管的载压较小,为了保护数码管,必须在两者间接电阻,大约是560欧。

扫描利用软件程序实现,当某一按键按下时,扫描程序立即检测到,随后调用子程序,执行相应的功能。

3、D/A电路

功能:将波形样值的编码转换成模拟值,完成双极性的波形输出。

由一片0832和两块LM358运放组成。DAC0832是一个具有两个输入数据寄存器的8位DAC。目前生产的DAC芯片分为两类,一类芯片内部设置有数据寄存器,不需要外加电路就可以直接与微型计算机接口。另一类芯片内部没有数据寄存器,输出信号随数据输入线的状态变化而变化,因此不能直接与微型计算机接口,必须通过并行接口与微型计算机接口。DAC0832是具有20条引线的双列直插式CMOS器件,它内部具有两级数据寄存器,完成8位电流D/A转换,故不需要外加电路。0832是电流输出型,示波器上显示波形,通常需要电压信号,电流信号到电压信号的转换可以由运算放大器LM358实现,用两片LM358可以实现双极性输出。

单片机向0832发送数字编码,产生不同的输出。先利用采样定理对各波形进行抽样,然后把各采样值进行编码,的到的数字量存入各个波形表,执行程序时通过查表方法依次取出,经过D/A转换后输出就可以得到波形。假如N个点构成波形的一个周期,则0832输出N个样值点后,样值点形成运动轨迹,即一个周期。重复输出N个点,成为第二个周期。利用单片机的晶振控制输出周期的速度,也就是控制了输出的波形的频率。这样就控制了输出的波形及其幅值和频率。

四、软件设计

主程序和子程序都存放在AT89S51单片机中。

主程序的功能是:开机以后负责查键,即做键盘扫描及显示工作,然后根据用户所按的键转到相应的子程序进行处理,主程序框图如图1所示。

子程序的功能有:幅值输入处理、频率输入处理、正弦波输出、锯齿波输出、方波输出、显示等。

下面是程序

include

#define uchar unsigned char

#define uint unsigned int

sbit LCP=P2^2;

sbit SCP=P2^1;

sbit SI=P2^0;

sbit S1=P2^3;

sbit S2=P2^4;

sbit S3=P2^5;

sbit S4=P2^6;

sbit S5=P2^7;

sbit DA0832=P3^3;

sbit DA0832_ON=P3^2;uchar fun=0,b=0,c=0,d=0,tl,th;

uchar code tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

uchar code tosin[256]={0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5 ,0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9,0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5 ,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd ,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0xda ,0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99 ,0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0x69,0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51 ,0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27,0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x16 ,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00 ,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02 ,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15 ,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e,0x30,0x33,0x35,0x38,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e ,0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66 ,0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80 };

void display(unsigned char command){

unsigned char i;LCP=0;

for(i=8;i>0;i--){

SCP=0;

if((command & 0x80)==0){

SI=0;}

else {

SI=1;}

command<<=1;

SCP=1;}

LCP=1;}

void key1(void){

fun++;

if(fun==4)

fun=0x00;}

void key2(void){

tl++;

if(tl==0x1f)

th++;}

void key3(void){

tl--;

if(tl==0x00)

th--;}

void key4(void){

double t;

int f;

TR0=0;

t=(65535-th*256-tl)*0.4;

f=(int)(1000/t);

S3=tab[f%10];

f=f/10;S2=tab[f%10];

f=f/10;

if(f==0)

S1=0;

else

S1=tab[f];

TR0=1;}

void key5(void){

tl--;

if(tl==0x00)

th++;}

void judge(void){

uchar line,row,de1,de2,keym;

P1=0x0f;

keym=P1;

if(keym==0x0f)return;

for(de1=0;de1<200;de1++)

for(de2=0;de2<125;de2++){;} P1=0x0f;

keym=P1;

if(keym==0x0f)return;

P1=0x0f;

line=P1;

P1=0xf0;

row=P1;

line=line+row;/*存放特征键值*/

if(line==0xde)key1();

if(line==0x7e)key2();

if(line==0xbd)key3();

if(line==0x7d)key4();}

void time0_int(void)interrupt 1 //中断服务程序 {

TR0=0;

if(fun==1){

DA0832=tosin[b];//正弦波

b++;}

else if(fun==2)//锯齿波 {

if(c<128)

DA0832=c;

else

DA0832=255-c;

c++;}

else if(fun==3)// 方波

{

d++;

if(d<=128)

DA0832=0x00;

else

DA0832=0xff;}

TH0=th;

TL0=tl;

TR0=1;}

void main(void){

TMOD=0X01;TR0=1;

th=0xff;

tl=0xd0;

TH0=th;

TL0=tl;

ET0=1;

EA=1;

while(1){

display();

judge();} }

五、心得体会

开始的时候由于没有经验,不知如何下手,所以就去图书管找了一些书看,尽管有许多的设计方案,可是总感觉自己还是有许多的东西弄不太清楚,于是就请教同学。他常做一些设计,有一些经验。经过他的解释分析各方案之后,决定用查表的方法来做。这样可以降低一些硬件设计的难度,初次设计应切合自己的水平。用8031需要扩展ROM,这样还要进行存储器扩展。而且现在8031实际中已经基本上不再使用,实际用的AT89S51芯片有ROM,这样把经过采样得到的数值制成表,利用查表来做就简单了。我认为程序应该不大,片内ROM应该够用的。用LED显示频率和幅值,现有集成的接口驱动芯片,波形可通过示波器进行显示,单片机接上D/A转换芯片即可,这样硬件很快就搭好了。

我以为这些做好了,构思也有了,写程序应该是相对容易的。谁知道,写起程序来,才想到功能键要有扫描程序才行呀,我真的感到很难。那时真的有点想放弃?于是就去请教了老师,老师帮忙分析了一下,自己又查阅了一些资料,终于明白了扫描程序怎么写。

于是在自己的努力下,程序很快就写好了。这次是我的第一个设计器件,尽管经历了不少的艰辛,但给我积累了一点设计的经验,最后也有点小小的成就感。后面的路还很长,我还的努力!

参考文献

[1] 童诗白,华成英.模拟电子技术基础〔M〕.北京:高等教育出版社,2003.345-362

[2] 潘永雄,沙河,刘向阳.电子线路CAD实用教程〔M〕.西安:西安电子科技大学出版社,2001.13-118.[3] 张毅刚,彭喜源,谭晓昀,曲春波.MCS-51单片机应用设计[M].哈尔滨:哈

6.函数发生器设计论文 篇六

一、类的设计

1.类的声明

class 类名

{

private://私有

...public://公有

...};

2.类的成员

一般在C++类中,所有定义的变量和函数都是类的成员。如果是变量,我们就叫它数据成员如果是函数,我们就叫它成员函数。

3.类成员的可见性

private和public访问控制符决定了成员的可见性。由一个访问控制符设定的可访问状态将一直持续到下一个访问控制符出现,或者类声明的结束。私有成员仅能被同一个类中的成员函数访问,公有成员既可以被同一类中的成员函数访问,也可以被其他已经实例化的类中函数访问。当然,这也有例外的情况,这是以后要讨论的友元函数。类中默认的数据类型是private,结构中的默认类型是public。一般情况下,变量都作为私有成员出现,函数都作为公有成员出现。

类中还有一种访问控制符protected,叫保护成员,以后再说明。

4.初始化

在声明一个类的对象时,可以用圆括号()包含一个初始化表。

看下面一个例子:

#include “iostream.h”

class Box

{

private:

int height,width,depth;//3个私有数据成员

public:

Box(int,int,int);

~Box();

int volume();//成员函数

};

Box::Box(int ht,int wd,int dp)

{

height=ht;

width=wd;

depth=dp;

}

Box::~Box()

{

//nothing

}

int Box::volume()

{

return height*width*depth;

}

int main()

{

Box thisbox(3,4,5);//声明一个类对象并初始化

cout<

return 0;

}

当一个类中没有private成员和protected成员时,也没有虚函数,并且不是从其他类中派生出来的,可以用{}来初始化。(以后再讲解)

5.内联函数

内联函数和普通函数的区别是:内联函数是在编译过程中展开的。通常内联函数必须简短。定义类的内联函数有两种方法:一种和C语言一样,在定义函数时使用关键字inline。如:

inline int Box::volume()

{

return height*width*depth;

}

还有一种方法就是直接在类声明的内部定义函数体,而不是仅仅给出一个函数原型。我们把上面的函数简化一下:

#include “iostream.h”

class Box

{

private:

int height,width,depth;

public:

Box(int ht,int wd,int dp)

{

height=ht;

width=wd;

depth=dp;

}

~Box();

int volume()

{

return height*width*depth;

}

};

int main()

{

Box thisbox(3,4,5);//声明一个类对象并初始化

cout<

return 0;

}

这样,两个函数都默认为内联函数了。

二、构造函数

什么是构造函数?通俗的讲,在类中,函数名和类名相同的函数称为构造函数。上面的Box()函数就是构造函数。C++允许同名函数,也就允许在一个类中有多个构造函数。如果一个都没有,编译器将为该类产生一个默认的构造函数,这个构造函数可能会完成一些工作,也可能什么都不做。

绝对不能指定构造函数的类型,即使是void型都不可以。实际上构造函数默认为void型。

当一个类的对象进入作用域时,系统会为其数据成员分配足够的内存,但是系统不一定将其初始化。和内部数据类型对象一样,外部对象的数据成员总是初始化为0。局部对象不会被初始化。构造函数就是被用来进行初始化工作的。当自动类型的类对象离开其作用域时,所站用的内存将释放回系统。

看上面的例子,构造函数Box()函数接受三个整型擦黑素,并把他们赋值给立方体对象的数据成员。

如果构造函数没有参数,那么声明对象时也不需要括号。

1.使用默认参数的构造函数

当在声明类对象时,如果没有指定参数,则使用默认参数来初始化对象。

#include “iostream.h”

class Box

{

private:

int height,width,depth;

public:

Box(int ht=2,int wd=3,int dp=4)

{

height=ht;

width=wd;

depth=dp;

}

~Box();

int volume()

{

return height*width*depth;

}

};

int main()

{

Box thisbox(3,4,5);//初始化

Box defaulbox;//使用默认参数

cout<

cout<

4return 0;

}

2.默认构造函数

没有参数或者参数都是默认值的构造函数称为默认构造函数。如果你不提供构造函数,编译器会自动产生一个公共的默认构造函数,这个构造函数什么都不做。如果至少提供一个构造函数,则编译器就不会产生默认构造函数。

3.重载构造函数

一个类中可以有多个构造函数。这些构造函数必须具有不同的参数表。在一个类中需要接受不同初始化值时,就需要编写多个构造函数,但有时候只需要一个不带初始值的空的Box对象。

#include “iostream.h”

class Box

{

private:

int height,width,depth;

public:

Box(){ //nothing }

Box(int ht=2,int wd=3,int dp=4)

{

height=ht;

width=wd;

depth=dp;

}

~Box();

int volume()

{

return height*width*depth;

}

};

int main()

{

Box thisbox(3,4,5);//初始化

Box otherbox;

otherbox=thisbox;

cout<

return 0;

}

这两个构造函数一个没有初始化值,一个有。当没有初始化值时,程序使用默认值,即2,3,4。

但是这样的程序是不好的。它允许使用初始化过的和没有初始化过的Box对象,但它没有考虑当thisbox给otherbox赋值失败后,volume()该返回什么。较好的方法是,没有参数表的构造函数也把默认值赋值给对象。

class Box

{

int height,width,depth;

public:

Box()

{

height=0;width=0;depth=0;

}

Box(int ht,int wd,int dp)

{

height=ht;width=wd;depth=dp;

}

int volume()

{

return height*width*depth;

}

};

这还不是最好的方法,更好的方法是使用默认参数,根本不需要不带参数的构造函数。

class Box

{

int height,width,depth;

public:

Box(int ht=0,int wd=0,int dp=0)

{

height=ht;width=wd;depth=dp;

}

int volume()

{

return height*width*depth;

}

};

三、析构函数

当一个类的对象离开作用域时,析构函数将被调用(系统自动调用)。析构函数的名字和类名一样,不过要在前面加上 ~。对一个类来说,只能允许一个析构函数,析构函数不能有参数,并且也没有返回值。析构函数的作用是完成一个清理工作,如释放从堆中分配的内存。

7.函数发生器设计论文 篇七

1 系统组成

1.1 DDS模块的分析

DDS (Direct Digital Synthesizer)即直接数字合成技术,是一种新型的频率合成技术。它不仅可以产生不同频率的波形,而且可以控制相应波形的初始相位。DDS组成模块主要由基准时钟源、相位累加器和波形查找表组成。相位累加器由累加寄存器和加法器级联构成。当时钟的上升沿到来时,加法器将频率控制字M与寄存器的相位数据相加,然后把相加后的数据送到寄存器的输入端。寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据送回到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字累加。利用这种方法,使基准时钟fc作用下的相位累加器不间断地对频率控制字M进行叠加。由此可以获得想要的输出信号频率[2]。原理框图如图1所示。

本设计要达到的实际输出模拟信号指标为:产生4种可变的波形(正弦波、锯齿波、三角波和方波);输出信号的频率范围为1 Hz~1 MHz,并且输出信号的频率精确度不低于1%;输出带负载的情况下,信号的电压峰-峰值范围为0~5 V并以0.1 V步进可调;输出信号频率步进可分段调节,在1 Hz~1 kHz范围内以1 Hz进行步进,在1 kHz~1 MHz范围内以100 Hz进行步进。

针对以上各项指标,选择频率控制字和相位控制字位宽N均为32 bit,系统时钟为100 MHz,这样频率分辨率可以达到0.023 3 Hz,提高了系统精度。输出信号幅度控制字则采用12 bit(DAC902U是12 bit的数模转换器),4 096个分度值,设计要求幅度调节范围以0.1 V步进,所以取查找表的数字量步进值为4 096/50=81.92,近似为82。同时为了节省ROM查找表的容量,节约存储器资源,以便后续过程中功能模块的添加,最后取相位累加器输出的高10 bit作为ROM查找表的地址信号,这样会存在一定的相位截断误差。当然,由于DDS固有的杂散和噪声大,而且在频率升高时杂散和噪声也随之增加,同时由于DAC制作工艺和所用材料的限制,制约了DDS上限频率,本设计取5 MHz作为最高输出信号频率。

采用MATLAB DSP Builder工具箱完成DDS模块的内部设计,由于采用了图形建模的方案,使得本设计既解决了编程语言优化不足造成不必要的延迟的缺点,又最大限度地节约了硬件逻辑资源,缩短了研发周期。此外,由于DSP Builder工具箱本身集成了图形建模到硬件描述语言VHDL自动转化的功能,可以轻松地对最终的模块设计进行相应编程语言方面的更改,在FPGA软件开发环境Quartus II8.0当中添加相应的附加功能变得更为简单方便,实现了功能现场可定制的优点。

1.2 参数掉电不丢失模块的分析

利用现在较流行的嵌入式系统控制技术,在FPGA芯片内部做一个小的系统控制核,在实现对Flash掉电存储的同时,实现对系统的时钟管理(PLL锁相环技术)。具体的方案是在Quartus II8.0中利用SOPC Builder在顶层原理图中构建1个NIOS II软核,然后在NIOS II8.0编程开发环境下利用高级C语言进行编程,当然由于NIOS II8.0已经对Flash接口进行了硬件抽象,所以避免了对其进行复杂的编程,实现起来更加的方便、准确、快捷。具体的原理图设置如图2所示。

1.3 VGA显示模块分析

本设计的波形和参数显示采用的是现在较流行的VGA液晶显示技术。VGA液晶显示屏是现在电脑屏幕的首选,过去传统显示屏由于其色彩单调,频率分辨率低,显示速率慢,已经逐步退出了计算机销售领域。基于VGA液晶的信号发生器设计不但在输出信号参数及波形显示方面取得了相应的突破,更重要的是它使得使用者可以随时随地打开PC,接上VGA 接线获得想要的信号输出。本设计采用了自制开发板的VGA接口,实现了256色的输出显示。此外,考虑到屏幕分辨率的大小对后续存储器存储量的影响,最终选择了640×480的像素分辨率[3]。实际输出效果图如图3所示。

1.4 低通滤波器模块分析

考虑到有源滤波器主要的应用是低频信号输出,所以采用无源低通滤波器进行滤波,比较常用的无源低通滤波器主要有3种:契比雪夫滤波器、巴特沃斯滤波器、椭圆函数滤波器。契比雪夫滤波器带内有明显的起伏变化,但过渡带可以比较窄,频率截止效果较好。而巴特沃斯滤波器的响应最为平缓,在靠近零频处,通带最为平坦,而且没有波纹,趋向阻带时衰减单调增大,缺点是频率衰减效果较差,从通带到阻带的过渡带最宽。相对来说,椭圆函数滤波器频率响应介于两者之间[4],比较起来,椭圆函数滤波器的性能更为优越。对于滤波器阶数的选择,需要考虑到实际输出信号的频率要求并进行仿真,最终确定为7阶[5,6]。具体的元件参数计算如下:

1) 通带:f≤fp=5 MHz,阻带:f≥fs=5.6 MHz,A≥35 dB=As,阻抗匹配:R1=R0=50 Ω。

2) 将fs对fp进行归一化,得undefined。通过查阅相关数据得到,当过渡带比较窄时,最理想的滤波器方案是7阶的椭圆函数滤波器。实际当中滤波器的2个重要参数是模数k和模角θ,通过计算得出undefined,θ=arcsinΚ=63.23°。其中为了使过渡带达到预定的要求,选择将模角θ留有一定的裕量,取为64°。此时对应的实际截止频率为undefinedMHz。

2 实验结果及分析

设计最终获得的实际模拟信号频率如表1所示。

设计实际输出的信号(5 kHz,1 Vp-p正弦波)在示波器上观察如图4所示。

3 结论

由于采用了先进的波形发生技术DDS,加之FPGA丰富的逻辑门资源,使得整机性能体现出如下特点:输出信号的类型理论上增加为任意波形。除可以输出标准的正弦波、方波、三角波、锯齿波外,还可进一步扩展输出调频、调幅、调相,频率键控、相位键控、QAM、扫频、脉冲等信号,输出信号频率范围也得到了极大的提高。同等价位的波形发生器输出频率范围在1~200 kHz内,而本设计的波形发生器输出频率范围为1~5 MHz,在硬件电路改善的条件下甚至可以达到20 MHz;频率分辨率得到了极大的改善,理论上系统clk为100 MHz的前提下,输出频率分辨率可达0.023 3 Hz;频率的切换速度较其他低频信号发生器快,可达μs量级;切换时输出信号的相位仍保持连续,这样对噪声的抑制作用更加明显;Flash存储信号设置参数(幅度,波形,频率),可以在第二次启动时自动调出数据;VGA显示平台的使用,使得对输出信号有了更为直观的了解。

摘要:提出了一种基于现场可编程门阵列(Field Programmable Gate Array,FPGA)的高精度视频图形阵列(Video Graphics Ar-ray,VGA)个性化显示函数信号发生器的整体设计方案。通过对传统信号发生器进行改进,再利用先进的直接数字式频率合成器(Direct Digital Synthesizer,DDS)波形发生理论,获得了较理想的信号输出。本设计充分发挥了FPGA大逻辑门容量、超高精准时钟的特点。在软件编程过程中扩展了VGA个性化显示、参数掉电存储等功能。硬件电路则主要采用超高精准度的DAC902U芯片和7阶的椭圆低通滤波器,以求达到最佳的模拟信号输出效果。

关键词:现场可编程门阵列,函数信号发生器,直接数字式频率合成器,宽频带,高分辨率

参考文献

[1]李毅.基于DDS和PLL的扫频信号源设计[D].南京:南京理工大学,2005.

[2]冯朝军.直接数字频率合成(DDS)的软件及硬件实现[D].成都:西南交通大学,2007.

[3]田汉平.基于FPGA的函数信号发生器设计[D].湘潭:湘潭大学,2008.

[4]程永茂,赵峰民.FH-OFDM系统同步算法研究与FPGA实现[J].电视技术,2010,34(9):33-36.

[5]牛春全.DDS系统的杂散分析及对策研究[D].西安:西安科技大学,2010.

8.浅析高中数学函数设计和教学 篇八

关键词:高中数学;函数教学;函数设计

一、高中生在函数学习上存在的问题

高中生对学习函数缺乏学习兴趣,我们都知道学习的好坏跟学生学习的兴趣有着十分重要的关系,有的学生可能不喜欢学函数喜欢学几何,那么当老师讲到函数的学习的时候,他上课就不认真听讲;当老师开始讲几何课程的时候,学生又有兴趣学习了。而数学恰恰是一门积累的学科,今天讲的不听,明天学得自然也就不会。长此以往,对函数的学习就从最开始的缺乏兴趣,到后来的由于落下的功课太多想追都追不上了。

高中接触到的函数其实并不难,只要学生能够学进去还是很容易学会的,老师可以根据学生的水平和理解能力适当地改善教学方法,进而增加学生学习函数的兴趣,提高学生的学习成绩。

二、高中数学函数教学的设计

好的教学设计可以让学生的学习兴趣得到提升,改善学生的学习态度,提高学生的学习成绩。高中生接触到的函数知识大概分为两类:一类是函数的基本表示,这一知识点包含对函数的基本表示、函数的基本性质、函数图象的学习,这是关于函数最简单的知识点,学习这个知识点的时候,教师慢一点教,不能急于求成,学好基础才能为后面的学习做准备。如,求函数f(x)=的定义域,这样的习题通常都是考试的考点,不会出得太难,老师可以让学生多加练习这样的习题,数学以学习为主,但是也要以做题为辅,通过习题来巩固所学的知识点是很重要的,老师也可以多分一些课时给这类知识点。

另一类就是基本初等函数和三角函数,基本初等函数主要包含:指数函数、对数函数、幂函数、二次函数以及函数应用的学习;三角函数主要包括:正弦函数、余弦函数和正切函数的知识点的学习。对于基本初等函数的教学,老师不能再盲目地让学生多做题,来巩固知识点了,由于函数的知识大部分都是抽象的,所以,当学习到基本初等函数的时候,更多的需要借助多媒体信息技术来辅助老师教学,利用多媒体信息技术来直观地展示函数的随着定义域的变化函数值域发生的改变,也可以利用多媒体信息技术准确地画出基本初等函数的图象,可以把它们都画在一起,让学生更加直接地感受每个基本初等函数之间的区别。三角函数的学习跟基本初等函数的学习有异曲同工之妙,因为这些函数都具有抽象性的特点,老师通过多媒体信息技术辅助教学能帮助学生更好地学习函数。

9.对数函数教学设计 篇九

河北省沙河第二中学 周延杰 ***

一、教材分析

本节课是新课标高中数学必修①中第三章对数函数内容的第二课时,也就是对数函数的入门.对数函数对于学生来说是一个全新的函数模型,学习起来比较困难.而对数函数又是本章的重要内容,在高考中占有一定的分量,它是在指数函数的基础上,对函数类型的拓广,同时在解决一些日常生活问题及科研中起十分重要的作用.通过本节课的学习,可以让学生理解对数函的概念,从而进一步深化对对数模型的认识与理解。同时,通过对数概念的学习,对培养学生对立统一,相互联系、相互转化的思想,培养学生的逻辑思维能力都具有重要的意义.二、学情分析

大部分学生学习的自主性较差,主动性不够,学习有依赖性,且学习的信心不足,对数学存在或多或少的恐惧感.通过对指数函与指数函数的学习,学生已多次体会了对立统一、相互联系、相互转化的思想,并且探究能力、逻辑思维能力得到了一定的锻炼.因此,学生已具备了探索发现研究对数函数定义的认识基础,故应通过指导,教会学生独立思考、大胆探索和灵活运用类比、转化、归纳等数学思想的学习方法.教具及软件运行环境说明 教具采用多媒体,黑板等形式展开

信息技术设备设置:通过借助计算机多媒体呈现指数函数与对数函数图像 应用环境及软件的说明:软件为在windows下运行的matlab7.0

三、设计思路

学生是教学的主体,本节课要给学生提供各种参与机会.为了调动学生学习的积极性,使学生化被动为主动.本节课我利用多媒体辅助教学,利用几何作图软件运行各种指数函数及对数函数,通过比较/类比等方法使学生对对数函数的认识更加深刻。教学中我引导学生从实例出发,从中认识对数的模型,体会引入对数的.在教学重难点上,步步设问、启发学生的思维,通过课堂练习、探究活动,学生讨论的方式来加深理解,很好地突破难点和提高教学效率.让学生在教师的引导下,充分地动手、动口、动脑,掌握学习的主动权.四、教学目标

1、知识与技能,理解对数函数的概念,了解对数函数与指数函数的关系;理解对数函数的性质,掌握以上知识并形成技能.2、过程与方法,通过学生分组探究进行活动,掌握对数函数的重要性质。通过做练习,使学生感受到理论与实践的统一.3、情感态度与价值观,通过对数函数的学习,树立相互联系,相互转化的观点,渗透数形结合,分类讨论的思想。培养学生的类比、分析、归纳能力,严谨的思维品质以及在学习过程中培养学生探究的科学意识.五、重点与难点

重点 :(1)对数函数的概念;(2)对数函数的性质.难点 :(1)对数函数与指数函数之间的关系.六、过程设计及师生互动

(一)复习导入

(1)复习提问:什么是指数函数?指数函数的图象和性质如何?

学生回答,并用课件展示 指数函数的图象和性质。

设计意图:设计的提问既与本节内容有密切关系,又有利于引入新课,为学生理 解新知识清除了障碍,有意识地培养学生分析问题的能力。

(2)导言:指数函数有没有反函数?如果有,如何求指数函数的反函数?它的 反函数是什么?

设计意图:这样的导言可激发学生求知欲,使学生渴望知道问题的答案。

(二)讲授新课(1)对数函数的概念

引导学生从对数式与指数式的关系及反函数的概念进行分析并推导出,指数函数有反函数,并且y=ax(a>0且a≠1)的反函数是 y=logax,见课件。把函

y=logax叫做对数函数,其中a>0且a≠1。从而引出对数函数的概念,展示课件。

设计意图:对数函数的概念比较抽象,利用已经学过的知识逐步分析,这样引出对数函数的概念过渡自然,学生易于接受。因为对数函数是指数函数的反函数 让学生比较它们的定义域、值域、对应法则及图象的关系,培养学生参与意识,通过比较充分体现指数函数及对数函数的内在联系。(2)对数函数的图象

提问:同指数函数一样,在学习了函数的定义之后,我们要画函数的图象,应如 何画对数函数的图象呢

让学生思考并回答,用描点法画图。教师肯定,我们每学习一种新的函数都可以 根据函数的解析式,描点画图。再考虑一下,我们还可以用什么方法画出对数函数的图象呢?

让学生回答,画出指数函数关于直线y=x对称的图象,就是对数函数的图象。教师总结:我们画对数函数的图象,既可用描点法,也可用图象变换法,下边我 们利用两种方法画对数函数的图象。

h(x)log2x,f(x)log3x,方法一(描点法)首先列出x,y(q(x)logx,g(x)logx)

1123值的对应表,因为对数函数的定义域为x>0,因此可取x=··· , , ,1,2,4,8···,请计算对应的y 然后在坐标系内描点、画出它们的图象.方法二(图象变换法)因为对数函数和指数函数互为反函数, 图象关于直线y=x对称,所以只要画出y=ax的图象关于直线y=x对称的曲线,就可以得到y=logax.的图象。学生动手做实验,先描出y=2x的图象,画出它关于直线y=x对称的曲线,它就是y=log2x的图象;类似的从y=()x 的图象画出y=log x的图象,再

示课件,教师加以解释。

设计意图:用这种对称变换的方法画函数的图象,可以加深和巩固学生对互为反函数的两个函数之间的认识,便于将对数函数的图象和性质与指数函数的图象和

性质对照,但使用描点法画函数图象更为方便,两种方法可同时进行,分析画法之后,可让学生自由选择画法。这样可以充分调动学生自主学习的积极性。(3)对数函数的性质

在理解对数函数定义的基础上,掌握对数函数的图象和性质是本节的重点,关键在于抓住对数函数是指数函数的反函数这一要领,讲对数函数的性质,可先在同一坐标系内画出上述两个对数函数的图象,根据图象让学生列表分析它们的图象特征和性质,然后出示课件,教师补充。作了以上分析之后,再分a>1与0<a<1两种情况列出对数函数图象和性质表,体现了从“特殊到一般”、“从 具体到抽象”的方法出示课件并进行详细讲解,把对数函数图象和性质列成一个表以便让学生对比着记忆。

设计意图:这种讲法既严谨又直观易懂,还能让学生主动参与教学过程,对培养 学生的创新能力有帮助学生易于接受易于掌握,而且利用表格,可以突破难点。

由于对数函数和指数函数互为反函数,它们的定义域与值域正好互换,为了揭示这两种函数之间的内在联系,列出指数函数与对数函数对照表(见课件)设计意图:通过比较对照的方法,学生更好地掌握两个函数的定义、图象和性质,认识两个函数的内在联系提高学生对函数思想方法的认识和应用意识。

(三)巩固练习 P42-P45

(四)纳小结强化思想

引导学生对主要知识进行回顾,使学生对本节有一个整体的把握,因此,从 三方面进行总结:对数函数的概念、对数函数的图象和性质、比较对数值大小的方法。

课后反思:美好的时光总是短暂的请学生总结自己有何收获和体验,并交流。

七、教学评价方案

课堂教学是教学过程的中心环节,是教师和学生进行教学活动的主要形式,为了促进课堂教学改革,提高课堂教学质量,特制定本课堂教学评价方案:(1)、教学目标评价

教师能针对所教内容,结合《课程标准》科学、准确地设计教学目标,做到:、目标明确,符合学生实际。目标的设置不可过高或过低。

2、“三维目标”全面、具体、适度,有可操作性,并能使知识目标,能力目标、情感、态度、价值观目标有机相融,和谐统一。

量化评价标准每项5分,总计10分。(2)、教学内容评价

1、教师能准确把握所教学科内容的重点、难点,教授内容正确。

2、教学内容紧密联系学生的生活实际,激发学生去积极思维。

3、教师能从教学实际出发,转变教材观念,对教材进行科学有效的整合,以促进学生的学习,不唯教材,创新适用教材。

量化评价标准:第1、2项各4分,第3项2分,总计10分。(3)、教师行为评价

1、课堂上教师作为学生学习的组织者,是否能够有效地组织学生进行学习;作为学生学习的指导者,是否对学生的学习指导得有法、到位。培养了学生良好的学习习惯;是否创造了生动有趣的教学情境来诱发学生学习的主动性;作为学生学习的引导着,是否成为学生和课本之间的桥梁纽带,在教学活动中,发挥了自己的聪明才智和应有的作用;作为学生学习的合作者,是否能和学生一起学习,探究、倾听、交流。

2、教师能以学生为主体,重视知识的形成过程,重视学生学习方法的培养,重视学生的自学能力、实践能力,创新能力的发展。

3、课堂上能营造宽松、民主、平等的学习氛围,教态自然亲切,对学生学习的评价、恰当、具体、有激励性。

4、能够根据教材的重点、难点之处,精心设计问题,所提出的问题能针对不同层次的学生,问题的提出,恰到好处。能启发学生思考,促进学生知识的构建,并能给学生留有充分思考的时间,同时注重学生的“问题”意识,引导学生主动提出问题。

5、根据教学内容和学生实际,恰当地选择教学手段,合理运用教学媒体。、课堂上,教师的讲解语言准确简练,示范操作规范,板书合理适用,教学有一定的风格和艺术性。

量化评比标准:第1项8分;第2项5分;第3项2分;第4项4分;第5、6项各3分,总计25分。(4)、学生行为评价

主要针对学生在课上的学习状态来评价。

1、看学生的学习状况,学生学习的主动性是否被激起,能积极地以多种感观参与到学习活动之中,精神振奋,有强烈的求知欲望。

2、看学生的参与状态,学生参与学习活动中的数量、广度和深度是衡量主体地位发挥的主要标志,学生要全员参与,有效参与。

3、看学生的学习方式。是否由被动学习变为主动学习,是否由个体学习到主动合作学习;是否由接受性学习变为探究性学习。

4、看学生在自主、合作、探究学习上的表现。学生在学习过程中,是否全身心地投入、是否发现问题,提出问题,积极解决问题,是否敢于质疑,善于合作、主动探究并有实效,是否围绕某一问题彼此间能交流、讨论、倾听,提出有效建议。

5、看学生学习的体验与收获。学生在学习过程中,90%以上的学生能够相互交流知识、交流、体会,交流情感由自悟——觉悟——感悟——醒悟,在获取丰富知识的同时形成了一定的学习能力。

量化评价评价标准:第1项8分;第2项3分;第3项6分;第4项8分;第5项2分;第6项8分,总计35分。(5)、教学效果评价

1、看教学目标达成度如何,教师是否高度关注学生的知识 与能力、过程与方法、情感态度价值观的全面发展。

2、看教学效果的满意度,学生在教师的指导下,积极主动参与,90%以上的学生掌握了有效的学习方法,获得了知识,发展了能力,有积极的情感体验。

3、看课堂训练题设计,检测效果好。

量化评价标准:第1项4分;第2项7分;第3项4分。总计15分。(6)、教学特色评价

教师在教学方式、方法上,知识的生成点上,教学机智与智慧上的闪光点,有不同寻常之处。

评价标准:具备上述中的某一点或几点评价。

分数:2---5分。

八、教学反思

上一篇:工程管理专业实习报告 工程项目成本控制下一篇:关于落实“作风建设年”的活动心得