1 设计目标和思路
文中设计目标是完成4种波形信号输出,即正弦波、三角波、方波和锯齿波,并使其在低频范围内具有稳定稳定性好、性能可靠、体积较小、占空比调节方便等技术优势。文中采用键盘控制的办法,来实现并输出方波、锯齿波、三角波和正弦波等信号。另外,对频率和幅值的变换情况,用键盘也能够较好的进行控制和调整。同时,本文还将其产生的信号参数用LCD进行仿真显示和调试。
在设计中,首先在函数中对某个数组附值,利用DAC0832来实现输出波形信号输出转换,再经过功放滤波模块处理,这样的话,就会在示波器上观察到不同函数值的波形信号。但是,因为函数对数组中的数附值之后并不是一次就输出显示出来,这就需要编写AT89S51的控制字,使其开中断,然后再用计数器计数。当计数器溢出时便提出中断请求,这时调用中断函数,将数组中一个值送到DAC0832中。这样连续不断的送值,最后在示波器上显示的就是一个连续的波形。最后,为了产生不同的波形,利用独立按键开关实现波形的不同频率,来控制波形的频率,以及利用滑动变阻器来为DAC0832提供不同的参考电压来实现不同幅值的波形。
2 电路原理图
当按下“波形选择”键时,发生外部中断,并在LCD显示所对应的波形序号,通过AT89S51单片机执行某一段中断波形发生程序,向DAC0 832转换器的输入端按一定的规律发送数据,从而在DA0832转换电路的输出端得到相应的电压波形。再经过放大器的放大作用和二阶低通滤波电路滤波作用,滤除高次谐波,最后在模拟示波器上显示出更加光滑平整的目标波形。在上述的基础上,通过选择按下频率增加键和频率减少键可以改变波形的频率,再利用滑动变阻的分压作用,改变DAC0832的参考电压Vref以致改变电流i,即改变参考电压,使输出电压幅度随i发生改变,从而实现幅度的调节。
基于单片机函数信号发生器原理接线图如图1所示。
3 ProtueS仿真调试
本设计方案的思路是通过Protues软件仿真来进行波形调试,利用定时器TMR0定时中断与预设波形数据表配和起来实现波形的生成,将定时器设定成定时方式1,在每次中断发生时,对波形数据进行采集,或者对定时时间进行调整。从而实现当前时刻的波形数据的输出,以及频率的调整。是在keil软件上编译,用C语言设计程序的源代码。
下图2~5即为调试所得各类波形。
仿真过程中,本设计可以实现预期的4种常用低频信号波形的输出,各输出波形标准规范。同时各种波形的输出均可实现调频和调幅操作:对于调频操作,在单片机工作时钟频率为24 MHz条件下,正弦波、锯齿波、三角波可以在1kHz以下范围内保持输出波形不变形,方波的保形频率范围则可以达到2 kHz,对调幅操作,可以做到4种波形幅值在0~5 V范围内连续调节。
4 结束语
尽管技术调试过程中,出现了诸如正弦波、三角波、锯齿波的频率在0~1kHz范围调节可以得到清晰、连续平整的没有变形的波形,但是超过这个范围输出的波形会失真变形;不能一次同时多波形输出等技术难题。但是,实验数据仍然表明,文中采用AT89S51单片机设计的方案,是合理可行。同时,从仿真的数据结果和分析来看,新的设计技术方案获得的输出低频波形信号规整、可靠性较好,符合普通常用低频信号源基本要求,其实验结果是令人满意的。
另外,在调试中发现,因DAC0832受到转换位数和建立时间的限制,从而引起了输出波形不够规整、前后沿不陡峭等问题。我们认为,如果能够采用其他诸如DAC9881等芯片来提高转换位数和建立时间的话,设计方案将能够获得更加完美的输出波形。