APP下载

信号发生器的设计

2017-01-28张机大连电子学校

科学中国人 2017年18期
关键词:幅值波形按键

张机大连电子学校

信号发生器的设计

张机
大连电子学校

本文介绍了以单片机STC89C52为核心,基于数字频率合成技术实现的信号发生器。该发生器有两路正弦波、一路矩形波、锯齿波和三角波输出,信号的波形、幅值、频率等参数可以通过按键设置,并在液晶显示屏上实时显示。

信号发生器;数字频率合成技术;单片机

一、设计原理

1.数字频率合成技术

数字频率合成器由相位累加器、波形存储器、D/A转换器、滤波器等组成。它利用采样定理将理想输出波形进行量化处理,幅值以二进制形式存储在ROM或RAM中,作为波形存储器的查询数据表。其中,相位累加器由加法器和相位寄存器构成,二者位数相同[1]。由晶体振荡器产生的时钟信号使各部分电路同步工作。假设相位寄存器的初始值为θ,当一个时钟信号到来时,相位累加器中的加法器将该初始值与频率控制字K(设置)相加,结果保存在相位寄存器中。该数据有两个用途,一是作为波形存储器的查询地址,得到该相位地址所对应波形的幅值数据。每当时钟信号输入时,相位寄存器就会输出一个步进为Δθ的相位数据。二是把结果反馈到累加器输入端。当输入下一个时钟信号时,可以将该结果与频率控制字K相加。相位累加器在时钟信号的作用下不停地重复上述步骤,直到存满相位寄存器存储空间发生溢出为止,则溢出频率为数字频率合成输出信号的频率。通过相位累加器输出的波形存储器的相位地址,可以得到所需波形离散的幅值编码数据,经过D/A转换器可以得到所设置波形对应的系列阶梯波,再经过低通滤波器得到所需波形[2]。

2.基于数字频率合成技术的信号发生器设计

使用单片机控制数字频率合成电路,辅助滤波、幅值调节等外围电路,即可设计满足要求的信号发生器,其优点是产生的信号频率分辨率高,精度高,信号质量好。

3.系统总体结构设计

信号发生器包括单片机控制、按键模块、液晶显示、信号波形产生、程控放大等五部分电路。其中,单片机控制部分是信号发生器系统的核心部分,用来控制液晶显示、按键输入模块、信号波形产生以及程控放大等模块。通过对单片机编程,控制按键输入各种波形参数来控制其它电路。单片机可以将按键输入的频率控制字K写到频率合成器中,控制频率合成器产生1Hz~10MHz频率范围的正弦波,然后输入到程控放大器中获得频率和幅值均可调的正弦波。将正弦波输入到高速比较器同相输入端,通过电位器调节输出电压大小,即可得到占空比可调的矩形波。

二、硬件电路设计

1.单片机最小系统电路设计

单片机最小系统包括STC89C52单片机、时钟电路和复位电路。时钟电路选用12MHz的无源晶振,为单片机提供工作时间基准。当需要复位时,按下S1按键,复位端输入高电平,并保持两个机器周期,即可完成单片机的复位和初始化。

2.单元电路设计

(1)正弦波形产生电路

正弦波产生电路要求频率从1~10MHz可以任意设定,分辨率为1Hz,并且幅值连续可调,选择频率合成AD9850 IC即可以实现。AD9850与STC89C52单片机接口可以采用串行或并行方式,为了节省I/O端口,本设计采用串行方式。通过单片机控制频率合成电路和程控放大电路,即可产生频率为1Hz~10MHz的可调正弦波,且幅值在0.5V~3V区间内连续可调。

(2)矩形波产生电路

频率合成器产生的正弦波经过高速比较器就可以得到矩形波,本设计中的AD9850内部就含有高速比较器。将正弦波输入到AD9850的高速比较器同相输入端,10kΩ电位器的两端与电源正端和地相连,中心抽头接至AD9850高速比较器反相输入端,调节电位器输出电压,就可以得到占空比可调的矩形波。

(3)三角波和锯齿波产生电路

对单片机产生的数字信号进行数模转换就可以得到三角波和锯齿波,其中,数模转换采用数字集成电路DAC0832。通过单片机程序控制,在DAC0832输出端即可得到三角波和锯齿波。该电路也可以用来产生占空比可调的矩形波。

(4)液晶显示电路

选用LCD液晶显示屏显示设置的参数。通过单片机控制,显示屏可以显示设置的波形、频率、幅值和占空比。本设计中选用LCD1602液晶显示屏,它可以显示2行16列32个字符。其中,第一行显示波形和幅值信息,第二行显示频率和占空比。当选择正弦波、三角波或者锯齿波时,占空比一栏中显示“——”。通过按键控制,可以切换设置参数。每次数据显示时,要对液晶显示电路进行初始化。

(5)按键电路

设计中另设4个按键S2、S3、S4、S5。S2用于控制波形、幅值、频率和占空比设置界面;S3用于控制四种波形切换和幅值、频率、占空比的设置;S4用于控制幅值、频率、占空比进行数值加;S5用于控制幅值、频率、占空比进行数值减。通过以上4个按键实现正弦波、方波、三角波和锯齿波切换、正弦波频率和幅值可调、方波占空比可调。

(6)电源电路

电源模块包含整流、滤波和稳压三个部分,选择了三端集成稳压电源LM7805和M7905。其中,LM7905稳压集成电路的极限输入电压是-35V,最低输入电压-8V,输出电压为-5V;LM7805最高输入极限电压36V,最低输入电压7V,输出电压+5V。设计中选用220/10V交流变压器。

三、程序软件设计

采用C语言对单片机进行编程。编程软件使用Keil uVision4。程序设计流程图和编程代码略。

1.软件控制系统总体设计

为了实现信号发生器的设计要求,在硬件设计完成的基础上,要对软件进行设计。软件设计包括对按键模块、LCD1602液晶显示、AD9850控制程序和DAC0832控制程序设计。程序设计中,首先要对单片机进行程序初始化,对设计系统中各控制端口进行预设值,液晶屏显示相关波形、频率、幅值、占空比等信息。

2.按键模块程序设计

为了判断是否有按键按下,单片机定时器T0采用循环扫描按键检测方式。若有按键按下时,就进行相应的参数设置,以实现所需的波形、频率、幅值等参数设置。如上所述,不同按键对应不同的参数设置功能。每次检测到有按键按下时,需要调用延时子程序,去抖动。

3.液晶显示模块程序设计

首先,要调用液晶自定义字库,并设置好DDRAM地址。然后,根据程序中的数据设置,在第一行显示数据首地址并设置循环量。在循环过程中不断地取字符代码直到终止;第二行的显示过程同第一行。两行显示完毕后子程序结束。

[1]吴海超,邢斯瑞.基于AD9850的嵌入式信号源设计与实现[J].现代电子技术,2009,16:47-59.

[2]刘焱坤.基于STC89C52RC单片机跑步计时器设计[J].电子世界,2016,5:111.

猜你喜欢

幅值波形按键
基于时域波形掩护的间歇采样干扰对抗研究
室温下7050铝合金循环变形研究
极化正交编码波形雷达试验系统.
“雷达波形设计与运用专刊”编者按.
基于有限状态机的按键检测程序设计
非触勿动 秒治键盘误触
通用6T系列变速器离合器鼓失效的解决方案
可靠性步进电机细分驱动技术研究
平地机作业负载谱分析
Prevention of aspiration of gastric contents during attempt in tracheal intubation in the semi-lateral and lateral positions