logo资料库

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

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
一、设计目的与任务 《电子信息工程专业方向》课程设计是一项重要的实践性教育环节,是学生 在完成本专业所有课程学习后必须接受的一项结合本专业方向的、系统的、综合 的工程训练。在教师指导下,运用工程的方法,通过一个较复杂课题的设计练习, 可使学生通过综合的系统设计,熟悉设计过程、设计要求、完成的工作内容和具 体的设计方法,掌握必须提交的各项工程文件。其基本目的是:培养理论联系实 际的设计思想,训练综合运用电路设计和有关先修课程的理论,结合生产实际分 析和解决工程实际问题的能力,巩固,加深和扩展有关电子类方面的知识。 通过课程设计,应能加强学生如下能力的培养: (1)独立工作能力和创造力; (2)综合运用专业及基础知识,解决实际工程技术问题的能力; (3)查阅图书资料、产品手册和各种工具书的能力; (4)工程绘图的能力; (5)编写技术报告和编制技术资料的能力。 二、技术指标与设计要求: 1.借助现有的单片机系统; 2.能产生正弦波、方波、三角波、锯齿波等波形; 3.各种波形频率可调,频率范围为 100-3000Hz; 4.正弦波输出电压为 5V 峰峰值,方波、三角波、锯齿波输出电压为 5V 5.采用 8 位 D/A 转换器; 6.进行硬件平滑滤波; 7.编写程序并调试; 8.提供程序清单; 9.能实物演示。 三、总体设计 3.1 总框图
电 脑 输 出 的 单 片 机 代 码 80C51 DAC0832 滤波电路 示波器 本设计使用了单片机作为中央控制器,直接由软件产生波形信号的输出,可 图 3.1.1 总体设计框图 通过修改软件,还可以输出其它任意波形。 3.2 总体电路图 图 3.2.1 总体电路图 在输出三角波、方波、锯齿波、正弦波时,三角波的实验过程是先加后减, 我的一开始的实现方法是先是从 00H 开始加 1 直到溢出后就执行减 1 操作,就这 样不断调用这个循环。方波的实现方法是连续输出一个数,到某个时候就改变一 下值,可以把值定义为正极性的,也可以是负极性。锯齿波实现很简单,只需要 一开始定义一个初值,然后不断的加 1,当溢出后又重初值开始加起,就这样循 环下去梯形波的实现过程是前后加和减的速度不同而已,如你可以在上升加的步 数大一些,减时少一些。正弦波的实现是非常麻烦的。它的实现过程是通过定义 一些数据,然后执行时直接输出定义的数据就可以了。在设计之初,我一直都在
尝试使用数学的泰勒级数展开来计算输出波形,使用这种方法,实现起来相对来 说要比较困难一点,而且会使得频率会下降。要使得它达到更高的频率,就得另 辟蹊径了。分析一下为什么频率上不去,主要原因在于,使用单片机进行正弦函 数的运算时占去了不少时间,如果去掉这一计算过程波形的频率应该大有提高, 另外就是 CPU 时钟频率没有调至最高,以及 DAC 转换过程需要时间。为了达到更 高的频率,首先就要免去单片机的计算负担,我使用的解决方法是人为计算出要 输出的点,然后建一个表通过查表来进行输出,这样主要工作任务就落到了建表 的过程中。这样做的好处在于,查表所耗费的时钟周期相同,这样输出的点与点 之间的距离就相等了,输出的波形行将更趋于完美,当然更让我们感到的高兴的 是它输出波形的频率将近达到了 3000 赫兹,能够满足我们设计的扩展要求了。 为了实现频率的调整,我在一个正弦波周期里建了两百个点,如果我们隔一个取 点的话,且在 CPU 时钟频率不改变的情形下,正弦波频率将相对于前面的频率提 高将近一倍。这样我们就得到了解决频率调整的方法,首先进行 CPU 时钟频率选 择,再调整一个正弦函数一个周期输出的点数,幅度的调节是通过初始幅度设置 再通过外部放大电路来调节。 3.3 总体程序流程图 3.4 实验箱的介绍 图 3.3.1 总体程序流程图 由图 4 可以看出,它分为很多个功能块,各个功能块之间是相对独立的,每 个功能块都有一个编号分别是竖数 A~D,横数 1~10。用户可以从编号,快速地 找到功能块所在的位置。并且集成了有强大的硬件资源,为用户提供了多种选择, 使用用户可以进行各种单片机的实验。
DP-51PROC 单片机综合仿真实验仪是由广州致远电子有限公司设计的基于 Keil C51 集成开发环境下的 DP 系列单片机仿真实验仪之一,是一套功能强大的 单片机应用技术学习、调试、开发工具,为各大院校的实践教学提供了一个较好 的实验平台,是单片机教学的好帮手。并且向用户提供了丰富的外围器件和设备 接口,可使用户快速掌握单片机原理及其实用接口技术。同时,基于 Keil C51 集 成开发环境下的 TKSMonitor51 仿真器具有硬件仿真的功能,用户可以在 Keil uVision2 环境下学习编写、调试单片机程序,是一套性能完美的 MCU 综合实验 系统。通过学习,实验用户可以掌握运用单片机进行项目开发的过程、步骤和方 法,积累一定的调试方法、技巧。在学习使用 DP-51PROC 单片机综合仿真实验仪 前,用户有必要了解 Keil C51 集成开发环境。 图3.4.1 DP-51PROC单片机综合仿真实验仪 四、单元电路设计 4.1 80C51 单片机
图 4.1.1 80C51 主机板电路原理图 该系列单片机由先进 CMOS 工艺制造并带有非易失性 Flash 程序存储器 全部支持 12 时钟和 6 时钟操作 P89C51X2 和 P89C52X2/54X2/58X2 分别包含 128 字节和 256 字节 RAM32 条 I/O 口 3 个 16 位定时/计数器 6 输入 4 优先级 嵌套中断结构 1 个串行 I/O 口 可用于多机通信 I/O 扩展或全双工 UART 以 及片内振荡器和时钟电路。此外,由于器件采用了静态设计,可提供很宽 的操作频率范围,频率可降至 0 ,可实现两个由软件选择的节电模式,空 闲模式和掉电模式,空闲模式冻结 CPU 但 RAM 定时器,串口和中断系统仍 然工作掉电模式保存 RAM 的内容 但是冻结振荡器 导致所有其它的片内功 能停止工作。由于设计是静态的时钟可停止而不会丢失用户数据 运行可从 时钟停止处恢复。 4.2 DAC0832 芯片 DAC0832 是采用 CMOS 工艺制成的单片直流输出型 8 位数/模转换器。DAC0832 内部结构资料:芯片内有两级输入寄存器,使 DAC0832 具备双缓冲、单缓冲和直 通三种输入方式,以便适于各种电路的需要(如要求多路 D/A 异步输入、同步转 换等)。D/A 转换结果采用电流形式输出。要是需要相应的模拟信号,可通过一 个高输入阻抗的线性运算放大器实现这个供功能。运放的反馈电阻可通过 RFB 端引用片内固有电阻,海可以外接。 该片逻辑输入满足 TTL 电压电平范围,可直接与 TTL 电路或微机电路相接, 下面是芯片电路原理图。
图 4.2.1 DAC0832 引脚图和内部结构电路图 DI0~DI7:数据输入线,TLL 电平。 ILE:数据锁存允许控制信号输入线,高电平有效。 CS:片选信号输入线,低电平有效。 WR1:为输入寄存器的写选通信号,WR2:为 DAC 寄存器写选通输入线。 XFER:数据传送控制信号输入线,低电平有效。 Iout1:电流输出线。当输入全为 1 时 Iout1 最大。 Iout2: 电流输出线。其值与 Iout1 之和为一常数。 Rfb:反馈信号输入线,芯片内部有反馈电阻。 Vcc:电源输入线 (+5v~+15v) Vref:基准电压输入线 (-10v~+10v) AGND:模拟地,摸拟信号和基准电源的参考地。 DGND:数字地,两种地线在基准电源处共地比较好。 IN0~IN7:8 路模拟信号输入端。 A1、A2、A0 :地址输入端。ALE 地址锁存允许输入信号,在此脚施加正脉冲, 上升沿有效,此时锁存地址码,从而选通相应的模拟信号通道,以便进行 A/D 转换。 START:启动信号输入端,应在此脚施加正脉冲,当上升沿到达时,内部逐次逼 近寄存器复位,在下降沿到达后,开始 A/D 转换过程。 EOC:转换结束输出信号(转换接受标志),高电平有效。 OE:输入允许信号,高电平有效。 CLOCK(CP):时钟信号输入端,外接时钟频率一般为 640kHz。 Vcc:+5V 单电源供电。 Vref(+),Vref(-):基准电压的正极、负极。一般 Vref(+)接+5V 电源,Vref(-) 接地。 D7~D0:数字信号输出端。 由 A2、A1、A0 三地址输入端选通 8 路模拟信号中的
任何一路进行 A/D 转换。 图 4.2.2 实验线路 4.3 LM324 芯片 LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图所示。 它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独 立。每一组运算放大器可用图1所示的符号来表示,它有5个引出脚,其中“+”、 “-”为两个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。两个 信号输入端中,Vi-(-)为反相输入端,表示运放输出端 Vo 的信号与该输入端 的位相反;Vi+(+)为同相输入端,表示运放输出端 Vo 的信号与该输入端的相 位相同。由于 LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使 用,价格低廉等优点,因此被广泛应用在各种电路中。 4.4 硬件滤波电路 图4.3.1 管脚图 图 9 是用运算放大器设计的二阶低通 Butterworth 滤波电路,直接采用频域 分析方法得到 其中 k = 1+R1/R2 。令 Q=1/(3-k),w
0=1/RC,则可以写成 其中 k 相当于同相放大器的电压放大 倍数,叫做滤波器的通带增益,Q 叫做品质因数,w0 叫做特征角频率。 图4.4.1 滤波电路图 五. 调试 实验调试过程需要使用到装有 Keil C51 的电脑、DP-51PRO 单片机综合仿真 实验仪以及示波器,具体步骤如下: 1.使用导线把 A2 区 J57、J58 接口的/WR 引脚与 B6 区 J37 接口的 WR1、WR2 相连。 2.使用导线把 A2 区 J63、J64 接口的 A15 引脚与 B6 区 J1 接口的/CS、XFER 相连。 3.使用导线把 B6 区 J10 接口的 ILE、Vref 引脚与 A4 区 J81 接口和 A5 区 J84 接口的 VCC 相连。 4.使用导线把 B6 区 J11 接口的 IOUT1 引脚与 C9 区 J71 接口的 B-相连。 5.使用导线把 B6 区 J11 接口的 IOUT2 引脚与 GND 引脚相连同时与 C9 区 J71 接口的 B+相连。注意:连接时需要使用 C9 区 J30 等转接接口。 6.使用导线把 B6 区 J10 接口的 Rfb 引脚与 C9 区 J71 接口的 BOUT 相连。注 意:连接时需要使用 C9 区 J36 等转接接口。 7.使用导线把 C9 区 J71 接口的 V+引脚与 C9 区 J19 接口的+12V 相连。 8.使用导线把 C9 区 J72 接口的 V-引脚与 C9 区 J19 接口的-12V 相连。 9.使用导线连接 D7 区的 J4 和 A2 区的 P16、P17(SCL~P16、SDA~P17),连 接 D7 区 J2 的/RST 和 A2 区 J61 的 P10,短接 D7 区的 JP1 跳线。 10.使用 Keil C51 集成开发环境,编辑源程序,生成目标文件并调试程序, 观察运行结果。 11.使用示波器观察 LM324 的 BOUT 输出的波形。 12.修改程序编程产生方波、三角波,并用示波器观测输出波形。
分享到:
收藏