基于单片机的波形发生器设计

(整期优先)网络出版时间:2022-12-16
/ 1

基于单片机的波形发生器设计

黄跃娟 ,魏颖 ,薛莹

哈尔滨华德学院  150025

摘要:本文用单片机作为核心芯片,设计出一款高精度频率信号发生器,具有体积小功率低等优点。为了实现幅度可控的功能,选用了2个数模转换器片完成此功能,其中一个用来产生波形,另外一个设计成程控放大器进行改变幅度,它的放大倍数通过转换器的数字端口来实现,根据设定的输出幅值,单片机只需要通过公式换算出给予的对应电平。所有要输出的参数都能通过液晶屏显示。

关键词:信号发生器;单片机;数模转换器

1、引言

在波形发生器的发展中,高频率的波形发生器技术大部分都掌握在外国手中,我国的波形发生器也有很大突破,在中低端频率的波形发生器中,我国的成本低波形发生器效果好,远比国外,但是在高端波形发生器中,还是落后于国外。波形发生器在现代测算领域和教学领域有着很大的应用,产生的频率大小,幅度大小,相位调节,能产生大量的波形,对于各种调试,调控,实验,工业使用,自动控制都有着重大的意义

2、方案设计

本此设计是用单片机为控制主体,对系统进行初始化主要完成对键盘的控制、液晶显示的控制。使用51系列的单片机,它有着32个接口,且STC系列的单片机可以在工作的过程中进行编程、调试,能很方便的实现程序在下载过程中进行整机的调试。

3、硬件设计

(1)液晶显示模块

用STC12C5A60S2的P0口作为数据线,用P1.2、P1.1、P1.0分别作为LCD的EN、R/W、RS。其中EN是下降沿触发的片选信号,R/W是读写信号,RS是寄存器选择信号。

(2)键盘模块

本按键模块使用的是多位独立按键,按键一端接IO口,一端接地,由于单片机的IO口都有内部上拉,因此当按键没有按下的时候,IO检测到的时候高电平,当按键按下的时候,相当于IO短接地,因此这时候单片机检测到的电平为低电平,通过检测不同时刻的IO口状态就可以判断按下的是那个按键。4个按键分别代表以下功能,第一为功能按键,可以切换不同参数设置界面,第二个为切换按键,可以切换波形、频率和幅值等参数进行设置,第三个为增加按键,第四个为减少按键。

(3)信号产生模块

由于要产生方波、正弦波、锯齿波和三角波这几种波形,综合考虑选择了DAC0832作为主芯片,DAC0832是一款是国家半导体公司采用先进的DA转换器,单片机通过查询内部的预存的波形ROM表来实现波形产生。

(4)程控放大模块

程控放大模块的结构跟波形发生部分相似,区别在于波形发生部分的基准电压是固定的,通过查ROM的数组来改变输出电压来描绘出波形。

4、软件设计

主程序流程图首先单片机进行初始化,初始化之后在单片机内部产生相应的波形,对应的频率,和相对的幅度,在显示器中显示出来,开始设置你想要的参数,对频率,幅度,相位,波形进行一系列的调节,每次都进行判断是否设置各个参数,是进行调节,否进行下一个判断是否设置参数,经过几次设置调节出想要的波形,在显示器LCD1602上面显示对应的数值和波形,所有的显示都由LCD1602来进行显示。

5、调试

本次设计是一个相对复杂的数字系统,它的程序也是比较复杂,所以在编写程序和调试的过程中出现了相对较多的问题。首先为了更好的测试效果,最开始是直接在PROTUES软件下进行一些显示界面仿真,在确定不存在问题后,再把程序烧录到实物中运行。最后出现了很多错误,经过很多次的模块子程序的修改,最后终于解决了软件上的各种各样的问题。

硬件上用万用表进行测量,确保硬件接线无误。

6、小结

本次设计是基于单片机的波形发生器设计,使用了单片机来实现对于波形的控制,涉及了波形,频率,幅度大小的控制。

参考文献

[1] 谢增忠.基于单片机的波形发生器的硬件设计[J].数字化用户,2013

[2] 杜洋.爱上单片机(第三版)[M].北京:人民邮电出版社,2014