基于51系列单片机的多功能波形发生器及特定波形幅值调节
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
创新性实验研究报告
课程名称:基于51系列单片机的波形发生器研究实验项目名称多功能波形发生器及特定波形幅值调节
姓名XXX_学号_XXXXXX
手机XXXXXXXXX Email XXXXXXXXXXXX
专业自动化_班级_XXXXXXX _
指导教师及职称___XXX__
开课学期2011 至2012 学年第一学期
提交时间2011 年12 月29 日
一、实验摘要
波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。例如在通信、广播、电视系统中都需要射频发射,这就需要信号发生器,在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振图像等,都需要功率或大或小、频率或高过低的信号。在现代社会中,自动化技术早已渗透到社会生产的各个领域中,高精度、宽频率、高稳定性的信号发生器对于所属整体系统的性能改善和提高起着至关重要的作用。多波形的函数信号发生器是电子实验室的基础设备之一,目前各类学校广泛使用的是标准产品,虽然功能齐全,性能指标高,但是价格昂贵,本文所研究的信号发生器采用单片机和DAC0832结合起来,通过数字电子电路向模拟电路转化,该系统虽然性能指标不如标准产品,但是它体积小,成本低,便于携带等特点,亦可作为电子随身设备之一。本次创新性实验将由AT89C51单片机和DAC0832数模转换器构成波形发生器,此波形发生器可产生方波、三角波、锯齿波、梯形波、阶梯波等多种波形,波形的幅值可以用程序进行改变,并可根据需要选择单极性输出,具有线路简单、结构紧凑、价格低廉、性能优越等优点。在本设计的基础上,加上按键用来更改不同波形之间的切换,实现不同波形的输出。
二、实验目的
在电子设备中,经常需要产生各种波形,本设计要求利用单片机和模数转换芯片组成波形发生器硬件系统,需要完成下列任务:
(1)能够通过按键控制,产生方波、三角波、锯齿波、梯形波、阶梯波五种波形。(2)能够通过原理图调试进行改变各个波形的幅度。
三、实验场地及仪器、设备和材料:
(1)AT89C51芯片1个
(2)DAC0832芯片1个
(3)OPAMP放大器芯片1个
(4)电阻2个电容3个可调电阻1个排阻1个
(5)开关6个
(6)Protues软件
(7)晶振1个
(8)示波器1台
四、实验内容
1、实验原理
波形的产生是通过AT89C51单片机执行某一波形发生程序,向DAC0832转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。
AT89C51单片机的最小系统有三种联接方式。一种是两级缓冲器型,即输入数据经过两级
缓冲器型,即输入数据经过两级缓冲器后,送D/A转换电路。第二种是单级缓冲器型,输入数据经输入寄存器直接送入DAC寄存器,然后送D/A转换电路。第三种是两个缓冲器直通,输入数据直接送D/A转换电路进行转换,本设计采用单缓冲方式。
此次实验设计由硬件设计和软件设计两部分组成,硬件部分利用proteus软件进行模拟仿真验证设计的正确性并产生不同波形,软件设计将利用汇编语言进行编程,通过Protues软件进行编译调试仿真,通过模拟示波器观察输出波形。
实验原理框图如下所示:
图1.1 实验原理框图
2、实验内容
2.1 系统硬件设计
本系统提供了五种不同的波形输出,通过五个按键控制相应的方波,锯齿波,三角波、梯形波和阶梯波。每次只能有一个键按下,没有按键按下时没有波形产生,按键输入信号给单片机,单片机对按键的情况进行处理,例如第一个按键按下时,系统需要产生一个方波,那么单片机循环输出0和1,那么通过DAC0832就通过运放循环输出高低电平,这样系统就能够输出方波,同样的道理,锯齿波、三角波、梯形波和阶梯波的产生也可以采用相似的道理。
本设计的硬件系统分为三个模块:单片机系统模块,DA转换模块,软件设计模块。
2.2 系统各个模块的设计
2.2.1单片机系统模块
(1)配置
●一个8位CPU,片内振荡器
●并行I/O口,32根I/O口线
●一个串行口
●两个定时/计数器
●4K Byte 的 ROM
●128 Byte 的 RAM
●5个中断源,两个中断优先级
●可寻址64KB外部数据存储器空间
单片机内部结构图如下所示:
图2.2-1 单片机内部结构图
(2)单片机管脚图及管脚功能介绍 单片机管脚图如下:
图2.2-2 AT89C51单片机管脚图及并行口分布
VCC :供电电压。 GND :接地。
P0口驱动器P2口驱动器
P1口驱动器
P3口驱动器
RAM 地址 寄存器
RAM
P0口 锁存器 P2口
锁存器
ROM
堆栈
指针
地址锁存器缓冲器PC 增量器程序计数器数据指针
寄存器B
TMP2
TMP1
ACC PSW
ALU
定时和控制指令寄存器
OSC
P1口寄存器
P3口寄存器P1.0-P1.7
P3.0-P3.7
P0.0-P0.7
P2.0-P2.7
Vcc GND
PSEN ALE/PROG EA/Vpp
RST
SCON TMOD TMOD PCON TH0TL0TH1TL1SBUF (TX)SBUF
(RX)
IP IE 中断、串行口和定时器模块