1、 摘 要 信号发生器是当今各种电子电路实验中必不可少的仪器设备之一。传统信号发生器通常只有二种主要的控制,可变频率与幅度。这种电路存在波形质失真大、控制难、调节范围小、电路不简单和体积大等缺点。随着计算机的普及和单片机的应用广泛,二者带动了信号发生器日新月异的变化。单片机产生的信号比传统信号发生器精度更高、频率变换更容易、波形失真度更小。信号发生器是各式各样测试和实验过程中必不可少的仪器,在通信、测量、雷达、控制、教学等领域都有重要应用。不论是在生产、科研还是教学上,信号发生器都是电子工程师信号仿真实验的最佳工具,而且,随着技术的进步,信号发生器的设计方法越来越多,设计技术也越来越先进。比较和
2、研究信号发生器的设计方法,克服传统方法的缺点,设计出更精确,功能更完善的信号发生器是必要的。本文介绍的是一种用AT89S52单片机构成的信号发生器,可产生方波、三角波、正弦波、锯齿波,波形的频率与幅度可调。具有线路简单、结构紧凑、性能优越等特点。文章给出了源代码,通过仿真测试,其性能指标达到了设计要求。单片机小系统负责用户的交互和系统控制,键盘用于频率的输入与波形的选择。LCD显示当前所选信号的频率调整情况,而末级放大电路则对生成的信号进行适当的放大,以提高信号的振幅和强度。关键词单片机,DAC,信号发生器 ,频率调节,幅度调节 Abstract In recent years, with t
3、he computer in the social sector penetration and MCU application is continuously, while driving to the deepening traditional function signal generator on new PE updates. SCM can produce high precision, fast transform the frequency, the output waveform distortion of preferred selection technology. Fu
4、nction signal generator is all sorts of test and experiment process the essential tool, in communication, measuring, radar, control, teaching fields used widely. Both in production and scientific research or teaching, signal generator are electronic engineer signal simulation experiment, and the bes
5、t tool, signal generator design method, design technology is becoming more and more advanced. Research function signal generator design methods, overcome shortcomings of traditional methods, in order to better designed complex FM, attenuation function signal generator. This thesis introduces a AT89C
6、2 single-chip computers.the waveform generator, can produce square-wave, triangle wave, sine wave, sawtooth wave etc. Various waveform, waveform cycle available program change, and can choose according to need single polarity output or dual polarity output, has the line is simple, compact structure,
7、 superior performance characteristics. The article presented the source code, through the simulation test, the performance indexes meet the design requirements. : singlechip processor system is responsible for the user interaction and system control, the keyboard for frequency of input and waveform
8、choice. LCD display the current selected the signal frequency adjustment. Has the interface hint function, and final amplifier circuit is generated signal proper amplifier, in order to improve the signal amplitude and strength.Keywordsmicrocontroller, DAC, signal generator, microcontroller, frequenc
9、y adjustment, interface hints. 目 录 1 概述1 1.1 单片机概述2 1.1.1 特殊功能寄存器3 1.1.2 数据存储器4 1.1.3 自动重装载方式5 1.1.4 波特率发生器6 1.1.5 可编程时钟输出7 1.1.6 时钟振荡器7 1.1.7 Flash存储器的编程8 1.3 信号发生器的分类9 1.3.1 正弦信号发生器9 1.3.2 低频信号发生器10 1.3.3 频率合成式信号发生器10 1.3.4 函数发生器11 1.3.5 脉冲信号发生器11 1.3.6 噪声信号发生器111.4 信号发生器的应用121.5 研究内容122 方案的设计与选择1
10、3 2.1 方案的比较13 2.2 设计原理13 2.3 设计思想14 2.4 设计功能153 硬件设计16 3.1 硬件原理框图16 3.2 主控电路16 3.3 数/模转换电路17 3.4 按键接口电路18 3.5 时钟电路18 3.6 显示电路194 软件设计20 4.1 程序流程图20 4.2 源程序的调试22 4.3 波形产生与控制255 总原理图及元器件清单27 5.1 总电路图27 5.2 元器件清单286 总结与展望28致 谢29参考文献301 概述随着大规模集成电路技术的发展,中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、(I/O)接口、定时器/计数器
11、和串行通信接口,以及其他一些计算机外围电路等均可集成在一块芯片上构成单片微型计算机,简称为单片机。单片机具有体积小、成本低,性能稳定、使用寿命长等特点。其最明显的优势就是可以嵌入到各种仪器、设备中,这是其他计算机和网络都无法做到的。1.1单片机概述AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程 AT89S52引脚图 DIP封装Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Fla
12、sh,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。 P0 口:P0口是一个8位漏极开路的双向
13、I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0不具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。 P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.1
14、分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX)。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能: P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用)P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动 AT89S52引脚图 PLCC封装4 个 TTL 逻辑电平。对P2 端口写“1”时,内部上拉
15、电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR) 时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用 8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p3 输出缓冲器能驱动4 个 TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可
16、以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 RST:复位输入。
17、当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,
18、应设置ALE禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程
19、电压Vpp。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。1.1.1特殊功能寄存器特殊功能寄存器(SFR)的地址空间映象如表1所示。 AT89S52 特殊寄存器映象及复位值并不是所有的地址都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。 用户不应该给这些未定义的地址写入数据“1”。由于这些寄存器在将来可能被赋予新的功能,复位后,这些位都为“0”。 定时器 2 寄存器:寄存器T2CON 和T2MOD 包含定时器2 的控制位和状态位(如表2和表3所示),寄存器对RCAP2H和RCAP2L是定时器2
20、的捕捉/自动重载寄存器。 中断寄存器:各中断允许位在IE寄存器中,六个中断源的两个优先级也可在IE中设置。 表2 T2CON:定时器/计数器2控制寄存器 T2CON 地址为0C8H 复位值:0000 0000B位可寻址 TF2 EXF2RLCLK TCLK EXEN2TR2C/T2CP/RL27654 3210符号功能TF2定时器2 溢出标志位。必须软件清“0”。RCLK=1 或TCLK=1 时,TF2不 用置位。EXF2定时器2 外部标志位。EXEN2=1 时,T2EX 上的负跳变而出现捕捉或重载 时,EXF2 会被硬件置位。定时器2 打开,EXF2=1 时,将引导CPU执行定 时器2 中断
21、程序。EXF2 必须如见清“0”。在向下/向上技术模式(DCEN=1) 下EXF2不能引起中断。RLCLK 串行口接收数据时钟标志位。若RCLK=1,串行口将使用定时器2 溢出脉冲 作为串行口工作模式1 和3 的串口接收时钟;RCLK0,将使用定时器1计数 溢出作为串口接收时钟。TCLK串行口发送数据时钟标志位。若TCLK=1,串行口将使用定时器2 溢出脉冲作 为串行口工作模式1 和3 的串口发送时钟;TCLK0,将使用定时器1计数溢出 作为串口发送时钟。EXEN2定时器2外部允许标志位。当EXEN2=1时,如果定时器2没有用作串行时钟, T2EX(P1.1)的负跳变见引起定时器2 捕捉和重载
22、。若EXEN20,定时器2 将视T2EX端的信号无效TR2开始/停止控制定时器2。TR2=1,定时器2开始工作C/T2 定时器 2 定时/计数选择标志位。C/T2 0,定时; C/T2 1,外部事件计 数(下降沿触发)CP/RL2捕捉/重载选择标志位。当EXEN2=1时, CP/RL21,T2EX出现负脉冲,会引 起捕捉操作;当定时器2溢出或EXEN2=1时T2EX出现负跳变,都会出现自动重载 操作。CP/RL20 将引起T2EX 的负脉冲。当RCKL=1或TCKL1时,此标志位 无效,定时器2溢出时,强制做自动重载操作。双数据指针寄存器:为了更有利于访问内部和外部数据存储器,系统提供了两路1
23、6位数据指针寄存器:位于SFR中82H83H的DP0和位于84H85。特殊寄存器AUXR1中DPS0 选择DP0;DPS=1 选择DP1。用户应该在访问数据指针寄存器前先初始化DPS至合理的值。 表 3a AUXR:辅助寄存器 AUXR 地址:8EH 复位值:XXX00XX0B不可位寻址 WDIDLEDISRTO DISALE 7 6 5 432 10预留扩展用 DISALE ALE使能标志位 DISALE 操作方式 0 ALE 以1/6晶振频率输出信号 1 ALE 只有在执行MOVX 或MOVC指令时激活 DISRTO 复位输出标志位 DISRTO 0 看门狗(WDT)定时结束,Reset
24、输出高电平 1 Reset 只有输入 WDIDLE 空闲模式下WDT 使能标志位 WDIDLE 0 空闲模式下,WDT继续计数 1 空闲模式下,WDT停止计数 掉电标志位:掉电标志位(POF)位于特殊寄存器PCON的第四位(PCON.4)。上电期间POF置“1”。POF可以软件控制使用与否,但不受复位影响。 表 3b AUXR1:辅助寄存器1 AUXR1 地址:A2H 复位值:XXXXXXX0B 不可位寻址 DPS7654 3 210预留扩展用 DPS 数据指针选择位 DPS 0 选择DPTR寄存器DP0L和DP0H 1 选择DPTR寄存器DP1L和DP1H1.1.2存储器结构MCS-51器件
25、有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。 程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。 对于 89S52,如果EA 接VCC,程序读写先从内部存储器(地址为0000H1FFFH)开始,接着从外部寻址,寻址地址为:2000HFFFFH。 数据存储器:AT89S52 有256 字节片内数据存储器。高128 字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。 当一条指令访问高于7FH 的地址时,寻址方式决定CPU 访问高128 字节RAM 还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。
26、例如,下面的直接寻址指令访问0A0H(P2口)存储单元MOV 0A0H , #data使用间接寻址方式访问高128 字节RAM。例如,下面的间接寻址方式中,R0 内容为0A0H,访问的是地址0A0H的寄存器,而不是P2口(它的地址也是0A0H)。 MOV R0 , #data堆栈操作也是简介寻址方式。因此,高128字节数据RAM也可用于堆栈空间。1.1.3看门狗定时器WDT是一种需要软件控制的复位方式。WDT 由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。WDT 在默认情况下无法工作;为了激活WDT,用户必须往WDTRST 寄存器(地址:0A6H)中依次写入01
27、EH 和0E1H。当WDT激活后,晶振工作,WDT在每个机器周期都会增加。WDT计时周期依赖于外部时钟频率。除了复位(硬件复位或WDT溢出复位),没有办法停止WDT工作。当WDT溢出,它将驱动RSR引脚一个高电平输出。 WDT的使用为了激活WDT,用户必须向WDTRST寄存器(地址为0A6H的SFR)依次写入0E1H和0E1H。当WDT激活后,用户必须向WDTRST写入01EH和0E1H喂狗来避免WDT溢出。当计数达到8191(1FFFH)时,13 位计数器将会溢出,这将会复位器件。晶振正常工作、WDT激活后,每一个机器周期WDT 都会增加。为了复位WDT,用户必须向WDTRST 写入01EH
28、 和0E1H(WDTRST 是只读寄存器)。WDT 计数器不能读或写。 当WDT 计数器溢出时,将给RST 引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期(TOSC),其中TOSC=1/FOSC。为了很好地使用WDT,应该在一定时间内周期性写入那部分代码,以避免WDT复位。 掉电和空闲方式下的 WDT在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。在这种方式下,用户不必喂狗。有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给WDT 喂狗,就如同通常AT89S52 复位一样。 通过中断退出掉电模式的情形有很大的不同。中断应持续
29、拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断服务程序。为了防止WDT在中断保持低电平的时候复位器件,WDT 直到中断拉低后才开始工作。这就意味着WDT 应该在中断服务程序中复位。 为了确保在离开掉电模式最初的几个状态WDT不被溢出,最好在进入掉电模式前就复位WDT。 在进入待机模式前,特殊寄存器AUXR的WDIDLE位用来决定WDT是否继续计数。 默认状态下,在待机模式下,WDIDLE0,WDT继续计数。为了防止WDT在待机模式下复位AT89S52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。1.1.4定时器0和定时器1在AT89S52 中,定时器0 和定时器
30、1 的操作与AT89C51 和AT89C52 一样。为了获得更深入的关于UART 的信息,选择“Products”,然后选择“8051-Architech Flash Microcontroller”,再选择“ProductOverview”即可。 。1.1.5定时器2定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON中的C/T2位选择(如表2所示)。定时器2有三种工作模式: 捕捉方式、自动重载(向下或向上计数)和波特率发生器。如表3 所示,工作模式由T2CON中的相关位选择。定时器2 有2 个8位寄存器:TH2和TL2。在定时工作方式中,
31、每个机器周期,TL2 寄存器都会加1。由于一个机器周期由12 个晶振周期构成,因此,计数频率就是晶振频率的1/12。表 3 定时器2工作模式 RCLK+TCLK CP/RL2 TR2 MODE 00116位自动重载01116位捕捉1x1波特率发生器xx0(不用)捕捉方式在捕捉模式下,通过T2CON中的EXEN2来选择两种方式。 图 5 定时器的捕捉模式如果EXEN2=0,定时器2时一个16位定时/计数器,溢出时,对T2CON 的TF2标志置位,TF2引起中断。如果EXEN2=1,定时器2做相同的操作。除上述功能外,外部输入T2EX引脚(P1.1)1至0的下跳变也会使得TH2和TL2中的值分别捕
32、捉到RCAP2H和RCAP2L中。除此之外,T2EX 的跳变会引起T2CON 中的EXF2 置位。像TF2 一样,T2EX 也会引起中断。捕捉模式如图5所示。在计数工作方式下,寄存器在相关外部输入角T2 发生1 至0 的下降沿时增加1。在这种方式下,每个机器周期的S5P2期间采样外部输入。一个机器周期采样到高电平,而下一个周期采样到低电平,计数器将加1。在检测到跳变的这个周期的S3P1 期间,新的计数值出现在寄存器中。因为识别10的跳变需要2个机器周期(24个晶振周期),所以,最大的计数频率不高于晶振频率的1/24。为了确保给定的电平在改变前采样到一次,电平应该至少在一个完整的机器周期内保持不
33、变。 自动重载当定时器2 工作于16 位自动重载模式,可对其编程实现向上计数或向下计数。这一功能可以通过特殊寄存器T2MOD(见表4)中的DCEN(向下计数允许位)来实现。通过复位,DCEN 被置为0,因此,定时器2 默认为向上计数。DCEN 设置后,定时器2就可以取决于T2EX向上、向下计数。 如图6 所示,DCEN=0 时,定时器2 自动计数。通过T2CON 中的EXEN 图 6 定时器2重载模式(DCEN=0)2 位可以选择两种方式。如果EXEN2=0,定时器2计数,计到0FFFFH后置位TF2溢出标志。计数溢出也使得定时器寄存器重新从RCAP2H 和RCAP2L 中加载16 位值。定时
34、器工作于捕捉模式,RCAP2H和RCAP2L的值可以由软件预设。如果EXEN2=1,计数溢出或在外部T2EX(P1.1)引脚上的1到0的下跳变都会触发16位重载。这个跳变也置位EXF2中断标志位。T2EX 上的一个逻辑0 使得定时器2 向下计数。当TH2 和TL2 分别等于RCAP2H 和RCAP2L中的值的时候,计数器下溢。计数器下溢,置位TF2,并将0FFFFH加载到定时器存储器中。如图6所示,置位DCEN,允许定时器2向上或向下计数。在这种模式下,T2EX引脚控制着计数的方向。T2EX上的一个逻辑1使得定时器2向上计数。定时器计到0FFFFH溢出,并置位TF2。定时器的溢出也使得RCAP
35、2H和RCAP2L中的16位值分别加载到定时器存储器TH2和TL2中。 定时器2上溢或下溢,外部中断标志位EXF2 被锁死。在这种工作模式下,EXF2不能触发中断。 表 4 T2MOD-定时器2控制寄存器 T2MOD 地址:0C9H 复位值:XXXXXX00B 不可位寻址 T2OE DCEN7 65 43 210符号 功能 无定义,预留扩展定时器2输出允许位置1后,定时器2可配置成向上/向下计数1.1.6中断源AT89S52 有6个中断源:两个外部中断(INT0 和INT1),三个定时中断(定时器0、1、2)和一个串行中断。这些中断如图10所示每个中断源都可以通过置位或清除特殊寄存器IE 中的
36、相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。 如表5所示,IE.6位是不可用的。对于AT89S52,IE.5位也是不能用的。用户软件不应给这些位写1。它们为AT89系列新产品预留。 定时器2可以被寄存器T2CON中的TF2和EXF2的或逻辑触发。程序进入中断服务后,这些标志位都可以由硬件清0。实际上,中断服务程序必须判定是否是TF2 或EXF2激活中断,标志位也必须由软件清0。 定时器0和定时器1标志位TF0 和TF1在计数溢出的那个周期的S5P2被置位。它们的值一直到下一个周期被电路捕捉下来。然而,定时器2 的标志位TF2 在计数溢出
37、的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。 表 4 中断允许控制寄存器(IE) (MSB) (LSB) EA ET2 ES ET1 EX1ET0EX0中断允许控制位1,允许中断 中断允许控制位0,禁止中断 符号位地址功能EAIE.7中断总允许控制位。EA=0,中断总禁止;EA=1,各中断 由各自的控制位设定IE.6预留ET2 IE.5定时器2中断允许控制位ES IE.4串行口中断允许控制位ET1 IE.3定时器1中断允许控制位EX1IE.2外部中断1允许控制位ET0 IE.1定时器0中断允许控制位EX0 IE.0外部中断0允许控制位1.2 信号发生器的工作原理 信号发生器用来产生
38、频率为20Hz200kHz的正弦信号(低频)。除具有电压输出外,有的还有功率输出。所以用途十分广泛,可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。另外,在校准电子电压表时,它可提供交流信号电压。低频信号发生器的原理:系统包括主振级、主振输出调节电位器、电压放大器、输出衰减器、功率放大器、阻抗变换器(输出变压器)和指示电压表。 主振级产生低频正弦振荡信号,经电压放大器放大,达到电压输出幅度的要求,经输出衰减器可直接输出电压,用主振输出调节电位器调节输出电压的大小。电源自适应的方波发生器是一种不用电源的方波发生器,可供电子爱好者和实验
39、室作简易信号源用。电路是由六反相器CD4096组成的自适应方波发生器。当输入端输入小信号正弦波时,该信号分两路传输,其一路径C1、D1、D2、C2回路,完成整流倍压功能,给CD4096提供工作电源;另一路径电容C3耦合,进入CD4096的一个反相器的输入端,完成信号放大功能(反相器在小信号工作时,可作放大器用)。该放大信号经后级的门电路处理,变换成方波后经CD4096的12、8、10脚输出。输出端的R2为可调电阻,以保证输出端信号从01.25V可调。该方波发生器电路简单,制作容易,因此可利用该方波发生器电路,作市电供电的50Hz方波发生器。制作时,市电220V的正弦波,应经变压器隔离降压(10
40、.75V)处理后,输入到电路的输入端,以保安全。1.3信号发生器的分类信号发生器主要包括低频信号发生器、高频信号发生器、微波扫频和程控信号发生器、频率合成式信号发生器、函数发生器、脉冲信号发生器、随机信号发生器、噪声信号发生器、伪随信号发生器,下面就部分信号发生器作简要介绍。 1.3.1正弦信号发生器正弦信号发生器主要用于测量电路和系统的频率特性、非线性失真、增益及灵敏度等。按频率覆盖范围分为低频信号发生器、高频信号发生器和微波信号发生器;按输出电平可调节范围和稳定度分为简易信号发生器(即信号源)、标准信号发生器(输出功率能准确地衰减到-100分贝毫瓦以下)和功率信号发生器(输出功率达数十毫瓦
41、以上);按频率改变的方式分为调谐式信号发生器、扫频式信号发生器、程控式信号发生器和频率合成式信号发生器等。 1.3.2低频信号发生器包括音频(20020000赫)和视频 (1赫10兆赫)范围的正弦波发生器。主振级一般用RC式振荡器,也可用差频振荡器。为便于测试系统的频率特性,要求输出幅频特性平和波形失真小。 1.3.3频率合成式信号发生器这种发生器的信号不是由振荡器直接产生,而是以高稳定度石英振荡器作为标准频率源,利用频率合成技术形成所需之任意频率的信号,具有与标准频率源相同的频率准确度和稳定度。输出信号频率通常可按十进位数字选择,最高能达11位数字的极高分辨力。频率除用手动选择外还可程控和远
42、控,也可进行步级式扫频,适用于自动测试系统。直接式频率合成器由晶体振荡、加法、乘法、滤波和放大等电路组成,变换频率迅速但电路复杂,最高输出频率只能达1000兆赫左右。用得较多的间接式频率合成器是利用标准频率源通过锁相环控制电调谐振荡器(在环路中同时能实现倍频、分频和混频),使之产生并输出各种所需频率的信号。这种合成器的最高频率可达26.5吉赫。高稳定度和高分辨力的频率合成器,配上多种调制功能(调幅、调频和调相),加上放大、稳幅和衰减等电路,便构成一种新型的高性能、可程控的合成式信号发生器,还可作为锁相式扫频发生器。 1.3.4函数发生器 函数发生器又称波形发生器。它能产生某些特定的周期性时间函
43、数波形(主要是正弦波、方波、三角波、锯齿波和脉冲波等)信号。频率范围可从几毫赫甚至几微赫的超低频直到几十兆赫。除供通信、仪表和自动控制系统测试用外,还广泛用于其他非电测量领域。图2为产生上述波形的方法之一,将积分电路与某种带有回滞特性的阈值开关电路(如施米特触发器)相连成环路,积分器能将方波积分成三角波。施米特电路又能使三角波上升到某一阈值或下降到另一阈值时发生跃变而形成方波,频率除能随积分器中的RC值的变化而改变外,还能用外加电压控制两个阈值而改变。将三角波另行加到由很多不同偏置二极管组成的整形网络,形成许多不同斜度的折线段,便可形成正弦波。另一种构成方式是用频率合成器产生正弦波,再对它多次
44、放大、削波而形成方波,再将方波积分成三角波和正、负斜率的锯齿波等。对这些函数发生器的频率都可电控、程控、锁定和扫频,仪器除工作于连续波状态外,还能按键控、门控或触发等方式工作。 1.3.5脉冲信号发生器产生宽度、幅度和重复频率可调的矩形脉冲的发生器,可用以测试线性系统的瞬态响应,或用模拟信号来测试雷达、多路通信和其他脉冲数字系统的性能。脉冲发生器主要由主控振荡器、延时级、脉冲形成级、输出级和衰减器等组成。主控振荡器通常为多谐振荡器之类的电路,除能自激振荡外,主要按触发方式工作。通常在外加触发信号之后首先输出一个前置触发脉冲,以便提前触发示波器等观测仪器,然后再经过一段可调节的延迟时间才输出主信
45、号脉冲,其宽度可以调节。有的能输出成对的主脉冲,有的能分两路分别输出不同延迟的主脉冲。 1.3.6 噪声信号发生器 完全随机性信号是在工作频带内具有均匀频谱的白噪声。常用的白噪声发生器主要有:工作于1000兆赫以下同轴线系统的饱和二极管式白噪声发生器;用于微波波导系统的气体放电管式白噪声发生器;利用晶体二极管反向电流中噪声的固态噪声源(可工作在18吉赫以下整个频段内)等。噪声发生器输出的强度必须已知,通常用其输出噪声功率超过电阻热噪声的分贝数(称为超噪比)或用其噪声温度来表示。噪声信号发生器主要用途是:在待测系统中引入一个随机信号,以模拟实际工作条件中的噪声而测定系统的性能;外加一个已知噪声信
46、号与系统内部噪声相比较以测定噪声系数;用随机信号代替正弦或脉冲信号,以测试系统的动态特性。例如,用白噪声作为输入信号而测出网络的输出信号与输入信号的互相关函数,便可得到这一网络的冲激响应函数。 伪随机信号发生器用白噪声信号进行相关函数测量时,若平均测量时间不够长,则会出现统计性误差,这可用伪随机信号来解决。当二进制编码信号的脉冲宽度墹T足够小,且一个码周期所含墹T数N很大时,则在低于fb=1/墹T的频带内信号频谱的幅度均匀,称为伪随机信号。只要所取的测量时间等于这种编码信号周期的整数倍,便不会引入统计性误差。二进码信号还能提供相关测量中所需的时间延迟。伪随机编码信号发生器由带有反馈环路的n级移位寄存器