毕业设计(论文)基于单片机的智能信号发生器设计.doc

上传人:仙人指路1688 文档编号:3980773 上传时间:2023-03-30 格式:DOC 页数:37 大小:1.05MB
返回 下载 相关 举报
毕业设计(论文)基于单片机的智能信号发生器设计.doc_第1页
第1页 / 共37页
毕业设计(论文)基于单片机的智能信号发生器设计.doc_第2页
第2页 / 共37页
毕业设计(论文)基于单片机的智能信号发生器设计.doc_第3页
第3页 / 共37页
毕业设计(论文)基于单片机的智能信号发生器设计.doc_第4页
第4页 / 共37页
毕业设计(论文)基于单片机的智能信号发生器设计.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《毕业设计(论文)基于单片机的智能信号发生器设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的智能信号发生器设计.doc(37页珍藏版)》请在三一办公上搜索。

1、本科毕业设计(论文) 题 目 基于单片机的智能信号发生器设计 学生姓名 专业班级 学 号 院 (系) 指导教师 完成时间 基于单片机的智能信号发生器设计摘 要本文所设计的系统是利用AT89S52单片机和数模转换器件DAC0832产生所需不同信号的低频信号源,即采用AT89S52 单片机作为控制核心,而在外围采用数字/模拟转换电路(DAC0832)、运放电路(LM324)、按键和LED显示灯电路等,通过按键可控制产生方波、锯齿波、三角波、正弦波,同时用LED显示灯指示对应的波形输出。文中简要介绍了DAC0832数模转换器的结构原理和使用方法,单片机AT89S52的基础理论,以及与电路设计有关的各

2、种芯片,并着重介绍了利用单片机控制D/A转换器产生上述信号的硬件电路设计和软件编程。本文所设计的系统设计简单、性能优良、性价比高,可用于多种需要低频信号源的场所,具有一定的实用性。关键词 单片机 信号发生器 D/A转换 运算放大Design of intelligent signal generator based on single chipABSTRACTThis article by design of system is using AT89S52 single tablets machine and array die conversion devices DAC0832 produ

3、ced by required different signal of low frequency signal source, is used AT89S52 single tablets machine as control core, and in perimeter used digital/simulation conversion circuit (DAC0832), and operational amplifiercircuit (LM324), and press and LED display lamp circuit, by press can control produ

4、ced square, and sawtooth wave, and triangle wave, and sine wave, while with LED display lamp indicates corresponds of waveform output.Brief introduction of DAC0832 in the text structure and the use method of digital-analog converter, basic theory of single-chip microcomputer AT89S52, and chip and ci

5、rcuit design, and focus on using d/a converter producing such signals on single chip microcomputer design of hardware circuit and software programming.This simple system designed by design, excellent performance, cost-effective, places with low frequency signal source can be used for a variety of ne

6、eds, with a certain degree of practicality.Key words The single chip computer The signal generator D/ A conversion Operational amplifier目 录中文摘要I英文摘要II1 绪 论12 系统设计32.1 系统方案的选择32.2 控制芯片的选择33 系统硬件设计43.1 基本原理43.2 单片机介绍及资源分配43.2.1 单片机的介绍43.2.2 资源分配93.3 各部分电路原理93.3.1 键盘电路原理93.3.2 LED显示电路原理113.3.3 DAC0832芯

7、片原理123.3.4 LM324工作原理154 系统软件设计174.1 主程序流程图174.2 子程序流程图185 测试结果236 结论25致 谢26参考文献27附录A 元件清单28附录B 电路原理图29附录C 程序清单301 绪 论波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高稳定性、可重复性和易操作性的电子仪器。函数波形发生器具有连续的相位变换和频率稳定性高等优点,不仅可以

8、模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、震动激励、通讯和仪器仪表领域。在 70 年代前,信号发生器主要有两类:正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。这个时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点。在 70 年代后,微处理器的出现,可以利用处理器、A/D/和 D/A,硬件和软件使波形发生器的功能扩大,产生更加复杂的波形。这时期的

9、波形发生器多以软件为主,实质是采用微处理器对 DAC的程序控制,就可以得到各种简单的波形。1 当今是科学技术及仪器设备高度智能化飞速发展的信息社会,电子技术的进步,给人们带来了根本性的转变,在现代电子领域中,单片机的应用正在不断的走向深入,这必将带来一场仪器设备高度智能化的全面革命。随着集成电路的迅速发展,用集成电路可很方便地构成各种信号波形发生器,而用集成电路实现的信号波形发生器与其它信号波形发生器相比,其波形质量、幅度和频率稳定性等性能指标,都有了很大的提高,特别是单片机应用技术的不断成熟,导致传统控制与检测技术的快速革新。单片机构成的仪器具有高可靠性、高性能价格比,在智能仪表系统和办公自

10、动化等诸多领域中得以极为广泛的应用,特别是在电子工程、通信工程、自动控制、遥测控制、测量仪器、仪表和计算机等技术领域处处可以看见它的应用。2一块单片机芯片就是一台微型计算机,在某些应用领域中,它能够承担大中型计算机和通用微型计算机无法完成的一些工作。单片机之所以能够在各个领域中都得到如此迅猛的发展,主要是因为它具有很多显著的优点和特点,归纳起来有以下几方面:1. 具有优异的性能价格比:单片机尽可能地把应用所需的存储器,各种功能的I/O 接口集成在一块芯片内,因而其性能很高,而价格却相对较低廉,即性能价格比很高。2. 集成度高、体积小、可靠性高:单片机把各种功能部件集成在一块芯片上,因而集成度高

11、,均为大规模或超大规模集成电路。又内部采用总线结构,减少了芯片之间的连线,这大大提高了单片机的可靠性与抗干扰能力。同时,其体积小,对于强磁场环境易于采取屏蔽措施,适合于在恶劣环境下工作。3. 控制功能强:单片机体积虽小,但“五脏俱全”,它非常适用于专门的控制用途。为了满足工业控制要求,一般单片机的指令系统中有极丰富的转移指令,I/O口的逻辑操作指令以及位操作指令。其逻辑控制功能及运行速度均高于同一档次的微机。4. 低电压、低功耗:单片机大量用于携带式产品和家用消费类产品,低电压和低功耗尤为重要。目前,许多单片机已可在2.2V电压下运行,有的已能在1.2V或0.9V下工作,功耗降至A级,一粒钮扣

12、电池就可长期使用。3利用单片机采用程序设计方法来产生低频信号,其下限频率很低。具有线路相对简单,结构紧凑,价格低廉,频率稳定度高,抗干扰能力强,用途广泛等优点,并且能够对波形进行细微调整,改良波形,使其满足系统的要求。只要对电路稍加修改,调整程序,即可完成功能升级。2 系统设计2.1 系统方案的选择方案一:采用分立元件实现非稳态的多谐振振荡器,然后根据需要加入积分电路等构成正弦、矩形、三角等波形发生器。这种信号发生器输出频率范围窄,而且电路参数设定较繁琐,其频率大小的测量往往需要通过硬件电路的切换来实现,操作不方便。方案二:采用DDS即直接数字频率合成技术设计信号发生器是一种要运用数字技术来实

13、现产生信号的方法。由于运用了全数字大规模集成技术,具有体积小、频率分辨率高、信号纯度高等特点,但是DDS芯片价格较为昂贵,且设计较为复杂。方案三:采用单片机和DAC0832数模转换器生成波形,由于是软件滤波,所以不会有寄生的高次谐波分量,生成的波形比较纯净。它的特点是价格低、性能比高,在低频范围内稳定性好、操作方便、体积小、耗电少。方案选择:方案三较方案一而言,具有频率高,工作稳定,容易调试等特性;较方案二而言,具有结构简单,成本低等特性。因此方案三既可满足毕业设计的基本要求,又能充分发挥其电路简单、易控制、性价比较高的优势,经比较采用方案三。2.2 控制芯片的选择方案一:AT89S52单片机

14、是一种高性能8位单片微型计算机。它把构成计算机的中央处理器CPU、存储器、寄存器、I/O接口制作在一块集成电路芯片中,从而构成较为完整的微型计算机。方案二:C8051F005单片机是完全集成的混合信号系统级芯片,具有与AT80S52兼容的微控制器的内核,与MCS-51指令集完全兼容。除了具有标准AT80S52的数字外设部件之外,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件。方案选择:方案二中C8051F005芯片系统内部结构复杂,不易控制,芯片成本高,对于本系统而言利用率低,AT89S52芯片比较常用,简单易控制,成本低,性能稳定,故采用方案一。3 系统硬件设计3.1

15、 基本原理系统框图如图3-1所示波形指示按键单片机数模转换电流、电压转换输出电源图3-1 低频信号发生器系统框图低频信号发生器系统主要由CPU、D/A转换电路、电流/电压转换电路、按键和波形指示电路、电源等电路组成。其工作原理为当分别按下四个按键中的任一个按键就会分别出现方波、锯齿波、三角波、正弦波,并且有四个发光二极管分别作为不同的波形指示灯。3.2 单片机介绍及资源分配3.2.1 单片机的介绍(1)AT89S52的引脚图 如图3-2所示: 图3-2 AT89S52引脚图(2)管脚说明 低频信号发生器采用AT89S52单片机作为控制核心,其内部组成包括:一个8位的微处理器CPU及片内振荡器和

16、时钟产生电路,但石英晶体和微调电容需要外接;片内数据存储器RAM低128字节,存放读/写数据;高128字节被特殊功能寄存器占用;片内程序存储器4KB ROM;四个8位并行I/O(输入/输出)接口P3 -P0,每个口可以用作输入,也可以用作输出;两个定时/计数器,每个定时/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制;五个中断源的中断控制系统;一个全双工UART(通用异步接收发送器)的串行I/O口。VCC:供电电压。GND:接地。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。/PROG/ALE:

17、当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时

18、,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。489S52 单片机外部有32个端口可供用户使用,其功能如下表所示:表3-1 89S52并行I/O接口端口引脚位置第一功能第二功能符号功能符号功能P039-32P0.0-P0.7通用I/0口AD0-

19、AD7地址数据总线P11-8P1.0-P1.7通用I/0口P221-28P2.0-P2.7通用I/0口A8-A15地址总线(高位)P310P3.0通用I/0口RXD串行通信发送口11P3.1TXD串行通信接收口12P3.2INT0外部中断013P3.3INT1外部中断114P3.4T0计数器0输入端口15P3.5T1计数器1输入端口16P3.6WR外部存储器写功能17P3.7RD外部存储器读功能P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时

20、,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存

21、储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下所示: 口管脚 备选功能P3.0 RXD(串行输入通道)P3.1 TXD(串行输出通道)P3.

22、2 /INT0(外中断0)P3.3 /INT1(外中断1)P3.4 T0(定时器0外部输入)P3.5 T1(定时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)5(3)AT89S52的晶振及其连接方法 CPU工作时都必须有一个时钟脉冲。有两种方式可以向89S52提供时钟脉冲:一是外部时钟方式,即使用外部电路向89S52提供时钟脉冲,见图3-3(a);二是内部时钟方式,即使用晶振由89S52内部电路产生时钟脉冲。一般常用第二种方法,其电路见图3-3(b)。89S52XTAL2XTAL189S52XTAL2XTAL1悬空外部时钟信号C1C2J(a)外部

23、时钟方式(b)内部时钟方式图3-3 89S52的时钟脉冲J一般为石英晶体,其频率由系统需要和器件决定,在频率稳定度要求不高时也可以使用陶瓷滤波器。一般来说,使用石英晶体时,C1=C2=30pF。使用陶瓷滤波器时,C1=C2=47pF。(4)AT89S52的复位 复位是单片机的初始化操作,其主要的作用是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作失误使系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。除使PC归零外,复位操作还对其他一些专用寄存器有影响,它们的复位状态如表所示:表3-2 复位后的内部寄存器状态寄存器

24、复位状态寄存器复位状态PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0-P30FFHSCON00HIP(xxx00000)SBUF(xxxxxxxx)IE(0xx00000)PCON(0xxx0000)另外,复位操作还对单片机的个别引脚有影响,例如会把ALE和/PSEN变成无效状态,即使ALE=0,/PSEN=1。RST变成低电平后,退出复位状态,CPU从初始状态开始工作。689S52复位操作有3种方式:上电复位、上电按钮复位和系统复位。上电复位电路如图3-4所示。对于CMOS型单片机因R

25、ST引脚的内部有一个拉低电阻,故电阻R可不接。单片机在上电瞬间,RC电路充电,RST引脚端出现正脉冲,只要RST端保持两个机器周期以上的高电平,就能使单片机有效地复位。当晶体振荡频率为12MHz时,RC的典型值为C=10uF,R=8.2K欧姆。简单复位电路中,干扰信号易串入复位端,可能会引起内部某些寄存器错误复位,这时可在RST引脚上接一去耦电容。通常因为系统运行等的需要,常常需要人工按钮复位,复位电路如图3-5所示,其中R2R1,只需将一个常开按钮开关并联于上电复位电路,按下开关一定时间就能使RST引脚端为高电平,从而使单片机复位。7RST89S52RST89S52+5VCR+5VR1R2C

26、图3-4 上电复位电路 图3-5 上电按钮复位电路3.2.2 资源分配P1口的P1.0-P1.3分别与四个按键连接,分别控制锯齿波、三角波、正弦波和方波,P1.4-P1.7与四个发光二极管相连,按键一对应发光二极管一,依次类推,发光二极管四对应按键四,实现输出一个波形对应亮一个灯。其中晶振采用12MHZ。P0口与DAC0832的DI0-DI7数据输入端相连。P2口用来控制DAC0832的输入寄存器选择信号/CS和数据传送信号/XFER。3.3 各部分电路原理3.3.1 键盘电路原理在单片机应用系统中为了控制系统的工作状态,以及向系统输入数据,应用系统应设有按键或键盘,实现简单的人机会话。键盘是

27、一组按键的组合,键通常是一种常开型按钮开关,平时键的两个出点处于断开状态,按下键时他们才闭合。从键盘的结构来分类,键盘可以分为独立式和矩阵式两类,每一类按其识别方法又都可以分为编码和未编码键盘两种。键盘上闭合键的识别由专门的硬件译码器实现并产生编号或键值的称为编码键盘,由软件识别的称未编码键盘。在由单片机组成的测控系统及智能化仪器中,用得较多的是未编码键盘,我这里也使用未编码键盘。未编码键盘又分为独立式键盘跟矩阵式键盘。(1)独立式未编码键盘结构的工作原理及接口 在单片机应用系统中常常需要用简单的几个键完成数据、命令的输入,此时可采用独立式键盘的结构。其接口如图3-6所示。此接口电路的工作原理

28、很简单,无键按下时,各输入线为高电平;有键按下时,相应的输入线为低电平,CPU查询此输入口的状态就可知是哪个键闭合。采用一键一线的方法,当按键的数目增加时,将增加输入口的数量,为了减少占用输入线数,可采用矩阵式结构的键盘。+5V图3-6 独立式未编码键盘(2)矩阵式未编码键盘结构的工作原理 如图3-7所示是4*4的键盘接口,它是矩阵式的结构。图中键盘的行线(X0X3)与列线(Y0Y3)的交叉处通过一个按键来联通,行线通过电阻接+5V,当键盘上没有键闭合时所有的行线和列线都断开,则行线都呈高电平。当键盘上某一个键闭合时,则该键所对应的行线和列线被短路。例如:6号键被按下闭合时,行线X1和列线Y2

29、被短路,此时X1的电平由Y2的电位所决定。如果把行线接到单片机的输入口,列线接到单片机的输出口,则在单片机的控制下,先使列线Y0为低电平,其余三根列线Y1、Y2、Y3都为高电平,读行线状态。如果X0、X1、X2、X3、都为高电平,则Y0这一列上没有键合。如果读出的行线状态不全为高电平,则为低电平的行线和Y0相交的键处于闭合状态。如果Y0这一列上没有键合,接着使列线Y1为低电平,其余列线为高电平,用同样方法检查Y1这一列上有无键闭合。依此类推,最后使列线Y3为低电平,其余的列线为高电平,检查Y3这一列上是否有键闭合。这种逐行逐列地检查键盘状态的过程称为对键盘的一次扫描。CPU对键盘扫描可以采取程

30、序控制的随机方式,CPU空闲时扫描键盘;也可以采取定时控制方式,每隔一定时间,CPU对键盘扫描一次,CPU可随时响应键盘输入请求;还可以采用中断方式,当键盘上有键闭合时,向CPU请求中断,CPU响应键盘输入中断,对键盘扫描,以识别哪一个键处于闭合状态,并对键输入信息作出相应处理。CPU对键盘上闭合键的键号确定,可以根据行线和列线的状态计算求得,也可以根据行线和列线状态查表求得。8X3X2X1X0Y0Y1Y2Y3 12840 139 5 1 14 10 6 2 15 11 7 3+5V图3-7 4*4矩阵式未编码键盘结构图根据设计的电路特点,只需要用到4个按钮来选择波形,实现的功能也比较简单,所

31、以采用独立式未编码键盘结构。键盘原理图如图3-8所示。图3-8 键盘原理图3.3.2 LED显示电路原理在这里使用的是发光二极管,发光二极管通常用砷化镓、磷化镓等所制成的。当这种管子通以电流时将发出光来,这是由于电子与空穴直接复合而放出的能量的结果。当PN结处加以一个适当的正电压时,此管即导通,也就会发光。这样我们就能知道我们所需要了解的信息,在此设计中发光二极管通过软件的控制显示波形种类。LED电路图如图3-9所示。9图3-9 LED电路图4个LED的阴极分别接P1.4P1.7,当P1口高4位任意一个为低电平时,其对应的LED就会导通,从而发光,通过程序的控制可以设计波形类型的显示。3.3.

32、3 DAC0832芯片原理管脚功能介绍如图3-10所示: 图3-10 DAC0832管脚图DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。DAC0832的主要特性参数如下:分辨率为8位;电流稳定时间1us;可单缓冲、双缓冲或直接数字输入;只需在满量程下调整其线性度;单一电源供电(+5V+15V);低功耗,仅需要200mW。DI7DI0:8位的数据输入端,DI7为最高位。ILE:数据锁存允许控制信号输入线

33、,高电平有效。/CS:选片信号输入线(选通数据锁存器),低电平有效。/WR1:数据锁存器写选选通输入线,负脉冲有效,由ILE、/CS、/WR1的逻辑组合产生/LE1,当/LE1为高电平时,数据锁存器状态随输入数据线变化,/LE1的负跳变时将输入数据锁存。/XFER:数据传输控制信号输入线,低电平有效,负脉冲有效。/WR2:DAC寄存器选通输入线,负脉冲有效,由/WR2、/XFER的逻辑组合产生/LE2,当/LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,/LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。Iout1:模拟电流输出端1,当DAC寄存器中数据全为1时,输

34、出电流最大,当 DAC寄存器中数据全为0时,输出电流为0。Iout2:模拟电流输出端2,Iout1与Iout2的和为一个常数,即Iout1Iout2常数。RFB:反馈电阻引出端,DAC0832内部已经有反馈电阻,所以 RFB端可以直接接到外部运算放大器的输出端,这样相当于将一个反馈电阻接在运算放大器的输出端和输入端之间。VREF:参考电压输入端,此端可接一个正电压,也可接一个负电压,它决定0至255的数字量转化出来的模拟量电压值的幅度,VREF范围为(+10-10)V。VREF端与D/A内部T形电阻网络相连。Vcc:芯片供电电压,范围为(+5+15)V。AGND:模拟量地,即模拟电路接地端。D

35、GND:数字量地。DAC0832主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制电路四部分组成。8 位输入寄存器用于存放主机送来的数字量,使输入数字量得到缓冲和锁存,由加以控制;8位DAC寄存器用于存放待转换的数字量,由加以控制;8位D/A转换器输出与数字量成正比的模拟电流;由与门、非与门组成的输入控制电路来控制2个寄存器的选通或锁存状态10。原理框图如图3-11所示:图3-11 DAC0832原理框图当/WR2和/XFER同时有效时,8位DAC寄存器端为高电平“1”,此时DAC寄存器的输出端Q跟随输入端D也就是输入寄存器Q端的电平变化;反之,当端为低电平“0”时,第一级8

36、位输入寄存器Q端的状态则锁存到第二级8位DAC寄存器中,以便第三级8位DAC转换器进行D/A转换。一般情况下为了简化接口电路,可以把/WR2和/XFER直接接地,使第二级8位DAC寄存器的输入端到输出端直通,只有第一级8位输入寄存器置成可选通、可锁存的单缓冲输入方式。 特殊情况下可采用双缓冲输入方式,即把两个寄存器都分别接成受控方式。11制作低频信号发生器有许多方案:主要有单缓冲方式,双缓冲方式和直通方式。单缓冲方式具有适用于只有一路模拟信号输出或几路模拟信号非同步输出的情形,电路线路连接比较简单。而双缓冲方式适用于在需要同时输出几路模拟信号的场合,每一路模拟量输出需一片DAC0832芯片,构

37、成多个DAC0832同步输出电路,程序简单化,但是电路线路连接比较复杂。根据以上分析,本设计选择了单缓冲方式,此种方式使用方便,程序简单,易操作。12这里采用DAC0832与单片机89S52的典型的单缓冲方式接口电路。ILE接高电平,/WR1和/WR2相连后接89S52的/WR,/CS和/XFER相连后接89S52的地址高位,这样就同时片选了DAC0832的数据锁存器和DAC寄存器,89S52对DAC0832执行一次写操作就把一个数据写入数据锁存器的同时也直接写入到了DAC寄存器,模拟量输出随之变化。DAC0832与反相比例放大器相连,实现电流到电压的转换,因此输出模拟信号的极性与参考电压的极

38、性相反,数字量与模拟量的转换关系为Vout1=-Vref(数字码/256) DAC0832内部的8位D/A转换电路由8位T型电阻网络和电子开关组成,电子开关受8位DAC寄存器输出的数字量控制,T型电阻网络能输出和数字量成正比的模拟电流。因此,DAC0832通常需要外接运算放大器,进行电流电压转换,才能得到模拟输出电压。运算放大器A2的作用是把运算放大器A1的单向输出电压转换成双向输出电压。其原理是将A2的输入端通过电阻R5与参考电压VREF相连,VREF经R5向A2提供一个偏流I1,其电流方向与I2相反,因此运算放大器A2的输入电流为I1、I2的代数和。即DAC0832的输出是电流,使用运算放

39、大器可以将其电流输出线性地转换成电压输出。根据运算放大器和DAC0832的连接方法,运算放大器的输出可以分为单极性和双极性两种。13这里采用双极性的输出方式,如图3-12所示:图3-12 DAC0832双极性电压输出电路当输入到DAC0832的数字量最高位为1时,则输出的模拟电压为正;当输入到DAC0832的数字量最高位为0时,则输出的模拟电压为负,从而实现了模拟电压的双极性输出。3.3.4 LM324工作原理LM324管脚排列如下图所示: 图3-13 LM324管脚图 LM324时四运放集成电路 ,它采用14脚双列直插塑料封袋,外形如上图所示。它的内部包含四组形式完全相同的运算放大器,除电源

40、共用外,四组运放相互独立。每一组运算放大器可用图中所示的符号来表示,它有5个引出脚,其中“+”、“-”为两个信号输入端,“V+”、“V-”为正、负电源端,“OUT”为输出端。两个信号输入端中,“-”为反相输入端,表示运放输出端OUT的信号与该输入端的为相反;“+”为同相输入端,表示运放输出端OUT的信号与输入端的相位相同。LM324的引脚排列见图3-13。由于LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中。144 系统软件设计系统软件设计主要由主程序和产生波形的子程序组成,其着重点是产生各种波形的子程序的编程,通过编程来得到各种波形

41、。系统软件根据功能分了以下几个模块编程:主程序模块、锯齿波模块、三角波模块、正弦波模块、方波模块、延时子程序模块等。其中各种波形的频率改变可通过采用插入延时子程序的方法来实现。15显示波形模块是利用DAC0832的8位特点,把波形的数据以8位数据的形式送进CPU中,只要一按键就能显示波形。4.1 主程序流程图如图4-1所示:开始Key1按下了吗?输出锯齿波输出三角波输出正弦波输出方波Key2按下了吗?Key3按下了吗?Key4按下了吗?YYYYNNNN图4-1 主程序流程图本软件设计过程中主要实现利用按键来控制不同波形的输出,当按键1按下时,函数发生器就输出锯齿波;当按键2按下时,函数发生器就

42、输出三角波;当按键3按下时,函数发生器就输出正弦波;当按键4按下时,函数发生器就输出方波。通过按键可以以任意循环方式输出不同波形。164.2 子程序流程图锯齿波流程图如图4-2所示。A=00HA送到0832输出A=A+1开始YNA=FFH?图4-2 锯齿波流程图锯齿波产生将00H送入寄存器A中,DAC0832输出A中的内容,当A中的内容等于FFH返回开始,当A中的内容不为FFH时,A中的内容累加,从而输出波形。锯齿波产生子程序如下:SANTOO: MOV A ,#00H MOV DPTR,#7FFFHLOOP: MOVX DPTR,A INC A ;CJNE A,FFH, LOOP RET三角

43、波流程图如图4-3所示开始A=00HA送到0832输出A=A+1A=A-1A送到0832输出NYYNA=00H?A=00H?图4-3 三角波流程图三角波产生通过A中数值的加一递升,当A中的内容加到为0时, A中的内容减一递减,从而循环产生三角波。三角波产生子程序如下:TRIAN :MOV A ,#00H MOV DPTR,#7FFFHUP: MOVX DPTR,A INC A JNZ UP DOWN: DEC A MOVX DPTR,A JNZ DOWN RET正弦波程序流程图如图4-4所示开始A=00HDPTR1=DPTR1+1A=正弦函数表数据A送到0832输出YNA=129?图4-4 正

44、弦波程序流程图正弦波波形设计通过查表指令得出。其产生子程序如下:SINE: MOV DPTR1,#sinTab MOV DPTR,#7FFFH LOOP: CLR A MOVC A,A+DPTR1 CJNE A,#129,LOOP1 RETLOOP1: MOVX DPTR,A INC DPTR1 LJMP LOOPsinTab: DB 128,132,137,141,146,150,154,159,163,167 DB 171,176,180,184,188,191,195,199,203,206 DB 210,213,216,219,222,225,228,231,233,236 DB 238,240,242,244,246,247,249,250,251,252 DB 253,254,254,255,255,255,255,255,254,254 DB 253,252,251,250,249,247,246,244,242,240 DB 238,236,233,231,228,225,222,219,216,213 DB 210,206,203,198,195,192,188,184,180,176 DB 172,167,163,159,155,150,146,141,137,133 DB 128,124,119,115,111,106,102,97,93,8

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号