基于单片机的正弦波信号发生器设计毕业论文.doc_第1页
基于单片机的正弦波信号发生器设计毕业论文.doc_第2页
基于单片机的正弦波信号发生器设计毕业论文.doc_第3页
基于单片机的正弦波信号发生器设计毕业论文.doc_第4页
基于单片机的正弦波信号发生器设计毕业论文.doc_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

=毕业设计 目录 绪论1 第 1 章 系统概述和方案2 1.1 引言.2 1.2 方案选择2 1.3 DDS 的理论分析与参数计算2 1.3.1 DDS 的基本原理.2 1.3.2 参数计算3 1.4 信号发生芯片选择.4 第 2 章 系统硬件设计5 2.1 系统总体设计5 2.2 单片机介绍及与 AD9835(DDS)连接电路 5 2.2.1 单片机 AT89S51 介绍5 2.2.2 AD9835 芯片介绍7 2.3 信号发生电路8 2.4 低通滤波电路10 2.5 DA 转换及幅度控制电路.11 2.6 信号放大电路.13 2.7 显示电路.14 2.8 键盘电路.16 2.9 电源电路.17 第 3 章 系统软件流程图19 3.1 主程序流程图.19 3.2 键盘处理子程序流程图.20 3.3 D/A 转换子程序流程图21 展 望22 致 谢23 参考文献24 附录一25 附录二26 河南机电高等专科学校毕业设计 1 绪绪 论论 基于单片机的正弦波信号发生器设计,该课题的设计目的是充分运用大学期 间所学的专业知识,考察信号发生器的基本功能,完成一个基本的实际系统的设 计全过程。通过单片机控制一个有特殊功能的信号发生芯片,可以产生一系列有 规律的幅度和频率可调的波形。这样一个信号发生装置在控制领域有相当广泛的 应用范围。 直接数字频率合成(DDS)是近年来发展起来的一种新的频率合成技术。其 主要优点是相对带宽很宽、频率转换时间极短(可小于 20ns)、频率分辨率很高、 全数字化结构便于集成、输出相位连续、频率、相位和幅度均可实现程控。因此, 能够与计算机紧密结合在一起,充分发挥软件的作用。作为应用,现在已有 DDS 产品用于接收机本振、信号发生器、通信系统、雷达系统、跳频通信系统等。 本文介绍一种由直接数字频率合成(DDS)芯片 AD9835 设计的正弦信号发 生器,该芯片支持高达 50MHz 的时钟频率,可以产生最高可达 25MHz 的正弦波 形。通过单片机控制完全可以满足设计所要求的正弦波信号的生成。 本文主要分六大部分:绪论、系统概述和方案、硬件部分、软件部分,展望 和致谢。绪论,首先对课题研究背景和所涉及的相关技术领域进行了介绍;第一 章对系统所要完成的功能和可扩展的功能进行描述,确定系统的设计方案主要元 器件的选择。第二章对系统的硬件结构和各部分组成作了简要的介绍和讲解;第 三章是软件部分,这部分重点介绍了主程序的流程框图及各个子程序的流程框图, 最后对整篇文章进行了总结。 河南机电高等专科学校毕业设计 2 第第 1 1 章章 系统概述和方案系统概述和方案 1.1 引言 信号发生器的实现方法有多种,传统的波形发生器通常由晶体管、运放 IC 等分离元件制成。与此相比,基于集成芯片的波形发生器具有高频信号输出、波 形稳定、控制简便等特点,且大多能产生正弦波、矩形波(含方波)和三角波 (含锯齿波)等多种波形。根据设计要求,又基于 DDS 芯片 AD9835 在正弦波 产生方面的 优良特性,这里提出一种基于 DDS AD9835 的正弦波信号发生器的 设计方案。 本次设计的基于单片机的信号发生器设计就是设计一个单片机控制系统,对 信号发生芯片进行的控制。通过这个单片机对信号发生芯片进行精密控制,实现 对波形的频率及幅度的控制。这些控制可以通过键盘设定,这就要求对选择的信 号发生芯片,选用的单片机有初步的了解,并且对整个系统的结构有个合理的分 配。 1.2 方案选择 方案一:直接利用单片机编程产生正弦波。 优点:简化了产生正弦波的硬件和软件,电路结构简单。 缺点:编程复杂,波形失真较大,不能达到要求输出的高频率信号。 方案二:利用单片机控制直接数字频率合成芯片(DDS)产生的正弦波,通 过单片机,键盘,LED 数码管显示实现波形的数字控制。 优点:控制简单,波形效果好,频率带宽。 缺点:硬件电路复杂。 为了满足设计要求,取得较好的效果,显然方案二较为理想。 1.3 DDS 的理论分析与参数计算 1.3.1 DDS 的基本原理 DDS 的基本原理是:在高速存储器中放入正弦函数相位数据表格,经过 查表操作将读出的数据送到高速 DAC 产生正弦波。可编程 DDS 系统原理如同所 示: 河南机电高等专科学校毕业设计 3 N位 相位累 加器 正弦 余弦表 数模 转换器 DAC 低通 滤波器 LPF 频频率率控控制制字字K FCWN位位 M位S位 Fout 系统时钟 fclk N:相位,累加器位数; M:相位累加器实际对 ROM 寻址的位数; S:ROM 输出正弦信号(离散化)的位数; 位数:相位累加器的位数,满足位数=N-M 图 1-3-1 DDS 的基本原理图 DDS 系统由频率控制字,相位累加器,正弦查询表,数模转换器和低通滤 波器组成,参考时钟为高稳定度饿晶体振荡器,其输出用于同步 DDS 各组成部 分的工作。DDS 系统的核心是相位累加器,它由 N 为相位寄存器构成,类似于 一个简单的计数器。每来一个时钟脉冲,相位寄存器的输出就增加一个步长的相 位增 量值,加法器将频率控制数据与累加寄存器输出的累加相位数据相加,把相加结 果送至累加寄存器的数据输入端。相位累加器进入线性相位累加,累加至满量程 时产生一次计数溢出,这个溢出频率即为 DDS 的输出频率。正弦查询表是一个 可编程只读存储器(PROM),存储的是以相位为地址的一个周期正弦信号的采样 编码值,包含一个周期正弦波的数字幅度信息,每个地址对应于正弦波中 0360 范围的一个相位点将相位寄存器的输出与相位控制字相加得到的数据作 为一个地址对正弦查询表进行寻址,查询表把输入的地址相位信息映射成正弦波 幅度信号驱动 DAC,输出模拟信号。低通滤波器平滑并滤除不需要的取样分量, 以便输出频谱纯净的正弦信号。 1.3.2 参数计算 对于计数容量为 2n 的相位累加器和具有 M 个相位取样点的正弦波形存储器, 若频率控制字为 K,输出信号频率为 f0,参考时钟频率为 fc,则 DDS 系统输出 信号的频率为 f0=(k2n)fc 输出信号的频率分辨率为 fmin=(12n)fc 河南机电高等专科学校毕业设计 4 由奈奎斯特采样定理可知,DDS 输出的最大频率为 fmax=fc2 频率控制字可由以上公式推出 K=f02nfc 当外部参考时钟频率为 50MHz,输出频率需要为 1MHz 时,系统时钟经过 6 倍频,使得 fc变为 300MHz,这样就可利用以上公式计算出 DDS 的需要设定的控 制频率字 K=1248300 1.4 信号发生芯片选择 系统采用数字波形合成技术产生任意波形,其基本原理是设法将任意波形的 采样点的值依次通过数模转换器转换成模拟量输出。具体原理如下:首先自定义 一个周期波形函数,其值按等距采样个点,然后进行离散化取值。采样后,得 到该波形一个周期内点的波形数据,把它们按 DA 位数进行取整转换,合成 偏移码表存放在单片机数据存储器(RAM)中,根据波形时间参数值,依次取每个 点的偏移码通过 IO 输出给 DA 转换器。如此循环取值,便可以得到连续的波 形信号。 根据设计要求,本系统的设计基于直接数字频率合成技术,采用单片机 AT89S51 控制 DDS 芯片 AD9835,通过改变 AD9835 内部编程控制寄存器所选的 操作模式、相位累加器的位数、频率控制字和幅度控制字,以产生频率稳定度达 10-6,最小频率步进为 1Hz,多档可调的正弦信号,再使用可编程放大器对输出 电压进行精确控制,在频率范围内能产生二进制 PSK、ASK 信号。在 100KHz 固 定频率载波进行二进制键控,二进制基带序列码速率固定为 10Kbps,二进制基带 序列信号自行产生,能够产生模拟调制 AM 信号。 正弦波发生器是本设计的核心部分,波形发生器要求能产生模拟 AM、FM 调制信号和二进制 PSK、ASK 信号,以及优于 10-6 的频率稳定度,且在 1KHz10MHz 的大范围内以 1Hz 的步进调整。 采用直接数字频率合成技术,用随机读写存储器 RAM 存储所需波形的量 化数据,按照不同频率要求,以频率控制字 K 为步进对相位增量进行累加,以累 加相位值作为地址码读取存放在存储器内的波形数据,经 DA 转换和幅度控制, 再滤波即可得所需波形。由于 DDS 具有相对带宽很宽、频率转换时间极短(可小 于 20s),频率分辨率高,全数字化结构便于集成等优点以及输出相位连续,频 率、相位和幅度均可实现程控,因此,可以完全满足。 河南机电高等专科学校毕业设计 5 第第 2 2 章章 系统硬件设计系统硬件设计 2.1 系统总体设计系统总体设计 整机有七大模块组成,分别是电源产生电路,按键电路,单片机外围控制电 路,正弦波信号发生电路,滤波电路,DA 转换电路及幅度控制电路,信号放 大电路。如图 2-1 示: 按键 LED数码 管显示 单片机 AT89S51 DDS AD9835 低通滤 波器 D/A转换 器 TLC7524 运算放 大器 AD829 输出 图 2-1 总体设计系统原理图 基于 DDS 芯片 AD9835 的正弦波信号发生器主要由 AT89S51、DDS 芯片 AD9835、DA 芯片 TLC7524 和射频运算放大器 AD829 组成,如图 2-1 所示。 单片机 AT89S51 控制 DDS 集成电路 AD9835,输出所期望的频率正弦波信号。 单片机还用于控制输出信号幅值,检测按键,控制 LED 显示,并与 PC 通讯接收 远程指令。AD9835 输出的信号经低通滤波器滤除高频干扰后送至 DA 转换器 TLC7524,控制其幅值,TLC7524 输出后经运算放大器 AD829 放大,最后输出 满足要求的正弦波。 2.2 单片机介绍及与 AD9835(DDS)连接电路 2.2.1 单片机 AT89S51 介绍 单片机作为系统设计的核心部分,在系统功能实现上起到了决定性的作用。 河南机电高等专科学校毕业设计 6 AT89S51 是美国 ATMEL 公司生产的低电压,高性能 CMOS 8 位单片机,片内含 4k bytes 的可反复擦写的只读程序存储器(PEROM)和 128 bytes 的随机存取数据存 储器(RAM),器件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标 准 MCS-51 指令系统,片内置通用 8 位中央处理器(CPU)和 Flash 存储单元。 AT89S51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和 XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石 英晶休或陶瓷谐振器一起构成自激振荡器。 外接石英晶体(或陶瓷诺振器)及电容C1,C2接在放大器的反馈回路中构成并 联振荡电路。对外接电容C1,C2虽然没有十分严格的要求,但电容容量的大小会 轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性, 这里选择使用石英晶休,我们的电容使用30pF。如使用陶瓷谐振器的话,应选择 40pF士10pF的容值的电容。也可以采用外部时钟。采用外部时钟的电路的情况时, 外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。 AT89S51有强大的I/O口分别是P0.0-P0.7,P1.0-P1.7,P2.0-P2.7,P3.0-P3.7, 一共有32个引脚,这32个引脚都可以作为输N输出用,这32个引脚,就构成了 AT89S51的4个并行I/O接口,完成数据的传送和控制。 本系统控制电路所采用的单片机AT89S51是40引脚,PDIP封装的集成电路芯 片。随着半导体工艺的成熟和生产的工业化,使它的价格越来越低,是经济型系 统首选机型,AT89S51具有丰富的I/O口内置定时计数器和中断系统。 单片机的引脚分布和功能如下: 图 2-2-1 AT89S51的PDIP封装图 河南机电高等专科学校毕业设计 7 由于工艺及标准化等原因,芯片的引脚数目是有限的。MCS-51系列把芯片 引脚数目定为40个,但单片机为实现其功能所需要的信号数目却远远超过这个数。 那么如何才能解决这个供需矛盾呢?正像有的人为了增加收入,要做一些兼职工 作。单片机也同样如此,当引脚数量有限时, “兼职”是唯一可行的办法,即给其中 的一些信号引脚赋以双重功能。 对于同一系列中各种型号的单片机,其此脚的基本功能是相同的,所不同的 一是引脚的第二功能。有的引脚的第二功能比它的第一功能还有用,有时可以不 利嚣用它的基本功能,但是不能没有它的第二功能。缺少了它的第二功能,单片 机甚至还不能工作。 P0-P3口的基本功能都是作为通用的双向I/O口,它们的第二功能分别如下: P0口:第二功能是在访问外部存储器时,用于分时使用的低8位地直输出和8 位数据总线的输入,输出。 Pl口:只有在52子系列中,P1.0和1.1具有第二功能在5l子系列中,Pl口就 作为通用的I/O口使用。 P2口:第二功能是在访问外部存储器时,输出高8位地址。 P3口:在51单片机中,P3口的8引脚都具有特定的第二功能,而且都是很重 要的功能。 单片机各端口的第二功能完全是自动的,不需要用指令来转换。如 P3.6、P3.7分别是WR、RD信号,当单片机外接RAM或有外部FO口时,它们被用 作第二功能,它们就自动充当着传输“写”或“读”信号的作用,不能作为通用I/0口 使用,也就是说,只要CPU执行到MOVX指令,就会有相应的信号从P3.6或P3.7 送出,不需要事先用指令说明。 P3口的第二功能信号都是单片机的重要控制信号。因此在实际使用时,都是 按需要选用其第二功能信号,剩下的才以第一功能的身份做数据的I/O使用。在本 系统中,我们采用P3口,完成了一系列控制。比如,缺相指示信号,用从P3.0输 出,缺相输入信号,从P3.2输入等。 本设计采用AT89S51的P3口的部分IO口的第二功能P3.3、RXD、TXD分别 于AD9835的FSYNC、SDATA、SCLK连接。 2.2.2 AD9835 芯片介绍 AD9835芯片主要技术指标如下: 频率范围:0.1Hz10MHz 频率分辨率:0.1Hz 河南机电高等专科学校毕业设计 8 频率稳定度:110-7 输出幅度:010V可调。 AD9835的相位累加器为32位,取其高12位作为读取余弦波形存储器的地址。 每一次,时钟使相位累加器的输出也即余弦ROM寻址地址递增频率设定数据, 对应的波形相位变化为: P2nK/232 (3) 因此,改变相位累加器设定值K,就可以改变相位值P,从而改变合成信号频率 f。经简化,合成信号频率由下式决定: fKfmc/232 (4) 式中,fmc50MHz,用高稳定度晶体振荡器获得。K值在1K231之间。最低 频率为fminfmc/232,根据Nyquist采样定律,重建信号频率最高可达fmc/2,但 通常取最高频率为fmaxfmc/3。AD9835的封装图如下图所示: AD9835 1 5 4 2 7 3 6 89 10 11 12 13 14 15 16FS ADJUST REFIN REFOUT DVDD DGND MCLK SCLK SDSTA COMP AVDD IOUT AGND PSEL0 PSEL1 PSELECT PSYNC 图2-2-2 AD9835封装图 2.3 信号发生电路 作为系统设计的核心,信号发生电路是由AD9835和单片机构成。其中, AD9835是一款低功耗、可编程波形发生器,最高时钟频率为50MHz。当AD9835 的时钟为25MHz时,其输出频率范围为DC 12.5MHz,分辨率是 0.00582Hz。AD9835控制灵活方便,采用串行方式加载数据,只需3根单片机端口 线即可控制。图2.3为信号发生电路,SCLK、SDATA、FSYNC连接到单片机,接 受控制命令。为了保证性能和抗干扰,最好将数字电源DVDD和模拟电源AVDD 分开供电。电路布局时,电容应该尽可能地靠近AD9835放置。AD9835输出后进 行低通滤波,滤除干扰波后将信号送至D/A转换器TLC7524。AD9835与AT89S51 河南机电高等专科学校毕业设计 9 接口图如下所示: AT89S51AD9835 P3.3 RXD TXD FSYNC SDATA SCLK 图2-3-1 AT89S51与AD9835接口图 AD9835与AT89S51通过3个引脚相连:如上图所示。AT89S51串行口工作在 方式0,TXD输出固定频率为fosc的时钟脉冲(fosc为AT89S51外接晶振频率)来 驱动AD9835的SCLK, 在该时钟信号的驱动与P3.3的控制下,AD9835接收从 AT89S51串行口的RXD发出的命令字节和数据字节。AD9835的FSYNC控制信号 由AT89S51可编程控制引脚P3.3提供。在数据从AT89S51串行口发往AD9835时, 该引脚程控为低电平。由于AD9835接收的大部分命令和参数为16位,而AT89S51 每次只能发送1字节数据,因此FSYNC应在AT89S51串行口连续发送2个字节的过 程中保持低电平。AT89S51从串行口输出数据时低位先发出,而AD9835首先接收 高位。AD9835接收到的16位数据中,最高4位是命令码,接下来的4位是地址码, 低8位是数据码。为了保证AD9835按这个次序接受数据,在软件设计中将要传输 的命令码、地址码和数据码逆序编码从AT89S51串行口发出。 AD9835 FS ADJ REF IN REFOUT DVDD DGND MCLK SCLK SDATA COMP AVDD IOUT AGND PSEL0 PSEL1 PSEL ECT PSYNC 3.9K 1 2 3 4 5 6 7 89 10 11 12 13 14 15 16 0.01F 10 f 0.1 f 1 2 3 4 25MHz NC VCC GND OUT 0.01 F 0.1F 10 F OUT 360 图2-3-2 信号发生电路 河南机电高等专科学校毕业设计 10 波形的输出时间参数是指输出波形中每两点的时间间隔。单片机程序中设定 寄存器 1、0 是定时器、T1 是计数器,1、0 和 T1 串联起来使用,满足定时时间 要求。当计算出 C65 536 时,CPU 只使用定时器 TO;当计算出 C65 536 时, CPU 将把定时器 1、0 和计数器 T1 两者结合起来使用,将 C 开平方后的值给 1、0、T1 作为初值。8 位的 DAC0832 单位周期输出最多含有 256 个点,系统的 晶振频率 fo:25MHz f 0 是 4 位数字组合成的频率值;P 为频率小数点对应的值,两者相除就是实 际频率值;K(K=1,2,3,4)是分辨率的调整,根据波形频率值,调整一个周期 内输出波形的点数。 T0/T1 被调用后,开始计数。当定时器 1、0 计数溢出时,产生中断信号,给 P3.5 写一个脉冲信号,T1 用于记数该脉冲信号,当 T1 产生中断后,总定时时间 到,输出一个点。反复循环,从而可在一个周期内输出完整波形。 2.4 低通滤波电路 低通滤波器是直接数字频率合成器的重要组成部分,其性能的优劣直接影响 整个直接数字合成器的特性。在整个 DDS 实现过程中,低通滤波器除了滤掉高 频信号之外,还有除去杂散的作用。DDS 的杂散主要来源以下三个方面: (1)ROM 幅度量化误差:相位转化为幅度,是通过寻址 ROM 实现的,然而 ROM 地址中存有的波形幅度值字长是有限的,ROM 存储能力有限而引起的舍位 误差就是幅度量化误差; (2)相位截断误差:为了提高 DDS 的精度,DDS 的相位累加器位数都取得非 常大,但 ROM 的容量是有限的,因此只利用相位累加器的高 M 位 ROM 寻址, 其低(N-M)位被截断。由此引入的截断误差是 DDS 杂散的主要来源; (3)DAC的转换误差,即DAC中非线性引起的转换误差:DAC有限的分辨率、 非线性特性以及转换过程中出现的尖峰脉冲均会导致频谱质量变坏。因此,低通 滤波器的使用是非常必要的,其性能的优劣直接关系到整个DDS的技术指标。 低通滤波器可以分为巴特沃什滤波、切比雪夫滤波、贝赛尔滤波和椭圆滤波 等。巴特沃什低通滤波器通带和阻带都是平坦的,但是其过渡带太过平缓;切比 雪夫低通滤波器的通带是等波纹抖动的,阻带是平坦的,过渡带比巴特沃什稍陡; 贝赛尔低通滤波器和切比雪夫低通刚好相反,通带平坦,阻带是等波纹抖动的; 椭圆低通滤波器的通带和阻带都是抖动的。但是其过渡带下降迅速,过渡带很窄。 在该系统中,为了使输出信号频率最高10 MHz时能够最低程度地降低AD9835外 部系统时钟30 MHz的干扰,采用具有较窄过渡带特性的椭圆滤波器,并采用7阶 椭圆低通滤波。根据系统要求,输出信号的频率可达10 MHz,设定其通带为10 河南机电高等专科学校毕业设计 11 MHz,且7阶滤波具有下降速度更快的过渡带,可以有效地滤除10 MHz以上的高 频干扰。考虑到实际的椭圆滤波器设计与理论分析是有所不同的,在此使用 Multisim 9经过仿真后得出椭圆滤波器的具体参数。椭圆低通滤波器的电路图如下 图所示: C2 5.6pF C4 22pF C5 33pF C6 22pF C7 22pF L1 L2 L3 470nH300nH300nH LPF INPUT C1 1pF C3 4.7pF LPF OUTPUT 图 2-4 低通滤波电路 2.5 DA 转换及幅度控制电路 本模块首先介绍 D/A 转换的基本原理,并对选用的 D/A 转换芯片 TLC7524,转换电路及幅度控制电路进行介绍。 D/A 转换器的基本功能是将一个用二进制表示的数字量转换成相应的模拟量。 实现这种操作的基本方法是对应于二进制的每一位,产生一个相应的电压(电流) ,而这个电压(电流)的大小正比于相应的位权。目前,常用的 D/A 转换器是由 T 型电阻解码网络构成的。 T 型电阻解码网络 D/A 转换器有电压相加型和电流相加型两种。集成 D/A 转 换器中广泛使用的电流相加型的电路结构网络中只有 R 和 2R 两种电阻,各节点 电阻都接成 T 型,故称为 T 型电阻解码。各位开关由各位二进制代码控制,当代 码 ai为 1 时,开关 Si上合,接运算放大器求和点(虚地点);当代码 ai为 0 时,开 关 Si下合,接地。因此,不论开关是上合还是下合,网络中各支路的电流是不变 的。从电阻网络各节点向右看和向下看的等效电阻都是 2R, 经节点享有和向下流 的电流相等,向下每经过一个节点就进行一次对等分流。因此,网络实际上是一 个按二进制规律分流的分流器。整个网络的等效输入电阻为 R,基准电压 VR供 出的总电流为: I=VR/R 经 2R 电阻流向开关的各分流为: 河南机电高等专科学校毕业设计 12 I1=I/21 I2=I/22 In-1=I/2n-1 In=I/2n 这些电流是流向求和点还是流向地,取决于开关是上合还是下合,也就是取 决于数字量各位的代码是 1 还是 0。因此,流向求和点的电流 I 由下式确定: I=a1I1+a2I2+anIn=(a1/21+a2/22+an/2n)I=D/2nI 若 Rf=R,则输出电压为: Uout=IfRf=IRf=D/2nVR 从上式可见,转换器的输出电压 Uout 正比于数字量 D,负号表示输出电压 的极性与基准电压 VR相反。 D/A 转换器的主要性能指标: A.分辨率。这个参数表明 D/A 转换器对模拟值的分辨能力,它是最低有效位 (LSB)所对应的模拟值。它确定了能由 D/A 转换器产生的最小模拟量的变化。 分辨率通常用数字量的位数表示,一般为 8 位,10 位,12 位,16 位等。若分辨 率为 10 位,则表明它的最小输出变化量为满量程的 1/210。 B.输入编码形式。如二进制,BCD 码等。 C.转换线性。通常给出在一定温度下的最大非线性度,一般为 0.010.03。 D.转换时间(建立时间) 。转换时间是描述 D/A 转换速度的一个参数,具体 是从输入数字量变化到输出终值误差1/2LSB(最低有效位)时所需的时间。通 常为几十纳秒至几微妙。 E.绝对精度和相对精度。绝对精度(简称精度)是指在整个刻度范围内,任 意输入数码所对应的模拟量实际输出值与理论值之间的最大误差。相对精度是最 大误差相对于满刻度的百分比。绝对精度应小于 1LSB. 由于AD9835最后输出的是数字量电流,为了实现对其进行的控制,需将其 转换成模拟量,由单片机控制模拟量进而控制波形实现正弦波的频率和幅度调节。 这里我们介绍一种D/A转换器TLC7524。AD9835输出信号经滤波放大,送入D/A 转换器TLC7524,单片机控制TLC7524实现幅值调节。其中,TLC7524采用直通 方式,8位数字量一旦达到D7D0输入端,便进行D/A转换,从而实现256级幅值 调节。TLC7524采用电流工作模式,外接一片运算放大器AD829将电流电压变换 为模拟电压输出。 河南机电高等专科学校毕业设计 13 DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 WR CS REF RFB OUT1 OUT2 VDD TLC7524 图2-5 TLC7524封装图 2.6 信号放大电路 放大器的作用:能把输入讯号的电压或功率放大的装置,由电子管或晶体管、 电源变压器和其他电器元件组成。用在通讯、广播、雷达、电视、自动控制等各 种装置中。其原理是高频功率放大器用于发射机的末级,作用是将高频已调波信 号进行功率放大,以满足发送功率的要求,然后经过天线将其辐射到空间,保证 在一定区域内的接收机可以接收到满意的信号电平,并且不干扰相邻信道的通信 高频功率放大器是通信系统中发送装置的重要组件。按其工作频带的宽窄划分为 窄带高频功率放大器和宽带高频功率放大器两种,窄带高频功率放大器通常以具 有选频滤波作用的选频电路作为输出回路,故又称为调谐功率放大器或谐振功率 放大器;宽带高频功率放大器的输出电路则是传输线变压器或其他宽带匹配电路, 因此又称为非调谐功率放大器。 运算放大器原理:运算放大器(Operational Amplifier,简称 OP、OPA、OPAMP)是一种直流耦合,差模(差动模式)输入、通常为单端输 出(Differential-in, single-ended output)的高增益(gain)电压放大器,因为刚开 始主要用于加法,乘法等运算电路中,因而得名。一个理想的运算放大器必须具 备下列特性:无限大的输入阻抗、等于零的输出阻抗、无限大的开回路增益、无 限大的共模排斥比的部分、无限大的频宽。最基本的运算放大器。一个运算放大 器模组一般包括一个正输入端(OP_P)、一个负输入端(OP_N)和一个输出端(OP_O)。 河南机电高等专科学校毕业设计 14 通常使用运算放大器时,会将其输出端与其反相输入端(inverting input node)连接,形成一负反馈(negative feedback)组态。原因是运算放大器的电压 增益非常大,范围从数百至数万倍不等,使用负反馈方可保证电路的稳定运作。 但是这并不代表运算放大器不能连接成正回馈(positive feedback) ,相反地,在 很多需要产生震荡讯号的系统中,正回馈组态的运算放大器是很常见的组成元件。 将运算放大器的反向输入端与输出端连接起来,放大器电路就处在负反馈组 态的状况,此时通常可以将电路简单地称为闭环放大器。闭环放大器依据输入讯 号进入放大器的端点,又可分为反相(inverting)放大器与非反相(non- inverting)放大器两种。 由于 DA 转换器输出信号幅值小于 5V,需多级放大器,因此选用 AD829 放 大器,AD829 是一款低噪、高性能高速运算放大器。压摆率 230Vs,宽带 750MHz。15V 供电,输出电压最大幅值可达 28VP-P 满足系统设计需要。下图 为电压放大模块电路,采用反比例放大,其增益为 R1/R2,手动调节 R1 调整电 压输出幅值,C1 电容有效滤除杂波。 R1 R2 C1 - + 8 1 2 3 4 5 6 7 330 15pF Cap 0.1F Cap 0.1F 47 AD829 图 2-6 信号放大电路 2.7 显示电路 显示电路可以有 LED 数码管显示和 LCD 液晶显示两种,由于液晶屏价格相 对较贵,驱动程序编写较复杂,因此选用廉价而且容易控制的数码管作为显示器 件。 LED 显示器显示方式有两种:静态显示和动态显示。静态显示就是每一个 LED 显示器都必须接一个带锁存的 8 位 I/O 接口,用来锁存待显示的字形笔画段 河南机电高等专科学校毕业设计 15 的代码。当显示位数较多时,静态显示方式需要的 I/O 口数量较多,使用这种方 式就不合适。这种方式的优点是占用单片机 CPU 的时间少,显示稳定;缺点是 硬件电路比较复杂,占用 I/O 接口多,成本较高。动态扫描显示是单片机应用系 统中使用最为广泛的显示方式。其接口电路是把所有 LED 显示器的 8 个笔画段 ah 同名端连在一起,共用一个接口(一般称作段输出口) ,而每一个显示器的公 共极各自独立地受其他 I/O 线(一般称作位输出口)控制。CPU 向段输出口送出 字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于 公共端 COM 的状态,而这一端是由 I/O 口线控制的,所以就可以决定显示哪一 位了。而所谓动态扫描就是指采用分时的方法,轮流控制各个显示器的 COM 端, 使各个显示器轮流点亮。 在轮流点亮显示器的扫描过程中,每位显示器的点亮时间是极为短暂的(约 12ms) ,但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显 示器并非同时点亮,但是只要扫描的频率足够高(一般扫描间隔不超过 20ms) , 给人的印象就是多位显示器在同时稳定地显示字符,感觉不出闪烁。 单片机动态扫描驱动 LED 七段数码管是根据显示数码位数的需要把时间分成 若干等分,某一时刻仅驱动一位或几位数码管,选择一定的扫描频率,使得人看 起来没有闪烁的感觉即可。根据驱动方法的不同,可以分为七段码直接输出扫描 驱动、8421 码输出译码扫描驱动、移位输出驱动显示等。 七段码直接输出扫描驱动。单片机将要显示的数据通过程序译成七段码,根 据时间的不同选择某一位数据的七段码经单片机 I/O1:1 直接驱动 LED 数码管。 单片机 8421 码输出译码扫描驱动。单片机将要显示的数据从 RB0RB3 输出, 七段码由外部 CD4511 译码完成,如果需要点亮小数点,则小数点从 RB4 输出, 位选择信号从 RB5RB7 输出,经 CD4028 高电平输出译码器分别驱动每位数码 管,用 8 位 I/O 口可以驱动 8 位带小数点的数码管,程序流程与七段码直接输出 扫描驱动的相似。 移位输出驱动。静态驱动的方法所占用的 I/O 口 I:1 都较多,很难驱动多位 数码管,前两种扫描输出驱动的方法所占的 I/O 口也很多,且当要求显示的数码 位数较多时,亮度很难达到要求。本人在应用中设计出一种仅用 2 位 I/O 口驱动 6 组 4 位数据(共 24 只数码管,如果需要,还可以增)的方法,即移位输出驱动的 方法,除了显示十进制或十六进制数外,还能显示一些特定字符,如“H”、 “J”、 “L”、 “ n”、 “ o”、 “p”、 “q”及“u”等,在应用中如果要做到显示电路与控制电路分离,显示 电路与控制电路的连接线只要 4 根,即电源线 2 根、控制信号线 2 根。 与静态显示方式相比,动态扫描显示方式在显示位数较多时有明显的优势, 可节省 I/O 接口,降低硬件成本。 河南机电高等专科学校毕业设计 16 图2-7 LED显示电路 如图 2-7 所示,采用三级管对数码管进行驱动,本电路图采用的是共阴极数 码显示,当有三极管导通时,数码管的一端相当于接地,数码管就显示了。RP1 为排阻,相当于 8 个电阻并排在一起。 2.8 键盘电路 键盘中按键与接口的连接方式分为独立式按键和矩阵式按键两种类型。 独立式按键的硬件特点是每个按键均独立地占用一条 I/O 接口线。单片机识 别 I/O 口线电平的高低就能识别出是否有键按下及哪个键按下。独立式按键硬件 结构及软件设计均较简单,但每个按键都要占用一条 I/O 口线,一般只用于按键 数较少或 I/O 口线资源有空闲的场合。 矩阵式键盘又称行列式键盘,往往用于按键数量较多的场合。矩阵式按键的 按键设置在行与列的交点上,行线连接的接口为输入口,用于输入按键的行位置 信息,列线连接的接口为输出口,用于输出扫描(一般为低电平) 。行线还连接 有上拉电阻,当键盘中无按键按下时,所有的行线和列线之间都被断开。如果通 过列线接口输出低电平,则当有任何一键闭合时,该键所对应的行线和列线被接 通,当某键所对应的行线出现低电平时,就可以判断出该行有按键被按下。 本设计要求所用按键数量并不是很多,考虑选用独立式按键,不过在键盘的 软件设计中注意按键的去抖动。 键盘从上往下依次为KEY0KEY3,键盘未按下时,I/O端口经上拉电阻接 +5V电压,输入的是高电平;键盘按下时,I/O端口由于接地,输入的是低电平。 KEY0键功能:接P1.0口,选定信号的频率控制。 河南机电高等专科学校毕业设计 17 KEY1键功能:接P1.1口,选定信号的幅度控制。 KEY2键功能:接P1.2口,选定的控制对象步进量增。 KEY3键功能:接P1.3口,选定的控制对象步进量减。 +5 P1.0 P1.1 P1.2 P1.3 图 2-8 键盘电路 2.9 电源电路 220V8V LM7805 IN OUT GND T 220F0.1F0.1F100F 5V 图2-9 电源电路 电源电路为输出电压+5V、输出电流1.5A的稳压电源。它由电源变压器B,桥 式整流电路D1D4,滤波电容C1、C3,防止自激电容C2、C3和一只固定式三端 稳压器(7805)极为简捷方便地搭成的。 220V交流市电通过电源变压器变换成交流低压,再经过桥式整流电路D1D4 和滤波电容C1的整流和滤波,在固定式三端稳压器LM7805的Vin和GND两端形成 一个并不十分稳定的直流电压(该电压常常会因为市电电压的波动或负载的变化 等原因而发生变化)。此直流电压经过LM7805的稳压和C3的滤波便在稳压电源的 输出端产生了精度高、稳定度好的直流输出电压。本稳压电源可作为TTL电路或 河南机电高等专科学校毕业设计 18 单片机电路的电源。三端稳压器是一种标准化、系列化的通用线性稳压电源集成 电路,以其体积小、成本低、性能好、工作可靠性高、使用简捷方便等特点,成 为目前稳压电源中应用最为广泛的一种单片式集成器件。 河南机电高等专科学校毕业设计 19 第第 3 3 章章 系统软件流程图系统软件流程图 3.1 主程序流程图 开始 信号发生器和其它 系统参数初始化 调用键盘扫描子程 序 调用显示子程序 D/A转换 是否有键按下? 调各键功能子程 序 N Y 图 3-1 主程序流程图 在主程序流程中,系统上电复位后,开始进行各模块初始化,然后调显示子 程序显示数据,再调键盘扫描子程序,若有按键按下,则调相应的键功能程序, 若无键按下,则循环调用显示程序。 河南机电高等专科学校毕业设计 20 3.2 键盘处理子程序流程图 键盘扫描程序开 始 是否有键按下? 读取键值 0 键 1 键 2 键 3 键 频 率 幅 度 步 进 增 步 进 减 LED显示程序 结束 Y N 图 3-2 键盘处理子程序流程图 系统调用键盘扫描程序开始后,检查按键是否按下,执行延时程序,用来实 现软件去抖动,消除抖动的影响,并且扫描按键,准确判断按键的键值,进而转 向相应的程序处理子程序,实现各按键的功能。具体工作原理如下:按下 K0 键 则显示波形频率,按下 K1 键显示波形幅值,按下 K2 键显示所选频率或幅值的 步进加,按下 K3 键显示所选频率或幅值的步进减。 河南机电高等专科学校毕业设计 21 3.3 D/A 转换子程序流程图 开始 选择通道 允许 DA转换 DA转换 转换 是否结束? AT89S51 接收处理数据 N Y 图 3-3 D/A 转换子程序流程图 D/A 转换程序的设计思路是:电路接通时,D/A 转换器开始采集数据,并进 行数据转换,判断转换是否结束,结束的话就把数据传输给单片机,再通过单片 机对数码管的控制,显示所需要的数据。 河南机电高等专科学校毕业设计 22 展展 望望 在现代社会中,信号的利用已经渗透到社会生活的各个领域中。在超声波测 量技术中,超声换能器(发射换能器和接收换能器) 是超声波检测技术的核心部件。 高精度、宽频率范围、高稳定性的激励源对于发射换能器及超声检测系统性能的 改善和提高起着至关重要的作用。传统的波形发生器通常由晶体管、运放 IC 等 分离元件制成。与此相比,基于集成芯片的波形发生器具有高频信号输出、波形 稳定、控制简便等特点。信号发生器在其他领域中也有广泛的应用,现代的许多 工业控制中基本都会利用信号来控制设备的工作。利用信号的产生进行仪器的控 制已经是自动控制中的一个重要的手段,那么一个幅度、频率、占空比以及波形 可调的信号发生器的设计和完成更具有使用价值。只要将这个信号发生器设计的 基本思路掌握,不但可以融会贯通所学的专业知识还可以在以后工作中利用到, 作为用来控制其他设备或设计的一个参考。 通过这次毕业设计我收获很多,首先让我重新温习了以前所学的课程,把以 前很模糊的地方重新进行了整理;在设计的过程中,有很多以前没接触到的地方, 这次也学习了一遍。其次,在毕业设计涉及到对整体把握这一块的时候让我也收 获颇多,让我学会了系统的看待问题,分析问题,解决问题,这在很多时候是学 不到的,让我在迈向社会这个新的大舞台的时候更有自信。 河南机电高等专科学校毕业设计 23 致致 谢谢 感谢电气工程系的所有老师,他们严谨细致、一丝不苟的作风一直是我生活、 学习中的榜样,他们循循善诱的教导和不拘一格的思路给予我无尽的启迪。 感谢我的论文指导老师仝老师,他从我做毕业设计开始就给予我很大帮助, 通过校园网的数据库给我提供一些参考资料和数据,在设计过程中对于我的疑惑 给予详细的讲解,时刻关注着我的设计进度并且对设计过程中出现的弯路和错误 之处,给予恰当的指导,最终完成了本次设计。 最后,再次感谢在这次毕业设计中帮助我的老师,同学和朋友,你们的热情, 你们的专注,你们的无私令我鼓舞,这必将是我以后工作和学习的不竭动力。 河南机电高等专科学校毕业设计 24 参考文献参考文献 1康华光.电子技术基础(第四版)M.北京:高等教育出版社.1998 2张友德等.单片微型机原理、应用与实验M.上海:复旦大学出版社.1993 3陈权昌,李兴富等.单片机原理及应用.华南理工大学出版社.2007.8 4杨志忠.数字电子技术.高等教育出版社.2000.8 5高锋.单片机应用系统设计及实用技术.机械工业出版社.2004.4 6王幸之.AT89系列单片机原理与接口技术M.北京:航空航天大学出版社.2004 7于晓东等.80c51单片机原理开发与应用实例.中国电力出版社.2008 8戴佳等.51单片机c语言应用程序设计实例精讲(第二版).电子工业出版社.2008.12 9解月珍.信号产生电路M.北京:电子工业出版社.1994.6 10江太辉.高频波形发生器的特性J.信息技术报.1999.9 河南机电高等专科学校毕业设计 25 附录附录一一 系统硬件电路图 河南机电高等专科学校毕业设计 26 附录二附录二 程序清单 define.h /#include “AT89S51.h“ /#include #include #define WRITE 0x00 / WRITE direction bit #define READ 0x01 / READ direction bit /Global VARIABLES unsigned char COMMAND; unsigned char OP_CODE; /Holds an op code to be sent or one that has just been received. unsigned int DATA16; unsigned char data_MSB,data_LSB; char BYTE_Number; /判断发送的是地址、控制命令还是数据 bit SM_BUSY; /float Vin; /AD9835 sbit AD9835_SCLK =P31; sbit AD9835_SDATA =P30; sbit FSYNC=P33; /初始化函数定义 void SYS_init(void);/单片机系统初始化 void SYSCLK_init(void); /系统时钟初始化 void PORT_init(void); /端口初始化 void AD9835_Init (void);/AD9835 初始化 /功能函数定义 void byte_shift (unsigned int data_16);/向 AD9835 写入 16bit 数据 void Freq_Process1 (unsigned char FREQ1_LSBs_L, unsigned char FREQ1_LSBs_H, 河南机电高等专科学校毕业设计 27 unsigned char FREQ1_MSBs_L, unsigned char FREQ1_MSBs_H); /计算频率寄存器参数 void Freq_Process0 (unsigned char FREQ0_LSBs_L, unsigned char FREQ0_LSBs_H, unsigned char FREQ0_MSBs_L, unsigned char FREQ0_MSBs_H); void Freq_Adjust1(float value_Freq1); /产生任意指定频率的正弦波 void Freq_Adjust0(float value_Freq0); void Delay_

温馨提示

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

评论

0/150

提交评论