基于单片机的函数信号发生器毕业硬件设计.doc_第1页
基于单片机的函数信号发生器毕业硬件设计.doc_第2页
基于单片机的函数信号发生器毕业硬件设计.doc_第3页
基于单片机的函数信号发生器毕业硬件设计.doc_第4页
基于单片机的函数信号发生器毕业硬件设计.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 摘 要 本文介绍一种用 AT89C51 单片机构成的波形发生器,可产生方波、三角波、 正弦波、锯齿波等多种波形,波形的周期可用程序改变,并可根据需要选择单 极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。文章给 出了源代码,通过仿真测试,其性能指标达到了设计要求。 关键词:单片机;DAC;信号发生器 2 目 录 摘 要 . 目 录 . 第一章 绪论 . 1.1 单片机概述 . 1.2 信号发生器的分类 . 1.3 研究内容 . 第二章 方案的设计与选择 . 2.1 方案的比较 . 2.2 设计原理 . 2.3 设计思想 . 2.4 设计功能 . 第三章 硬件设计 . 3.1 硬件原理框图 . 3.2 主控电路 . 3.3 数、模转换电路 . 3.4 按键接口电路 . 3.5 时钟电路 . 3.6 显示电路 . 第四章 软件设计 . 4.1 程序流程图 . 第五章 总结与展望 . 致 谢 . 参考文献 . 附录 1 电路原理图 . 附录 2 源程序. 附录 3 器件清单. 3 第一章 绪论 1.1 单片机概述 随着大规模集成电路技术的发展,中央处理器(CPU)、随机存取存储器(RAM)、 只读存储器(ROM)、(I/O)接口、定时器/计数器和串行通信接口,以及其他一些计 算机外围电路等均可集成在一块芯片上构成单片微型计算机,简称为单片机。单片 机具有体积小、成本低,性能稳定、使用寿命长等特点。其最明显的优势就是可以 嵌入到各种仪器、设备中,这是其他计算机和网络都无法做到的9,10。 1.2 信号发生器的分类 信号发生器应用广泛,种类繁多,性能各异,分类也不尽一致。按照频率范围 分类可以分为:超低频信号发生器、低频信号发生器、视频信号发生器、高频波形 发生器、甚高频波形发生器和超高频信号发生器。按照输出波形分类可以分为:正 弦信号发生器和非正弦信号发生器,非正弦信号发生器又包括:脉冲信号发生器, 函数信号发生器、扫频信号发生器、数字序列波形发生器、图形信号发生器、噪声 信号发生器等。按照信号发生器性能指标可以分为一般信号发生器和标准信号发生 器。前者指对输出信号的频率、幅度的准确度和稳定度以及波形失真等要求不高的 一类信号发生器。后者是指其输出信号的频率、幅度、调制系数等在一定范围内连 续可调,并且读数准确、稳定、屏蔽良好的中、高档信号发生器。 1.3 研究内容 本文是做基于单片机的信号发生器的设计,将采用编程的方法来实现三角波、锯齿 波、矩形波、正弦波的发生。根据设计的要求,对各种波形的频率和幅度进行程序 的编写,并将所写程序装入单片机的程序存储器中。在程序运行中,当接收到来自 外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序, 经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。 4 第二章 方案的设计与选择 2.1 方案的比较 方案一:采用单片函数发生器(如 8038) ,8038 可同时产生正弦波、方波等, 而且方法简单易行,用 D/A 转换器的输出来改变调制电压,也可以实现数控调整频 率,但产生信号的频率稳定度不高。 方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出 频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求, 且电路复杂。 方案三:采用单片机编程的方法来实现。该方法可以通过编程的方法来控制信 号波形的频率和幅度,而且在硬件电路不变的情况下,通过改变程序来实现频率的 变换。此外,由于通过编程方法产生的是数字信号,所以信号的精度可以做的很高。 鉴于方案一的信号频率不够稳定和方案二的电路复杂,频率覆盖系数难以达标 等缺点,所以决定采用方案三的设计方法。它不仅采用软硬件结合,软件控制硬件 的方法来实现,使得信号频率的稳定性和精度的准确性得以保证,而且它使用的几 种元器件都是常用的元器件,容易得到,且价格便宜,使得硬件的开销达到最省。 2.2 设计原理 数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再 转换成模拟信号的方法来获得所需要的波形。89C51 单片机本身就是一个完整的微 型计算机,具有组成微型计算机的各部分部件:中央处理器 CPU、随机存取存储器 RAM、只读存储器 ROM、I/O 接口电路、定时器/计数器以及串行通讯接口等,只要 将 89C51 再配置键盘及其接口、显示器及其接口、数模转换及波形输出、指示灯及 其接口等四部分,即可构成所需的波形发生器,其信号发生器构成原理框图如图 2.1 所示。 图 2.1 信号发生器原理框图 89C51 是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样 的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号 89C51 单片机 接口 电路 D/A 转换器 滤波放 大 输出 5 经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。 6 2.3 设计思想 (1)利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的 频率和幅度可变。 (2)将一个周期的信号分离成 256 个点(按 X 轴等分) ,每两点之间的时 间间隔为T,用单片机的定时器产生,其表示式为:T=T/256。 如果单片机的晶振为 12MHz,采用定时器方式 0,则定时器的初值为: X=213T/Tmec (2.1) 定时时间常数为: TL =(8192T)/MOD256 (2.2) TH=(8192T)/256 (2.3) MOD32 表示除 32 取余数 (3)正弦波的模拟信号是 D/A 转换器的模拟量输出,其计算公式为: Y=(A/2sint)+A/2 (其中 A=VREF) (2.4) t=NT (N=1256) (2.5) 那么对应着存放在计算机里的这一点的数据为: (2.6) (4) 一个周期被分离成 256 个点,对应的四种波形的 256 个数据存放在以 TAB1-TAB4 为起始地址的存 储器中。 2.4 设计功能 (1)本方案利用 8155 扩展 8 个独立式按键,6 个 LED 显示器。其中 “S0”号键代表方波输出, “S1”号键代表正弦波输出, “S2”号键代表三角波 输出, “S3” 号键代表锯齿波输出。 (2) “S4”号键为 10Hz 的频率信号, “S5”号键为 100Hz 的频率信号, “S6”号键为 500Hz 的频率信号, “S7”号键为 1KHz 的频率信号,6 个 LED 显 示器输出信号的频率值,选用共阳极 LED。 (3)利用两片 DAC0832 实现幅度可调的信号源, (其中一片用来调节幅度, 另外一片用来实现信号源的输出) 。 (4)频率范围:101000Hz。 (5)输出波形幅度为 05V。 (sin1) 255 (255)/ 2 t DiYA 7 第三章 硬件设计 3.1 硬件原理框图 硬件原理方框图如图 3.1 所示。 图 3.1 硬件原理框图 3.2 主控电路 AT89C51 单处机内部设置两个 16 位可编程的定时器/计数器 T0 和 T1,它们具 有计数器方式和定时器方式两种工作方式及 4 种工作模式。在波形发生器中,将其 作定时器使用,用它来精确地确定波形的两个采样点输出之间的延迟时间。模式 1 采用的是 16 位计数器,当 T0 或 T1 被允许计数后,从初值开始加计数,最高位产 生溢出时向 CPU 请求中断。 中断系统是使处理器具有对外界异步事件的处理能力而设置的。当中央处理器 CPU 正在处理某件事的时候外界发生了紧急事件,要求 CPU 暂停当前的工作,转 而去处理这个紧急事件。在波形发生器中,只用到片内定时器计数器溢出时产生 的中断请求,即是在 AT89C51 输出一个波形采样点信号后,接着启动定时器,在 定时器未产生中断之前,AT89C51 等待,直到定时器计时结束,产生中断请求, AT89C51 响应中断,接着输出下一个采样点信号,如此循环产生所需要的信号波形 6。 如图 3.2 所示,AT89C51 从 P0 口接收来自键盘的信号,并通过 P2 口输出一些 控制信号,将其输入到 8155 的信号控制端,用于控制其信号的输入、输出。如果 有键按下,则在读控制端会产生一个读信号,使单片机读入信号。如果有信号输出, 则在写控制端产生一个写信号,并将所要输出的信号通过 8155 的 PB 口输出,并在 数码管上显示出来。 单 片 机键盘 电路 显示 电路 复位 电路 数/模转 换电路 放大 电路 波形 输出 8 图 3.2 主控电路图 3.3 数/模转换电路 由于单片机产生的是数字信号,要想得到所需要的波形,就要把数字信号转换 成模拟信号,所以该文选用价格低廉、接口简单、转换控制容易并具有 8 位分辨率 的数模转换器 DAC0832。DAC0832 主要由 8 位输入寄存器、8 位 DAC 寄存器、8 位 D/A 转换器以及输入控制电路四部分组成。但实际上,DAC0832 输出的电量也 不是真正能连续可调,而是以其绝对分辨率为单位增减,是准模拟量的输出。 DAC0832 是电流型输出,在应用时外接运放使之成为电压型输出。 由图 3.3 可知,DAC0832 的片选地址为 7FFFH,当 P25 有效时,若 P0 口向其 送的数据为 00H, 则 U1 的输出电压为 0V;若 P0 口向其送的数据为 0FFH 时, 则 U1 的输出电压为-5V. 故当 U1 输出电压为 0V 时,由公式 得:Vout = - 5V.当输出电压为- 5V 时,可得:Vout = +5V,所以输出波形的电压变 化范围为- 5V+ 5V. 故可推得,当 P0 所送数据为 80H 时,Vout为 0V4。 图 3.3 数模转换电路 3.4 按键接口电路 123 0 123 UUU RRR 9 图 3.4 为键盘接口电路的原理图,图中键盘和 8155 的 PA 口相连,AT89C51 的 P0 口和 8155 的 D0 口相连,AT89C51 不断的扫描键盘,看是否有键按下,如有, 则根据相应按键作出反应。其中“S0”号键代表方波输出, “S1”号键代表正弦波 输出, “S2”号键代表三角波输出。 “S3”号键代表锯齿波输出, “S4”号键为 10Hz 的频率信号, “S5”号键为 100Hz 的频率信号, “S6”号键为 500Hz 的频率信 号, “S7”号键为 1KHz 的频率信号3。 图 3.4 按键接口 3.5 时钟电路 8051 单片机有两个引脚(XTAL1,XTAL2)用于外接石英晶体和微调电容, 从而构成时钟电路,其电路图如图 3.5 所示。 电容 C1、C2 对振荡频率有稳定作用,其容量的选择为 30pf,振荡器选择频率 为 12MHz 的石英晶体。由于频率较大时,三角波、正弦波、锯齿波中每一点的延 时时间为几微秒,故延时时间还要加上指令时间才能获得较大的频率波形9。 图 3.5 时钟电路 10 3.6 显示电路 显示电路是用来显示波形信号的频率,使得整个系统更加合理,从经济的 角度出发,所以显示器件采用 LED 数码管显示器。而且 LED 数码管是采用共阳 极接法,当主控端口输出一个低电平后,与其相对应的数码管即变亮,显示所 需数据。其器件模型如图 3.6 所示。 图 3.6 LED 显示电路 11 第四章 软件设计 4.1 程序流程图 本文中子程序的调用是通过按键的选择来实现,在取得按键相应的键值后,启 动计时器和相应的中断服务程序,再直接查询程序中预先设置的数据值,通过转换 输出相应的电压,从而形成所需的各种波形。 主程序的流程图如图 4.1 所示,在程序开始运行之后,首先是对 8155 进行初始 化,之后判断信号频率值,如符合所需的频率,则重置时间常数,并通过显示器显 示出来,不符则返回。在中断结束后,还要来判断波形是否符合,如符合,则显示 其频率,不符则返回,重新判断。 图 4.1 主程序流程图 12 14 图 4.2 为各波形子程序的流程图。如图所示,在中断服务子程序开始后, 通过判断来确定各种波形的输出,当判断选择的不是方波后,则转向对正弦波 的判断,如此反复。如果选择的是方波,则用查表的方法求出相应的数据,并 通过 D/A 转换 器将数据转换成模拟信号,形成所需波形信号。 图 4.2 子程序流程图 13 14 综合实验总结 课程设计是培养学生综合运用所学知识课程设计是培养学生综合运用所学知识,发现发现,提出提出,分析和解决实际问分析和解决实际问 题题,锻炼实践能力的重要环节锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程是对学生实际工作能力的具体训练和考察过程.随着随着 科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的 开发技术是十分重要的。开发技术是十分重要的。 回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿, 从理论到实践,在好几个星期的日子里,可以说得是苦多于甜,但是可以学到从理论到实践,在好几个星期的日子里,可以说得是苦多于甜,但是可以学到 很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多 在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结 合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相 结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动 手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重, 这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现 了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固, 比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好通过这通过这 次课程设计之后,一定把以前所学过的知识重新温故。次课程设计之后,一定把以前所学过的知识重新温故

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论