首页 > 网络推广 >  > 

信号发生器的设计 正弦信号发生器的设计

低频信号发生器的设计

低频信号发生器的设计

信号发生器的设计 正弦信号发生器的设计信号发生器的设计 正弦信号发生器的设计


信号发生器的设计 正弦信号发生器的设计


摘 要:

直接数字合成(DDS)是一种重要的频率,具有分辨率高、频率变换快优点,在雷达及通信等领域有着广泛的应用前景。文中介绍了一种高性能DDS芯片AD9850的基本原理和工作特点,阐述了如何利用此芯片设计一种频率在0—50

kHz内变化、相位正交的信号源,给出了AD9850芯片和MCS51单片机的硬件接口和软件流程。

:直接数字频率合成 信号源 AD9850芯片

概述:

随着数字技术的飞速发展,高精度大动态范围数字/模拟(D,A)转换器的出现和广泛应用,用数字控制方法从一个标准参考频率源产生多个频率信号的技术,即直接数字合成(DDS)异军突起。其主要优点有:(1)频率转换快:DDS频率转换时间短,一般在纳秒级;(2)分辨率高:大多数DDS可提供的频率分辨率在1 Hz数量级,许多可达0.001 Hz;(3)频率合成范围宽;(4)相位噪声低,信号纯度高;(5)可控制相位:DDS可方便地控制输出信号的相位,在频率变换时也能保持相位联系;(6)生成的正弦/余弦信号正交特性好等。因此,利用DDS技术特别容易产生频率快速转换、分辨率高、相位可控的信号,这在电子测量、雷达系统、

调频通信、电子对抗等领域具有十分广泛的应用前景。

1. 低频信号发生器的组成

图2.7为低频信号发生器组成框图。它主要包括主振器、电压放大器、输出衰减器、功率放大器、阻抗变换器和指示电压表等。

(1)主振器

RC文氏桥式振荡器具有输出波形失真小、振幅稳定、频率调节方便和频率可调范围宽等特点,故被普遍应用于低频信号发生器主振器中。主振器产生与低频信号发生器频率一致的低频正弦信号。

文氏桥式振荡器每个波段的频率覆盖系数(即频率与频率之比)为10,因此,要覆盖1Hz~1MHz的频率范围,至少需要五个波段。为了在不分波段的情况下得到很宽的频率覆盖范围,有时采用频式低频振荡器,图2.8为其组成框图。设f2=3.4MHz,f1可调范围为3.3997MHz~5.1MHz,则振荡器输出频信号频率范围为300Hz (3.4MHz-3.3997MHz)~1.7MHz(5.1 MHz-3.4 MHz)。

频式振荡器的缺点是对两个振荡器的频率稳定性要求很高,两个振荡器应远离整流管、功率管等发热元件,彼此分开,并良好屏蔽。

(2)电压放大器

电压放大器兼有缓冲与电压放大的作用。缓冲是为了使后级电路不影响主振器的工作,一般采用射极跟随器或运放组成的电压跟随器。放大是为了使信号发生器的输出电压达到预定技术指标。为了使主振输出调节电位器的阻值变化不影响电压放大倍数,要求电压放大器的输入阻抗较高。为了在调节输出衰减器时,不影响电压放大器,要求电压放大器的输出阻抗低,有一定的带负载能力。为了适应信号发生器宽频带等的要求,电压放大器应具有宽的频带、小的谐波失真和稳定的工作性能。

(3)输出衰减器

输出衰减器用于改变信号发生器的输出电压或功率,分为连续调节和步进调节。连续调节由电位器实现,步进调节由步进衰减器实现。图2.9为常用输出衰减器原理图,图中电位器RP为连续调节器(细调),电阻R1~R8与开关S构成步进衰减器,开关S为步进调节器(粗调)。调节RP或变换开关S的挡

(4) 功率放大器及阻抗变换器功率放大器用来对衰减器输出的电压信号进行功率放大,使信号发生器达到额定功率输出。为了能实现与不同负载匹配,功率放大器之后与阻抗变换器相接,这样可以得到失真小的波形和的功率输出。

阻抗变换器只有在要求功率输出时才使用,电压输出时只需衰减器。阻抗变换器即匹配输出变压器,输出频率为5Hz~5kHz时使用低频匹配变压器,以减少低频损耗,输出频率为5kHz~1MHz时使用高频匹配变压器。输出阻抗利用波段开关改变输出变压器次级圈数来改变。

2. 工作原理及结构

函数信号发生器产生信号的方法有三种:一种是由施密特电路产生方波,然后经变换得到三角波和正弦波形;第二种是先产生正弦波再得到方波和三角波;第三种是先产生三角波再变换为方波和正弦波。在此主要介绍种方法,即脉冲式函数信号发生器

3. 低频信号发生器的主要工作特性

目前,低频信号发生器的主要工作特性如下:

①频率范围 一般为20Hz~1MHz,且连续可调。

②频率准确度 ±(1~3)%。

③频率稳定度 一般为(0.1~0.4)%/小时。

④输出电压 0~10V连续可调。

⑤输出功率 0.5~5W连续可调。

⑥非线性失真范围 (0.1~1)%。

⑦输出阻抗 50Ω、75Ω、150Ω、600Ω、5kΩ等几种。

⑧输出形式 平衡输出与不平衡输出。

4. 低频信号发生器的使用

低频信号发生器型号很多,但它们的使用方法基本类似

(1)了解面板结构

使用仪器之前,应结合面板文字符号及技术说明书对各开关旋钮的功能及使用方法进行耐心细致的分析了解,切忌盲目猜测。信号发生器面板上有关部分通常按其功能分区布置,一般包括:波形选择开关、输出频率调谐部分(包括波段、粗调、微调等)、幅度调节旋钮(包括粗调、细调)、阻抗变换开关、指示电压表及其量程选择、电源开关及电源指示、输出接线柱等。

5. AD9850 芯片介绍

AD9850是AD公司生产的时钟为125 MHz、采用先进的CMOS技术的直接频率合成器,主要由可编程DDS系统、高性能模数变换器(DAC)和高速比较器3部分构成,能实现全数字编程控制的频率合成,并具有时钟产生功能。AD9850的DDS系统包括相位累加器和正弦查找表,其中相位累加器由一个加法器和一个32位相位寄存器组成,相位寄存器的输出与外部相位控制字(5位)相加后作为正弦查找表的地址。正弦查找表实际上是一个相位/幅度转换表,它包含一个正弦波周期的数字幅度信息,每一个地址对应正弦波中0。一360。范围的一个相位点。查找表把输入地址的相位信息映射成正弦波幅度信号,然后驱动10bit的DA变换器,输出2个互补的电流,其幅度可通过外接电阻进行调节。AD9850还包括—个高速比较器,将DA变换器的输出经外部低通滤波器后接到此比较器上即可产生一个抖动很小的方波,这使得AD9850可以方便地用作时钟发生器。AD9850包含40位频率/相位控制字,可通过并行或串行方式送人器件:并行方式指连续输入5次,每次同时输入8位(1个字节);串行方式则是在—个管脚完成40位串行数据流的输入。这40位控制字中有32位用于频率控制,5位用于相位控制,1位用于掉电(powerdown)控制,2位用于选择工作方式。在并行输入方式下,通过8位总线D0一D7将外部控制字输入到寄存器,在W—CLK(字输入时钟)的上升沿装入个字节,并把指针指向下一个输入寄存器,连续5个W—CLK的上升沿读入5个字节数据到输入寄存器后,W—CLK的边沿就不再起作用。然后在rQ—UD(频率更新时钟)上升沿到来时将这40位数据从输入寄存器装入到频率/相位寄存器,这时DDS输出频率和相位更新一次,同时把地址指针复位到个输入寄存器以等待下一次的频率/相位控制字输入。

6 硬件设计

要产生两路相位正交、频率可由外部控制的正弦信号,必须通过单片机编程来完成外部输入的频率数据(3个字节)与DDS38芯片(AD9850)内部频率相位控制字(5个字节)间的转换。单片051与AD9850芯片的接口既可采用并行方式,也可采用串行方式,本设计采用的是8位并行接口方式。由于需要产生VQ两路正弦信号,因此使用了2片AD9850芯片,这两路的频率相同,相位90。。单片051的P1口(P1.0一P1.7脚)用作外部控制字输入,通过中断1和中断0读入外部频率数据,连续读3次,对应频率值的二进制数;单片机的P0口(P0.0一P0.7脚)用作频率/相位控制字输出,通过8位缓冲器74LS244作数据缓冲后加到2片AD9850芯片的8位控制字输入端(DO—D7脚),同时产生相应的DDS时序控制信号(一路复位reset1、二路复位reset2、一路字输入时钟W1、二路字输入时钟W2、一路频率更新时钟FU1、二路频率更新时钟FU2)加到AD9850芯片的对应管脚。AD9850的外部参考时钟信号(dk4Om)频率为40 MHz,由晶体振荡器产生。单片051的复位信号(reset)、中断0和中断1控制信号(intO、int1)由外部控制系统给出,从而实现两路相位正交、频率可控的正弦信号。该DDS信号源的硬件接口电路如图1所

图1 DDS信号源硬件接口电路

7. 软件控制

此程序的功能就是要将外部输入的频率数据按照一定协议和算法变换成DDS芯片(AD9850)所能接受的格式,并送出相应的频率相位控制信号,从而使AD9850能产生两路相位正交、频率可控的正弦信号。下面给出程序设计输入、输出、变换算法。

(1) 输入

数据同步:上升沿时读人1个字节的频率数据,作为intl中断输入;

数据写入:上升沿时频率更新1次,作为intO中断输入;

8位数据:输入的频率字节。分3次输入,如图2所示。

(2)输出

单片机控制程序将产生下述输出信号加到DDS芯片(AD9850)的对应脚:

reset1:一路DDS复位(一路AD9850第22脚);

reset7.:二路DDS复位(-路AD9850第22脚);

w1:一路数据同步(一路AD9850第7脚);

w2:二路数据同步(二路AD9850第7脚);

ful:一路数据写入(一路AD9850第8脚);

fu2:二路数据写入(二路AD9850第8脚);

P0口(P0.0一P0.7):8位频率/相位数据输出(AD9850的DO—D7脚)。

(3)算法:程序中单片机输入频率数据F(3个字节)与输出频

率数据△P(4个字节)间的变换算法见式(2)

其中CLKIN为外部参考时钟(40 M Hz)。

(4)程序流程:整个程序由主程序、中断0子程序、中断1子

程序三部分构成。流程图略。

8 结论

对设计的信号源在不同频率下的输出波形进行了测试,结果完全能达到所要求的性能指标。而且AD9850工作可靠,对参考时钟波形要求不高,输出信号稳定且信噪比高,是一种性价比很高的芯片,正广泛应用于电子测量、跳频通信、雷达系统等领域。

9 致谢

通过对低频信号发生器的设计,我深刻认识到了“理论联系实际”的这句话的重要性与真实性。而且通过对此课程的设计,我不但知道了以前不知道的理论知识,而且也巩固了以前知道的知识。最重要的是在实践中理解了书本上的知识,明白了学以致用的真谛。也明白老师为什么要求我们做好这个课程设计的原因。他是为了教会我们如何运用所学的知识去解决实际的问题,提高我们的动手能力。在整个设计到电路的焊接以及调试过程中,我个人感觉调试部分是最难的,因为你理论计算的值在实际当中并不一定是参数,我们必须通过观察效果来改变参数的数值以期达到。而参数的调试是一个经验的积累过程,没有经验是不可能在短时间内将其完成的,而这个可能也是老师要求我们加以提高的一个重要方面吧

参考文献:

【1】高卫东.等.AD9850 DDS芯片信号源的研制【J】.实验室研究与探

索,2000,(5).

【2】石雄.等.DDS芯片AD9850的工作原理及其与单片机的接口【J】.国

外电子元器件,2001。(5).

(上

设计和制作一函数信号发生器

基于ICL8038函数信号发生器的设计本设计是以ICL8038 和AT89C2051 为核心设计的数控及扫频函数信号发生器。ICL8038 作为函数信号源

结合外围电路产生占空比和幅度可调的正弦波、方波、三角波; 该函数信号发生器的频率可调范围为1~100kHz, 步进为0.1kHz, 波形稳定, 无明显失真。

1.系统设计框图如图1 为系统设计框图。本设计是利用键盘设置相应的频率值, 根据所设置频率段选择相应电容, 经计算获得相应数字量送数字电位器实现D/A 转换, 同时与参考电压( 本例为5.5V) 相加后形成数控调压去控制ICL8038 第8 脚, 这样即可由ICL8038 实现对应频率值的矩形波、三角波和正弦波。方波幅度经衰减后送单片机可测得信号源频率并由数码管显示。

2.电路原理图

图2 为电路原理图。其中AT89C2051 是8 位单片机, 其中: P1.4~P1.7、P1.2、P1.3、P3.0、P3.1 作为数

码显示; P3.3、P3.5 、P3.7 作为键盘输入口; P3.4 作为计数口, 用于测量信号源频率;P3.0~P3.2 作为数字电位器的SPI总线; P1.1、P1.0 可根据需要扩展继电器或模拟开关选择ICL8038第10 脚( CAP) 与第11 脚间的电容C。

MCP41010 是8 位字长的数字电位器, 采用三总线SPI 接口。/CS: 片选信号, 低电平有效; SCK:时钟信号输入端; SI: 串行数据输入端, 用于寄存器的选择及数据输入。MCP41010 可作为数字电位器, 也可以作为D/A 转换器, 本设计是将MCP41010 接成8 位字长的D/A 转换器, MCP41010 根据输入的串行数据, 对基准电压进行分压后由中间输出模拟电压, 即VPWO =DN/256VREF ( 式中VREF=5V) 。

函数发生电路ICL8038, 图2所示是一个占空比和一个频率连续可调的函数发生电路。ICL8038是一种函数发生器集成块, 通过外围电路的设计, 可以产生高精密度的正弦波、方波、三角波信号, 选择不同参数的外电阻和电容等器件, 可以获得频率在0.01Hz~300kHz 范围内的信号。通过调节RW2 可使占空比在2%~98%可调。第10 脚( CAP) 与第11 脚间的电容C 起到很重要的作用, 它的大小决定了输出信号频率的大小, 当C 确定后, 调节ICL8038 第8 脚的电压可改变信号源的输出频率。从ICL8038 引脚9(要接上拉电阻)输出的波形经衰减后送单片机P3.4 进行频率测量。

正弦函数信号由三角波函数信号经过非线性变换而获得。利用二极管的非线性特性, 可以将三角波信号的上升和下降斜率逐次逼近正弦波的斜率。ICL8038 中的非线性网络是由4 级击穿点的非线性逼近网络构成。一般说来, 逼近点越多得到的正弦波效果越好, 失真度也越小, 在本芯片中N= 4, 失真度可以小于1。在实测中得到正弦信号的失真度可达0.5 左右。其精度效果相当满意。为了进一步减小正弦波的失真度, 可采用图2 所示电路中两个电位器RW3 和RW4 所组成的电路, 调整它们可使正弦波失真度减小。当然, 如果矩形波的占空比不是50% , 矩形波不再是方波, 引脚2 输出也就不再是正弦波了。 图2 电路原理图

经实验发现, 在电路设计中接10 脚和11 脚的电容值和性能是整个电路的关键器件, 电容值的确定也就确定电路能产生的频率范围, 电容性能的好坏直接影响信号频率的稳定性、波形的失真度, 由于该芯片是通过恒流源

对C 充放电来产生振荡的, 故振荡频率的稳定性就受到外接电容及恒流源电流的影响, 若要使输出频率稳定, 必须采用以下措施:外接电阻、电容的温度特性要好; 外部电源应稳定; 电容应选用漏电小、质量好的非极化电容器。3.实验结果

当±12V 工作电源时, 输出频率如下表: 失真度情况, 实验数据如下表: 4.软件流程图

图3 为软件流程图。T0 设为计数器,T1 设为定时器(初值为5ms)。5ms 启动主循环, 主要用于键盘扫描及扫描显示, 图2 中K0 作为控制键, K1 作为调整键, K2 作为增加键; 上电时程序进入频率设置模式, 按一下K0 键程序进入数控模式, 按二下K0 键程序进入扫频模式, 按三下K0 键程序进入频率设置模式, 周而复始。在频率设置模式, 由K1 键和K2 键完成频率设置。 图3 软件流程图基于ICL8038的函数发生器函数发生器是一种可以同时产生方波、三角波和正弦波的专用集成电路。当调节外部电路参数时,还可以获得占空比可调的矩形波和锯齿波。因此,广泛用于仪表之中。一、电路结构函数发生器ICL8038的电路结构如图虚线框内所示,共有五个组成部分。两个电流源的电流分别为IS1和IS2,且IS1=I,IS2=2I;两个电压比较器Ⅰ和Ⅱ的阈值电压分别为 和 ,它们的输入电压等于电容两端的电压uC,输出电压分别控制RS触发器的S端和 端;RS触发器的状态输出端Q和 用来控制开关S,实现对电容C的充、放电;两个缓冲放大器用于隔离波形发生电路和负载,使三角波和矩形波输出端的输出电阻足够低,以增强带负载能力;三角波变正弦波电路用于获得正弦波电压。RS触发器是数字电路中具有存储功能的一种基本单元电路。Q和 是一对互补的状态输出端,当Q=1时, ;当Q=0时, 。S和 是两个输入端,当 时,Q=0时, ;反之,当 时,Q=1时, ;当S=0, 时,Q和 保持原状态不变。两个电压比较器的电压传输特性如下图所示。二、工作原理★当给函数发生器ICL8038合闸通电时,电容C的电压为0V,根据电压比较器的电压传输特性,电压比较器Ⅰ和Ⅱ的输出电压均为低电平;因而RS触发器的 ,输出Q=0, ;★使开关S断开,电流源IS1对电容充电,充电电流为IS1=I因充电电流是恒流,所以,电容上电压uC随时间的增长而线性上升。★当上升为VCC/3时,电压比较器Ⅱ输出为高电平,此时RS触发器的 ,S=0时,Q和 保持原状态不变。★一直到上升到2VCC/3时,使电压比较器Ⅰ的输出电压跃变为高电平,此时RS触发器的 时,Q=1时, ,导致开关S闭合,电容C开始放电,放电电流为IS2-IS1=I因放电电流是恒流,所以,电容上电压uC随时间的增长而线性下降。起初,uC的下降虽然使RS触发的S端从高电平跃变为低电平,但 ,其输出不变。★ 一直到uC下降到VCC/3时,使电压比较器Ⅱ的输出电压跃变为低电平,此时 ,Q=0, ,使得开关S断开,电容C又开始充电,重复上述过程,周而复始,电路产生了自激振荡。由于充电电流与放电电流数值相等,因而电容上电压为三角波,Q和 为方波,经缓冲放大器输出。三角波电压通过三角波变正弦波电路输出正弦波电压。结论:改变电容充放电电流,可以输出占空比可调的矩形波和锯齿波。但是,当输出不是方波时,输出也得不到正弦波了。三、性能特点ICL8038是性能优良的集成函数发生器。可用单电源供电,即将引脚11接地,引脚6接+VCC,VCC为10~30V;也可双电源供电,即将引脚11接-VEE,引脚6接+VCC,它们的值为±5~±15V。频率的可调范围为0.01Hz~300kHz。输出矩形波的占空比可调范围为2%~98%,上升时间为180ns,下降时间为40ns。输出三角波(斜坡波)的非线性小于0.05%。输出正弦波的失真小于1%。四、常用接法如图所示为ICL8038的引脚图,其中引脚8为频率调节(简称为调频)电压输入端,电路的振荡频率与调频电压成正比。引脚7输出调频偏置电压,数值是引脚7与电源+VCC之,它可作为引脚8的输入电压。如图所示为ICL8038最常见的两种基本接法,矩形波输出端为集电极开路形式,需外接电阻RL至+VCC。在图(a)所示电路中,RA和RB可分别调整。在图(b)所示电路中,通过改变电位器RW滑动的位置来调整RA和RB的数值。当RA=RB时,各输出端的波形如下图(a)所示,矩形波的占空比为50%,因而为方波。当RA≠RB时,矩形波不再是方波,引脚2输出也就不再是正弦波了,图(b)所示为矩形波占空比是15%时各输出端的波形图。根据ICL8038内部电路和外接电阻可以推导出占空比的表达式为故RA<2RB。 为了进一步减小正弦波的失真度,可采用如下图所示电路中两个100kΩ的电位器和两个10kΩ电阻所组成的电路,调整它们可使正弦波失真度减小到0.5%。在RA和RB不变的情况下,调整RW2可使电路振荡频率值与最小值之比达到100:1。在引脚8与引脚6之间直接加输入电压调节振荡频率,频率与频率之可达1000:1。

多功能信号发生器设计原理

该 信号发生器 的硬件结构如图1 所示。硬件结构以 AT89C52 单片机为主, 包括DA 转换模块、输出放大模块、数据存储模块、液晶显示模块、 时钟模块、电源模块及键盘等。系统工作原理: 在开机时, 主 AT89C52 单片机定时中断产生脉冲信号, 其信号大小采用默认值, 该值输出给DA 转换模块后变为电流信号, 然后通过输出放大模块输出用户需要的电压方波信号, 同时, 液晶显示模块动态显示方波信号的各种参数和时间信息。 用户通过键盘可在线修改系统运行参数, 同时可保存当前设定值或查看历史运行数据。 为了提高系统的集成度和减小系统体积, 采用 CPLD 可编程逻辑器 件完成了系统外围电路的组合逻辑设计。从图1 可以看出, CPLD 是整个仪器的关键, 他接受从单片机发来的控制指令, 产生各个芯片的控制时序和地址信号。本设计中采用LATT ICE 公司的44 脚ispLSI1016VE 器件, 他采用PLCC 封装, 内有1000 个PLDGates, 擦写次数超过10 000 次, 是一种不需要特殊编程装置、使用极为方便的逻辑器件。 通过VHDL 语言编程实现了地址锁存器、译码器及其他组合逻辑。由于 信号发生 器需要时间信息, 选用了高性能的DS1302 时钟芯片向系统提供时间信息。考虑该 信号发生器 在不同时间各种设定参数长时间保存的要求, 选用富士通公司的FLASH 存储器MBM29F016 用于保存历史数据。容量为16 M b (2 M ×8 b) 的CMOS 器件 MBM29F016 在线可擦写次数超过100 000 次, 其48 脚的 TSOP 封装有助于减小系统体积和提高抗干扰性。此外, 由于在系统中单片机采用5 V 供电而DA 转换器采用15 V 供电, 所以采用了高性能的电源转换芯片MAX1776 作电平转换; 采用DS1233 作电源以保证系统工作的可靠性。系统在初始化后, 单片机将用户所需要生成波形的数据送出, 模数转换芯片DAC0832 将单片机输出数据转换为电流信号再通过运算放大器转化为电压信号 , 同时各种数据信息被送给液晶显示器进行显示。 通过按键作菜单按特定的步长对参数进行加减。另外还设计了 信号 发生器 与PC 机的串行通讯接口RS 232 接口, 以便日后对信号发生器的历史数据进行分析和处理。

设计并制作一个信号发生器要能产生正弦波周期性波形还能显示当前频率值

波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。本次课程设计使用的AT89S51 单片机构成的发生器可产生锯齿波、三角波、正弦波等多种波形,波形的周期可以用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑等优点。在本设计的基础上,加上按钮控制和LED显示器,则可通过按钮设定所需要的波形频率,并在LED上显示频率、幅值电压,波形可用示波器显示。

二、系统设计

波形发生器原理方框图如下所示。波形的产生是通过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

it LCP=P2^2;

it SCP=P2^1;

it SI=P2^0;

it S1=P2^3;

it S2=P2^4;

it S3=P2^5;

it S4=P2^6;

it S5=P2^7;

it DA0832=P3^3;

it 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-th256-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].哈尔滨:哈

尔滨工业大学出版社,1997.53-61.

更多电子问题请关注我!zhidao_ceo竭诚为您解答!

设计能产生方波、三角波及正弦波等多种波形信号的信号发生器

采用运算放大器先产生一个正弦波信号。

正弦波信号通过滞回比较器产生一个方波信号。

方波信号通过一个积分器产生三角波信号。

以上电路共需三个运算放大器和相关的电阻、电容。

具体电路参考下图:

脉冲波形发生器的设计

信号发生器是一种能产生标准信号的电子仪器,是工业生产和电工、电子实验室中经常使用的电子仪器之一。信号发生器可以有多种实现方法,而频率越高、产生波形越多的信号发生器越好,可以从信号发生器的制作条件及使用领域方面考虑其实现方法。文章用函数发生芯片ICL8038结合外围电路产生三角波、正弦波以及矩形波三种基本波形,再把产生的波形通过由ICM7216D、晶体、电容、开关及LED数码管等组成的显示电路显示出频率,而把波形产生电路产生的正弦波通过调频电路就会产生一个调频波。

:ICL8038;信号发生器;调频电路;电子仪器

中图分类号:TP39文献标识码:A文章编号:1009-2374(2009)05-0014-03 信号发生器是一种能产生标准信号的电子仪器,是工业生产和电工、电子实验室中经常使用的电子仪器之一。在现代电子学的各个领域,常常需要高精度且频率可方便调节的信号发生器。一般来说,频率越高、产生波形种类越多的发生器性能越好,但器件成本和技术要求也大大提高,因此在满足工作要求的前提下,性价比高的发生器是我们的。常见的信号发生器是用ICL8038制成的简单信号发生器,但这种信号发生器仅能产生正弦波、三角波和矩形波,而本文要研究的就是如何在ICL8038基础上结合其外围电路以及直接调频电路使其产生其他的信号。

一、总体设计

(一)信号发生器的设计框图

信号发生器框图如图 1所示:

图1 信号发生器设计框图

图1中,波形产生电路由单片集成电路函数发生器ICL8038及其外围电路组成,用来显示方波、正弦波及三角波;直接调频电路由石英晶体及变容二极管等组成,波形产生电路产生的正弦波经此电路会产生一个调频波;显示电路由单片频率计ICM7216D、晶体、电容、开关及LED数码管[11]等组成,用来显示输出波形的频率值。

(二)信号发生器的总电路图

信号发生器的总电路如图2所示:

二、各部分电路设计

(一)基于ICL8038的波形发生电路设计

ICL8038组成的函数发生器如图3所示。电阻R1与电位器 RP1用来确定8脚的直流电位U8,通常取U8≥2UCC/3。U8越高,IA和IB越小,输出频率越低,反之亦然。因此,ICL8038又称为压控振荡器(VCO)或频率调制器(FM)。RP1可调节的频率范围为20HZ~20KHZ。U8还可以由7脚提供固定电位,此时,输出频率f0仅由RA,RB及电容Ct决定。UCC采用双电源供电时,输出波形的直流电平为零。当采用单电源供电时,输出波形的直流电平为UCC/2。

(二)晶体振荡器的变容管直接调频电路设计

图4是100MHz晶体振荡器的变容管直接调频电路。图4中,T2管接成皮尔斯晶体振荡电路,并由变容管直接调频。T2管集电极上的谐振回路调谐在晶体振荡频率的三次谐波上,完成三倍频功能。T1管为音频放大器,将输入的信号放大后,经2.2μH的高频扼流圈加到变容管上。同时T1的电源电压也通过2.2μH高频扼流圈加到变容管上,作为变容管的偏置电压。

对晶体振荡器进行调频时,由于振荡回路中引入了变容二极管,因此频率稳定度相对于不调频的晶体振荡器有所降低。一般,其短期频率稳定度达到10-6数量级,长期频率稳定度达到10-5数量级。

图4 晶体振荡器的变容管直接调频电路

(三)基于ICM7216D的显示电路设计

显示电路是由单片频率计ICM7216D、晶体、电阻及电容等构成。ICM7216D是美国Intersil公司首先研制的专用测频大规模集成芯片。它是标准的28引脚的双列直插式集成电路,采用单一的+5V稳压电源工作。它内含高频振荡器、十进制计数器、七段译码器、位多路复用器、能够直接驱动LED显示器的8段一段码驱动器、8位一位码驱动器。其基本的测频范围为DC至10MHz,若加预置的分频电路,则上限频率可达40MHz或100MHz,单片频率计ICM7216D只要加上晶振、量程选择、LED 显示器等少数器件即可构成一个DC至40MHz的频率计,可用于频率测量,机械转速测量等方面的应用。

图5为基于ICM7216D的显示电路。用晶体和电容C1、C2构成的10MHz振荡频率作为基准频率,经ICM7216D内部分频后,产生闸门时间脉冲。用开关K选择量程。另用开关S1控制电路复位,S2可时电路处于保持状态。8个LED数码管的DP都与DP小数点输入脚(23脚)相连,由内部小数点逻辑单元产生正确的小数点位。当被测信号输出时,ICM7216D对其频率计数,8位LED逐位显示被测频率,从而实现测量和显示的目的。

具体工作过程为:使用一个2.5MHz的晶振及22MΩ的电阻、电容C1、C2来满足内部振荡器的正常工作。由于内部振荡器是一个高增益的CMOS反相器,因此用电阻与晶振并联以提供足够的偏压,此时芯片的基振为2.5MHz。如果使用1MHz晶振代替2.5MHz晶振需要将芯片的脚25、脚26之间的电容作些调整,这时芯片的基振为1MHz。另外芯片还允许使用外部振荡器,如果使用外部振荡器时,芯片的基频等于外部振荡电路的频率,此时芯片内部振荡电路仍在工作,但不影响芯片的正常测量。若内部振荡频率小于1MHz或只有外部振荡电路在工作时,必须将脚25、脚26连接在一起,以保证足够的悬挂电平。如果外部振荡电路输出为TTL 电平时,则需要在脚25、脚26之间接一个22MΩ的电阻,并且要将脚24、脚25连在一起,如果外部振荡电路的频率小于100KHz,则外部振荡电路对芯片不起作用,芯片仍以内部振荡电路的频率工作。

被测信号从脚28输入,如果输入信号较小,可以采用前置放大电路。如果输入信号较太,可以采用限幅电路。D1~D8八条位驱动线分别与八位LED的公共端相连,段驱动输出线a~g与LED相应的引脚相连将LED的第1至7位的小数点都与脚23连在一起,则由内部小数点逻辑单元产生正确的小数点位。八位LED是示器逐位显示,频率为500Hz ,位信号时间为244μs,两位显示之间有6μs的位空白时间,以防止重影。芯片的段驱动电流为15mA,额定段驱动电流为12mA。要增加显示亮度,可将电源电压增加到6V,在测量显示时,小数点左边的零被消除,右边的位照常显示。当被测信号的频率超出频率计的测量范围发生溢出时,芯片内部能够点亮第八位的小数点,表示此时发生溢出。

图5中,K为一个四档开关,用于选择不同的量程。S1为一个按键开关,当其按下时,脚12为低电平,主计数器停止计数,显示为零。当S2按下时,脚27为高电平,主计数器暂停计数,此时数据自锁并显示;当S2断开,主计数器才重新启动计数。由于复合控制输入端所用信号是位驱动信号,为避免复合控制信号影响位信号,使用二极管进行隔离,与芯片管脚1相连的电阻及电容的作用是降低噪声,减少干扰。

图5 基于ICM7216D的显示电路

(四)整形电路设计

由于ICM7216D芯片只能对脉冲信号进行计数,所以波形产生电路产生的正弦波和三角波要先进行整形,然后才能送进显示电路进行频率显示,而整形电路只需用一个与非门就可实现。本文选择了74LS20芯片进行整形。74LS20芯片引脚图如图6所示:

三、结果分析

本文采用±10V、5V直流电源供电,运用数字示波器显示输出波形。

信号发生器能输出正弦波、三角波、矩形波及调频波;正弦波、三角波、矩形波的频率为55.10Hz,频率为16.13KHz;正弦波的峰峰值可达到4.36V;三角波的峰峰值可达6.6V,占空比可在44.4%~50.4%之间调节;矩形波的峰峰值可达到20.2V,占空比则可在41.3%~57.5%之间调节;调频电路中的载波峰峰值为5.6V,频率为13.3MHz;显示电路由于加了4分频电路,则测频上限频率可达40MHz。

四、结语

本文是采用函数发生芯片ICL8038结合外围电路产生正弦波、三角波及矩形波,再把产生的正弦波输入晶体振荡器的变容管直接调频电路,产生调频波输出,各波形通过ICM7216D组成的显示电路显示出其频率。该系统完全由硬件构成,避免了编程方面的问题,电路简单,易于调试,产生的波形种类多。参考文献

[1]吴慎山,等. 电子线路设计与实践[M]. :电子工业出版社,2005.

[2]王昊,李昕.集成运放应用电路设计360例[M]. :电子工业出版社,2007.

[3]赛尔吉欧·佛朗哥.基于运算放大器和模拟集成电路的电路设计[M]. 西安:西安交通大学出版社,2004.

[4]余小平,奚大顺.电子系统设计(基础篇)[M]. :航空航天大学出版社,2007.

[5]王彦朋,张凤凌,等. 大学生电子设计与应用[M]. :电力出版社,2007.

[6]PAULR,GRAY,等.模拟集成电路的分析与设计[M]. :高等教育出版社,2005.

[7]张肃文. 高频电子线路[M]. :高等教育出版社,2004.

[8]萧家源. 电子仪表原理与应用[M]. :科学出版社,2005.

[9]Paul Scherz. 发明者电子设计宝典[M]. 福州:福建科学技术出版社,2004.

[10]周云波. ICL8038扫频信号发生器[J]. 现代电子技术,2003,(17).

[11]姚行洲. ICL8038原理及应用[J]. 广播电视大学学报,1999,(1).

[12]金韦. 波形发生器新型集成电路ICL8038及XR-2206[J]. 实用电子文摘,1997,(1).

[13]Alan V.Oppenheim,Alan S.Willsky,S.Hamid Nawab. Signals and Systems,Second Edition[M]. :电子工业出版社,2002. =====按上面的加点内容就行了,(找老师看看加。

根据要求设计,细谈

版权声明:本文内容由互联网用户自发贡献。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 836084111@qq.com,本站将立刻删除。