毕业设计(论文)信号波形发生器设计.doc

上传人:仙人指路1688 文档编号:3977678 上传时间:2023-03-30 格式:DOC 页数:26 大小:188.50KB
返回 下载 相关 举报
毕业设计(论文)信号波形发生器设计.doc_第1页
第1页 / 共26页
毕业设计(论文)信号波形发生器设计.doc_第2页
第2页 / 共26页
毕业设计(论文)信号波形发生器设计.doc_第3页
第3页 / 共26页
毕业设计(论文)信号波形发生器设计.doc_第4页
第4页 / 共26页
毕业设计(论文)信号波形发生器设计.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《毕业设计(论文)信号波形发生器设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)信号波形发生器设计.doc(26页珍藏版)》请在三一办公上搜索。

1、目 录引 言-1摘 要-2 关 键 字-2一、设计任务-3三、工作原理-3 5.3单片机下载接口-13六、软件总体设计-14七、调 试-15 7.1 硬件调试-15 7.2 软件调试-16 7.3 软硬联调-16 7.4 调试及测试仪器-16四、硬件设计-3 4.1 电源设计-4 4.2 时钟与复位电路设计-4 4.3 DAC0832 的接法以及转换电路设计-5 4.4 键盘接口设计-7五、器件简介-7 5.1 AT89S51单片机-7 5.1.1 AT89S51单片机引脚-7 5.1.2 AT89S51单片机的基本组成-10 5.1.3 AT89S51单片机硬件结构特点-11 5.1.4 A

2、T89S51单片机内部结构-11 5.2 DAC0832 简介-12谢 辞-17参 考 文 献-18附录一(程序清单)-19附录二(原理图)-25引 言科学技术的发展离不开实践,实践是促进科学技术发展的重要手段。而电子技术实践,按性质可以分为验证性和训练性的实践,综合性的实践,设计性实践三大类。 验证性实践和训练性的实践主要是针对电子技术学科范围内的理论验证和实际技能的培养,综合性的实践,属于应用型实践,目的是培养学生综合运用所学的理论的能力和解决比较复杂的实际问题的能力。设计性实践,主要侧重于某些理论知识的灵活运用。随着电子技术的飞速发展,各种新型电子器件和集成电路应用越来越广泛,电子系统的

3、功能越来越强大,电路图也越来越复杂,印刷电路板的走线越来越复杂和精密。计算机的应用使得我们对各种复杂的电路设计工作变得简单一些,使得更好更复杂的电路得以实现。电子设计自动化(Electronics Design Automates,即EDA)工具的集成设计环境,电子设计软件Protel for DXP 软件等的运用使得设计电路更加方便。作为测控技术与仪器专业的学生,应该熟练掌握各种电路编辑软件,并及时学习更新版本,其日趋强大的功能是对我们专业技能的得力助手。科学的进步要求我们在不断的实践中熟练各种制板的技术,并不断地总结经验。 独立完成课设对我们来说非常重要,所以我们要加倍努力尽力做到最好,为

4、将来的工作及毕业设计的完成奠定良好的基础!本文概述了本次电子制作过程的操作以及相关设计的基本知识,包括数字电路知识、设计原理、原理图制作、电路板制成、心得体会、参考文献等内容。摘 要单片微型计算机(简称单片机)作为微型计算机的一个很重要的分支,自它诞生以来至今,以其极高的性能价格比以及一系列人所共识的优点,受到越来越多的工程技术人员的重视。现在,单片机已广泛地应用在智能仪器仪表、机电设备过程控制、自动检测、家用电器和数据处理等各个方面。本论文设计和完成了由单片机控制的多功能信号发生器。设计的目的是运用单片机控制产生多种波形,这些波形包括正弦波、三角波、方波、锯齿波等。本系统以MSC8051 单

5、片机为核心,配置相应的外设及接口电路,用汇编语言开发,组成了一个多功能信号发生系统。本设计结合实际选用了 DAC0832八位转换器,以实现波形的产生(三角波、锯齿波以及正弦波)及电压变换功能。系统中的应用软件是根据系统的功能要求设计的,可靠地实现了系统的各种功能要求。关键词:AT89C51单片机 信号发生器 DAC0832 一、设计任务1、比较和阐述实现信号发生器各种方案的特点。2、采用单片机AT89C51及D/A转换器0832设计信号发生器。3、编写程序产生锯齿波、三角波和正弦波等波形;4、输出频率范围:10Hz1KHz, 输出电压V=5V;5、外接电源线,公共地线、电源需加滤波电路。二、方

6、案论证方案一:波形的产生是通过 8031 执行某一波形发生程序,向D/A转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。此方案的优点是,电路原理比较简单,实现起来比较容易。缺点是,采样频率由单片机内部产生故使整个系统的频率降低。方案二:方案二汲取了方案一的优点并在方案一的基础上加以改进。方案二采用了8051单片机,并且采样频率由外部晶体震荡器产生,由晶体振动器产生脉冲,通过外接12M的晶振,可以大大提高输出频率。所以我们选择方案二进行波形发生器的设计。三、工作原理8051单片机编程后,通过与D/A转换器0832相连输出波形。按键开关负责人工选择波形输出,80

7、51选择外接晶振以提高波形频率,外接复位开关可人工复位。四、硬件设计4.1 电源设计本机使用三种共地电源:+12V,12V,+5V,硬件设计中采用自带电源方式。因为本次设计有MSC8051单片机,还有许多逻辑芯片,这些芯片的工作电源电压为+5V,所以电源中必须有+5V 电源。另外由于本机设计为小信号输出,可正可负,所以采用12V 电源。电源部分原理图如下图所示。1、+12V以及12V电源原理图2、电源原理图4.2 时钟与复位电路设计单片机的复位是靠外电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平,单片机便实现初始化状态复位。为了保证应

8、用系统可靠地复位,通常是RST引脚保持10ms以上的高电平。本系统具有上电复位功能。时钟与复位电路电路连接如下图所示。 时钟与复位电路此电路仅用一个电容及两个电阻。系统上电时,在 RC 电路充电过程中,由于电容两端电压不能跳变,故使 RESET 端电平呈高电位,系统复位。经过一段时间,电容充电,使 RESET端呈低电位,复位结束。4.3 DAC0832 的接法以及转换电路设计DAC0832 的接法及电流电压转换如下两图所示DAC0832的接法电路电流电压转换电路4.4 键盘接口设计在计算机控制系统中,数据和控制信号的输入主要使用键盘。键盘接口,尤其是键入信号的软件处理方法是影响系统使用和操作性

9、能的重要因素。键盘接口及其软件的任务主要有以下几个方面:(1)检测并判断是否有键按下。(2)按键开关的延时消抖功能。(3)计算并确定按键的键值。(4)根据计算出的键值进行一系列的动作处理和执行。本次课程设计采用按钮做为键盘使用,连接电路如下图所示。五、器件简介5.1 AT89S51单片机5.1.1 AT89S51单片机引脚MCS-51系列单片机的引脚如图11所示.图11.MCS-51系列单片机引脚图以下是对引脚的说明:VCC:AT89S51 电源正极输入,接+5V 电压。GND:电源接地端。XTAL1:接外部晶振的一个引脚。在单片机内部,它是一反相放大器输入端, 这个放大器构成了片内振荡器。它

10、采用外部振荡器时,些引脚应接地。XTAL2:接外部晶振的一个引脚。在片内接至振荡器的反相放大器输出端和内部时钟发生器输入端。当采用外部振荡器时,则此引脚接外部振荡信号的输入。RST:AT89C51 的复位信号输入引脚,高电位工作,当要对芯片又时,只要将此引脚电位提升到高电位,并持续两个机器周期以上的时间,AT89C51 便能完成系统复位的各项工作,使得内部特殊功能寄存器的内容均被设成已知状态。ALE/PROG:ALE 是英文ADDRESS LATCH ENABLE 的缩写, 表示允许地址锁存允许信号。当访问外部存储器时,ALE 信号负跳变来触发外部的8 位锁存器 (如74LS373) ,将端口

11、P0 的地址总线(A0-A7)锁存进入锁存器中。在非访问外部存储器期间,ALE 引脚的输出频率是系统工作频率的 1/16 ,因此可以用来驱动其他外围芯片的时钟输入。当问外部存储器期间,将以1/12 振荡频率输出。EA/VPP:该引脚为低电平时,则读取外部的程序代码 (存于外部EPROM 中)来执行程序。因此在8031 中,EA 引脚必须接低电位,因为其内部无程序存储器空间。如果是使用AT89C51或其它内部有程序空间的单片机时,此引脚接成高电平使程序运行时访问内部程序存储器,当程序指针PC 值超过片内程序存储器地址(如8051/8751/89C51 的PC 超过0FFFH)时,将自动转向外部程

12、序存储器继续运行。此外,在将程序代码烧录至8751 内部EPROM 、89C51 内部FALSH 时,可以利用此引脚来输入提供编程电压(8751 为2lV 、AT89C51 为12V、8051 是由生产厂方一次性加工好)。PSEN:此为Program Store Enable 的缩写。访问外部程序存储器选通信号,低电平有效。在访问外部程序存储器读取指令码时,每个机器周期产生二次PSEN 信号。在执行片内程序存储器指令时,不产生PSEN 信号,在访问外部数据时,亦不产生PSEN 信号。P0:P0 口(P0.0P0.7) 是一个8 位漏极开路双向输入输出端口,当访问外部数据时,它是地址总线(低8

13、位)和数据总线复用。外部不扩展而单片应用时, 则作一般双向IO 口用。P0 口每一个引脚可以推动8 个LSTTL 负载。P2:P2 口(P2.0P2.7) 口是具有内部提升电路的双向I/0 端口(准双向并行I/O 口), 当访问外部程序存储器时,它是高8 位地址。外部不扩展而单片应用时,则作一般双向IO 口用。每一个引脚可以推动4 个LSTL 负载。P1:P1 口(P1.0P1.7) 口是具有内部提升电路的双向I/0 端口(准双向并行I/O 口), 其输出可以推动4 个LSTTL 负载。仅供用户作为输入输出用的端口。P3:P3 口(P3.0P3.7) 口是具有内部提升电路的双向I/0 端口(准

14、双向并行I/O 口),它还提供特殊功能, 包括串行通信、外部中断控制、计时计数控制及外部随机存储器内容的读取或写入控制等功能。其特殊功能引脚分配如下: P3.0 RXD 串行通信输入P3.1 TXD 串行通信输出P3.2 INT0 外部中断0 输入,低电平有效P3.3 INT1 外部中断1 输入,低电平有效P3.4 T0 计数器0 外部事件计数输入端P3.5 T1 计数器1 外部事件计数输入端P3.6 WR 外部随机存储器的写选通,低电平有效P3.7 RD 外部随机存储器的读选通,低电平有效5.1.2 AT89S51单片机的基本组成图12.AT89S51单片机基本结构示意图 一个8位微处理器C

15、PU 数据存储器RAM和特殊功能寄存器SFR 内部程序存储器ROM 两个定时/计数器,用以对外部事件进行计数,也可用作定时器。 四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。 一个串行端口,用于数据的串行通信。 中断控制系统 内部时钟电路5.1.3 AT89S51单片机硬件结构特点 内部程序存储器(ROM)和内部数据存储器(RAM)容量 输入/输出(I/O)端口 外部程序存储器和外部数据存储器寻址空间 中断与堆栈 定时/计数器与寄存器区 指令系统5.1.4 AT89S51单片机内部结构 运算器:运算器由8位算术逻辑运算单元ALU(Arithmetic Logic

16、 Unit)、8位累加器ACC(Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status Word)、8位暂存寄存器TMP1和TMP2等组成。 控制器:主要由程序计数器PC、指令寄存器IR、指令译码器ID、堆栈指针SP、数据指针DPTR、时钟发生器及定时控制逻辑等组成。图13.AT89S51片内总体结构框图 5.2 DAC0832 简介DAC0832 为 8 位数模转换器,转换速度:1s;参考电压:3V15V。DAC0832 是由输入数据寄存器、DAC 寄存器和 D/A 转换器所组成的 CMOS 器件,其特点是片内设有二个独立的 8 位寄存器,即输入数据寄存

17、器和 DAC 寄存器,因而又具有缓冲作用。被转换的数据寄存在 DAC 寄存器中,下一组输入数据又可装入数据寄存器中,这就可以根据需要快速修改 DAC0832 的输出。DAC0832 的各引脚的功能如下:CS:片选信号,低电平有效。它与 ILE 信号结合,可对 WR1信号是否起作用进行控制。DAC0832引脚图ILE:允许输入锁存信号,高电平有效。WR1:写信号 1,用于将数字量输入锁存到输入数据寄存器中。在 CS、ILE 同时有效下, WR1由低电平到高电平的上升沿将输入数据线上的信号打入输入数据寄存器。WR2:写信号 2,用于将锁存在输入数据寄存器中的数据传送到 DAC 寄存器中。在XFER

18、信号有效时, WR2由低电平到高电平的上升沿将输入数据寄存器中的信号打入 DAC 寄存器。XFER:控制传送信号,低电平有效。用于控制 WR2。DI0DI7:8 位数据输入端。IOUT1、IOUT2:DAC 电流输出端,IOUT1、IOUT2之和为常数。IOUT1随 DAC 寄存器的内容线性变化。Rfb:反馈信号输入线,反馈电阻在芯片内部。Vrfe:基准电源输入端。Vcc:电源输入端。AGND:模拟量接地端。DGND:数字量接地端。DAC0832 的输出是电流型的。在单片机应用系统中通常需要的是电压信号,电流信号与电压信号之间的转换可由运算放大器实现。5.3单片机下载接口此电路用于单片机下载,

19、方便调试 原理图如下图所示: 六、软件总体设计应用系统中的应用软件是根据系统功能要求设计的,应该可靠地实现系统的各种功能。一个优秀的应用系统的软件应具有下列特点:(1)根据软件功能要求,将系统软件分成若干个相对独立的部分。设计出软件的总体结构,使其结构清晰、简捷、流程合理。(2)要树立结构化程序设计风格,各功能程序实现模块化、子程序化。既便于调试、链接,又便于移植、修正。(3)建立正确的数学模型。即根据功能要求,描绘出各个输入和输出变量之间的数学关系,它是关系到系统性能好坏的重要因素。(4)为提高软件设计的总体效率,以简明、直观的方法对任务进行描述,在编写应用软件之前,应绘制出程序流程图。(5

20、)要合理分配系统资源,包括ROM、RAM、定时器/计数器、中断资源等。(6)注意在程序的有关位置处写上功能注释,提高程序的可读性。本次课程设计的程序流程图如下开 始初始化有键按下波形键/频率键根据键值产生波形根据键值变换频率返回七、调试根据方案设计的要求,调试过程共分三大部分:硬件调试、软件调试和软硬件联调。电路按模块调试,各模块逐个调试通过后再联调。7.1 硬件调试通过制作原理图、PCB板到做成板子将原件焊接完毕,这一过程都要保持一种认真的态度。为了方便调试,采用分块调试的方法。电路由多个模块组成,D/A转换电路、显示电路、滤波电路、电平转换电路、电源电路、 振荡电路、复位电路。经过第一次课

21、程设计及电装电调的锻炼,这次在焊点的时候,焊得很结实,检验的时候,未发现有焊接的问题及断线的问题7.2 软件调试在确定编程思路以后将各模块的程序及各子程序编好,使用WAVE进行调试,根据WAVE提示的错误对程序进行修改。除了语法差错和逻辑差错外,当确认程序没问题时,通过直接下载到单片机来调试。7.3 软硬联调下载程序到单片机后,通过连接线路从示波器查看是否有输出波形。无波形输出则继续进行硬件及软件调试。在本次课程设计中,通过观察发现硬件电路输出正常,但输出波形不正确,所以问题锁定在程序的问题,经过多次进行程序的修改及调试,最终系统工作正常,能够输出所需要的波形。最后通过观察幅度频率进行调整。7

22、.4 调试及测试仪器(1)伟福软件、下载线软件;(2)下载线电路板;(3)Hp5450SA 100MHz示波器;(4)DT9208数字万用表。谢 辞由于要准备研究生考试,没有多少时间用来做这个课程设计,但是在这短短的几天时间了,亲自动手去尝试做一些东西,然后调试,或成功或失败,都学到了不少东西,比如知道了地线要共地,否则就出来的波形就不稳定,就象杂波那样(这特别要感谢蒋老师的提醒)。最终的结果是令人欣慰的。首先,要感谢蒋艳红和邱治金老师。是他们为我们的课程设计做了大量细致的后台工作。从实验设备到元器件的提供,以及各种问题的解答。而且,要感谢在电路设计与制作过程中遇到困难时周围同学给予我的真诚帮

23、助,特别是科协的那几个同学。他们抽出大量的时间对我悉心指导,对我在设计中遇到的一个个问题都不厌其烦的讲解,并帮助我寻求解决问题的途径,使我知道怎样耐心寻找问题并解决问题,他们给了很多有益的指导和帮助,在此表示深深的感谢。本次课程设计虽是我的第二次做课设,但实践过程中还是遇到了很多困难,感谢老师们在整个课设过程中地对我们的制作缺陷进行指正,为我们营造良好的学习氛围,使我们养成了严谨的学习态度,这对我们以后的学习和生活有着重要的指导意义。再次感谢所有给予我支持、鼓励和帮助的人!谢谢!参考文献:1 孙俊逸 盛秋林 张铮等编。单片机原理及应用。清华大学出版社2 蔡美琴等编。MCS-51系列单片机系统及

24、其应用。高等教育出版社3 孙育才 孙华芳 王荣兴等编。单片机原理及应用。电子工业出版社4 赵茂泰编。智能仪器原理及应用。电子工业出版社附录一:程序清单#include#include#include#define uchar unsigned char#define uint unsigned int/#define DA0832 XBYTE0x0000sbit KEY_1=P10;sbit KEY_2=P11;sbit KEY_3=P12;sbit led_1=P20;sbit led_2=P21;sbit led_3=P22;sbit cs=P25;sbit wr=P36;void del

25、ay(uint x);uchar set_fre=1;void delay(uint x)while(-x);uchar code tab=0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96, 0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,0xae, 0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5, 0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8, 0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9, 0xea,0xec,0xee,0xef,0xf1,

26、0xf2,0xf4,0xf5, 0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd, 0xfd,0xfe,0xfE,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfe, 0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6, 0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea, 0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0xda, 0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc

27、9, 0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xb1, 0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99, 0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80, 0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0x69, 0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51, 0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0x3a, 0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27, 0x25,0x22,

28、0x20,0x1e,0x1c,0x1a,0x18,0x16, 0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a, 0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02, 0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x01,0x01, 0x02,0x03,0x04, 0x05,0x06,0x07,0x08,0x09, 0x0a,0x0b,0x0d, 0x0e,0x10,0x11,0x13,0x15, 0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0

29、x25, 0x27,0x29,0x2b,0x2e,0x30,0x33,0x35,0x38, 0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e, 0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66, 0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80 /0x82,0x86,0x8a,0x8c,0x90,0x93,0x96,0x99,/0x9c,0x9f,0xa2;void stair(void)/ 三角波uchar k=0,j=255;for(j=255;j0;j-) P0=j; delay(set_fre);

30、 /if(j=0)break; / ;for(k=0;k0;m-) P0=m; delay(set_fre);/if(j=0)break; / ;void square()/方波P0=0x00;delay(100*set_fre);P0=0xff;delay(100*set_fre);uchar n,state;void inital(void)TMOD=0x01;TH0=0x3C;TL0=0xB0;EA=1;ET0=1;TR0=1;void time0() interrupt 1 using 1TH0=0x3C;TL0=0xB0;n+;if(n=3)if(KEY_1=0)state+;if(

31、state=1)P2=0X00;set_fre=1;if(state=2)P2=0X02;set_fre=1;if(state=3)P2=0X04;set_fre=1;if(state=4)state=0;P2=0X00;set_fre=1; if(KEY_2=0)set_fre+;if(set_fre=20)set_fre=1;if(KEY_3=0)set_fre-;if(set_fre=1)set_fre=20;n=0; void main(void)uchar num=0;cs=0;wr=0;inital();while(1)while(state=0)square();/方波while(state=1)juchi()/锯齿波/if(state=3)while(state=2)stair();/三角波 while(state=3)if(num=253)num=0;P0=tabnum+;/正弦波delay(set_fre);下一页为原理图 临时付上去的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号