基于单片机的波形发生器的设计毕业论文
2021-09-28 20:00:53
摘 要
波形发生器在市场上的占有率依然很大,它在军、航空、航空制造业、医疗等各行各业应用非常广泛。在选用波形发生器时,大家关注的除了频率精度、频率稳定度、幅度精度、信号失真度外,还有它的输出通道数、编辑、波形生存、下载能力。总之,随着其应用的广泛增加,对波形发生器性能的要求也会逐渐升高。
本设计的主要思想是将波形的一个周波离散化,然后将每个离散点存在单片机内存中,经过定时器延时,将每个离散数据逐渐传给DAC0832进行数模转换。
在硬件电路中采用了8255A对主控器的I/O口进行扩展,并用液晶12864对波形参数进行显示。本设计采用的仿真软件采用的是Protues,用Keil进行C语言的软件编写。
本设计可以手动输入波形参数得到相应的波形,采用的芯片物美价廉,比较实用,整个设计满足经济性,具有一定的开发价值。
关键词:波形发生器,单片机,DAC0832,8255A,液晶,Protues软件,Keil软件
Abstract
Waveform generator is very widely used in the military, aviation, aerospace manufacturing, medical and other industries applications,it’s share in the market is still large. we are always concerned about frequency accuracy, frequency stability, amplitude accuracy, signal distortion givers, as well as its output channels, waveform editing,Generating of waveforms , download capacity in the selection of waveform generator.In short, with the applications have increased widely ,the performance requirements will be gradually increased.
Discreting a waveform cycle is the main idea of the design ,then there will be single-chip memory for each discrete point ,each discrete data gradually passed DAC0832 digital to analog conversion after timer delay.The 8255A is used for I / O port of master expansion in the hardware circuit, and liquid crystal 12,864 display waveform parameters.This design uses Proteus for simulation software, Keil for software written in C language.
This design can be manually input waveform parameters and send corresponding waveform. it has a development value because of using inexpensive chip which are more practical and meeting the entire economy.
Keywords: waveform generator, microcontroller, DAC0832,8255A, LCD, Proteus software, Keil Software
目录
1.1 设计背景 1
1.2 设计目的及意义 1
1.3 国内外研究状态 2
第2章 设计的基本内容及方案选择 3
2.1 设计的基本内容 3
2.2 总体方案选择 3
2.3 子系统模块方案选择和相关芯片的选型 4
2.3.1主控器的选择 4
2.3.2按键模块的选择 4
2.3.3显示模块的选择 5
2.3.4 数模转换模块 5
2.3.5运算放大器的选择 6
2.3.6 调频模块的设计 6
2.3.7调幅模块的设计 8
第3章 模块设计电路 9
3.1 单片机最小系统 9
3.1.3复位电路 13
3.2 按键电路与单片机的连接 13
3.3 I/O扩展模块和显示模块电路 14
3.3.1 12864液晶显示器介绍 14
3.3.2 8255A芯片介绍 16
3.3.3 模块电路分析 18
3.4 调频模块设计及电路 19
3.4.1 数模转换器DAC0832 19
3.4.2调幅模块电路设计与分析 20
3.5 电源模块设计 20
第4章 软件设计 22
4.1 仿真软件 22
4.1.1 protues介绍 22
4.1.2 keil 软件介绍 22
4.1.3 Keil与Protues的连接 23
4.2模块程序设计 23
4.2.1 主程序设计 23
4.2.2 按键子程序设计 24
4.2.3 液晶显示子程序 25
4.2.4波形子程序设计 26
第5章 仿真结果 30
5.1 正弦波的仿真 30
5.2 三角波的仿真 32
5.3方波的仿真 34
第6章 总结 36
参考文献 37
致谢 38
附录A 系统硬件原理图 39
附录B 程序代码 40
附录C 元器件清单 55
第1章 绪论
1.1 设计背景
在20世纪初,波形发生器就产生了[1]。通讯和雷达的发展推动了波形发生器的发展,使得在40年代就出现了标准波形发生器,这种标准发生器主要用于测试各种接收机,而这一使用促进了波形发生器从定性分析的测试仪器向成定量分析的测量仪器转化。
60年代,函数发生器的出现使得波形发生器的发展上了一个新的台阶,当时波形发生器一般采用模电技术,通过模拟集成电路或立原件构成,而这也决定了波形发生器电路结构相当的复杂,但乐观的是这种模电技术构成的波形发生器已经可以产生三角波、正弦波、锯齿波、方波、等几种简单波形,模拟电路有一个缺点,那就是漂移较大,这个缺点严重影响了波形发生器的输出波形的幅度稳定性,此外,还有另一些缺点,比如电路尺寸大、功耗大、价格贵。
70年代市面上开始出现了微处理器,这使波形发生器可以产生除了正弦波、三角波、方波、锯齿波以外更加复杂的波形。