燕山大学本科生毕业设计(论文)
出数字码形。混和信号源又可分为函数信号发生器和任意波形/函数发生器,其中函数信号发生器输出标准波形,如正弦波、方波等,任意波/函数发生器输出用户自定义的任意波形;逻辑信号发生器又可分为脉冲信号发生器和码型发生器,其中脉冲信号发生器驱动较小个数的的方波或脉冲波输出,码型发生器生成许多通道的数字码型。如泰克生产的AFG3000系列就包括函数信号发生器、任意波形/函数信号发生器、脉冲信号发生器的功能。
2.1.3 按信号发生器的性能分类
按信号发生器的性能指标,又可分为一般信号发生器和标准信号发生器。前者是指对其输出信号的频率、幅度的准确度和稳定度及波形失真等要求不高的一类发生器;后者是指输出信号的频率、幅度、调制系数等在一定范围内连续可调,并且读数准确、稳定,屏蔽性良好的中、高档信号发生器。
还有其他一些分类方法,例如,按照调节方式,可分为普通信号发生器、扫频信号发生器和程控信号发生器;按照使用范围,可分为通用信号发生器和专用信号发生器(如调频立体声信号发生器、电视信号发生器及矢量信号发生器等);按照频率产生方法又可分为谐振信号发生器、锁相信号发生器及合成信号发生器等。
上面所述仅是常用的几种分类方式,而且是大致的分类。
2.2 低频信号发生器的方案设计
根据论文题目是要求合适的单片机设计一个低频信号发生器。通过查阅资料发现其制作方法有很多种,不同的制作方案各有其优点和缺点。在此,我对其中三种方案进行一些初步比较。
2.2.1 方案一
RC桥式振荡器是采用RC串并联选频网络的一种正弦波振荡器。该信号发生器由放大电路和选频网络构成。放大电路由集成运放组成电压串联负反馈放大,有高输入阻抗和低输出阻抗的特点。电路集成运放设计RC桥式正弦波振荡器产生频率与幅值可以达到一定要求的正弦波。再将产生的正弦波作为输入信号经过一个波形变换电路产生方波,在将方波经积分电路转换
7
燕山大学本科生毕业设计(论文)
成三角波[6]。
其总体的结构框图如图2-1所示。RC桥式振荡器是采用RC串并联选频网络的一种正弦波振荡器。虽然具有较好的正弦波形且频率调节范围宽,但是此方案RC桥式正弦波振荡器的设计中,起振后若只依靠晶体管的非线性来稳幅,波形顶部容易失真。所以这种信号发生器的振荡具有起振要求严,容易产生失真,稳幅效果差等缺点。
RC振荡器波形变换电路积分器正弦波
方波三角波 图2-1 利用运放设计成信号发生器的总结构框图
2.2.2 方案二
RC振荡器波形变换电路积分器采用集成芯片(ICL8038)外接电路产生,ICL8038是精密波形产生与压控振荡器,其基本特性为:可同时产生和输出正弦波、三角波、锯齿波、方波与脉冲波等波形;外接电阻、电容值可改变,输出信号的频率范围可为0.001Hz~300KHz;其构成的主要原理框图如图2-2所示。此方案的特点是外接电路设计比较简单、易制作等,但是产生的方波时有一定的延时,导致输出的波形有一定的失真。
正弦波方波三角波比较器积分器差分放大器正弦波
方波图2-2 利用ICL8038产生波形主要原理框图
三角波
8
燕山大学本科生毕业设计(论文)
2.2.3 方案三
利用AT89C51单片机控制的信号发生器,可输出电压范围为0~5V,频率范围为1~1000Hz的矩形波、三角波和正弦波三种波形信号,其频率可通过键盘增大或减小,还可以用键盘控制数码管显示波形频率。本系统输出的各种信号,均由软件程序产生各种数据,再经过D/A转换后输出,通过I/V转换电路得到三角波和正弦波等信号,其主要原理框图如图2-3所示。
由于利用本方案制作的函数信号发生器具有容易制作,能方便调节的特点,所以本次设计我采用的是方案三,利用AT89C51和DAC0832制作一个低频信号发生器。
时钟电路独立式键盘复位电路电源电路四位一体数码管单片机89C51D/A转换器I/V转换电路输出
图2-3 系统原理图
2.3 基于AT89C51信号发生器的方案设计及原理
本系统是基于AT89C51单片机控制的信号发生器,可输出电压范围为0~5V,频率为1~1000Hz的方波、三角波和正弦波三种波形信号,其频率可通过键盘调节。本系统输出的信号,均由软件产生数据,经过D/A转换器转换后输出,再通过I/V转换电路得到正弦波信号,保证了波形的平滑、稳定和精度。可满足精度误差要求达到5%的多种低频信号源的使用场所。
2.3.1 信号发生器的硬件电路设计方案
本次设计主要是以AT89C51和DAC0832为核心,通过软硬件结合的方
9
燕山大学本科生毕业设计(论文)
式实现波形输出和频率显示的目的。本系统的硬件部分有时钟电路,复位电路,显示电路和数模转换电路。
时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍的工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。时钟电路用于产生单片机工作时所必需的时钟信号。AT89C51单片机本身就是一个复杂的同步时序电路,为保证同步工作方式的实现。单片机应在唯一的时钟信号控制下,严格地按时序执行指令进行工作,而时序所研究的是指令执行过程中各个信号的关系。时钟电路是为单片机提供精确定时的电路,在本设计中用于计时、中断源、键盘去抖动等等。
单片机必须进行复位,是因为单片机内的CPU“取指”过程即为CPU从PC指针所指定的程序存储器ROM地址单元中读取“机器码”的过程。单片机加电后,PC指针应指向ROM中某个固定的单元,当然,程序开始的第一条指令也应放在ROM的这一地址单元内,这样整个程序才能有序地执行。这个单元就是ROM的0000H单元。只有上电复位正常后,PC值为0000H,即指向ROM的0000H单元。此外,专用寄存器SFR中的SP为07H,即指向片内数据存储器(片内RAM)07H单元,P0~P3值为0FFH,其余的专用寄存器值大多为00H[7]。
本文中的显示器用的是4位LED显示器,四位LED显示器有4根位选线和32根段选线。根据显示方式的不同,位选线和段选线的连接方法也各不相同。段选线控制显示字符的字型,而位选线为各个LED显示块的公共端,它控制该LED显示位的亮暗。LED显示器有静态显示和动态显示两种显示方式。本次设计我采用的是动态显示模式,因为采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单。
D/A转换器(DAC)将微机处理后的数字量转换成为模拟量(电压或电流)。D/A转换的基本原理是数字量由代码按数值组合起来表示的。欲将数字量转换成模拟量,必须先把每一位代码按其权的大小转换成相应的模拟分量,然后将数字量转换成相应的模拟分量,然后将各模拟分量相加,其总和就是与数字量相应的模拟量。
10
燕山大学本科生毕业设计(论文)
按这个D/A转换原理构成的转换器,主要由电阻网络,电子开关和基准电压组成。电阻网络通常有两种形式:权电阻解码网络和R-2R梯形解码网络。DAC集成电路大都采用R-2R梯形解码网络。本系统中用到的DAC0832就是R-2R梯形解码网络。
输入的二进制数字量通过逻辑电路控制电子开关。当输入的数字量不同时,通过电子开关使电阻网络中的不同电阻和基准电压接通,在运算放大器的输入端产生和二进制数各位的权成比例的电流,再经放大器将电流转换为与输入二进制数成正比的输出电压。基准电压是提供给转换电路的稳定的电压源,也称为参考电压Verf。整个电路由若干个相同的电路环节组成。每个环节有两个电阻和一个开关。开关S是按二进制位进行控制的。该位为1时,开关将加权电阻与Iout1输出端接通产生电流;该位为0时,开关与Iout2端接通。
2.3.2 信号发生器的软件电路设计方案
本系统的资源分配。采用定时/计数器T0定时器:定时器0用作时钟定时,按方式1工作。P1.0~P1.3为键盘输入端,P0口用作段控口线, P2口用作位控口线,P3口用做第二功能,采用了定时/计数器T0中断。 本系统利用AT89C51单片机的可编程定时/计数器,中断系统来实现是时钟计数,把定时器0设为工作方式1,定时时间可调。使用定时/计数器0,fosc=12MHz。 则时间T
T??65535?TH*256?TL?*0.4
频率F
F??int??1000/T?
波形发生器的频率在四位位数码管上进行显示,因此,在内部RAM中设置显示缓冲区共4个单元。
LED3 LED2 LED1 LED0 7BH 7AH 79H 78H
显示缓冲区从左至右依次存放数值。
11