基于单片机多功能智能信号发生器
基于单片机多功能智能信号发生器,基于,单片机,多功能,智能,信号发生器
I本科毕业设计题目:新一代多功能智能信号发生器 性质:科 研 专业:电子科学与技术 日期:2005 年 6 月 I摘 要信号发生器是一种能产生模拟电压波形的设备,这些波形能够校验电子电路的设计。信号发生器广泛用于电子电路、自动控制系统和教学实验等领域。本次设计所设计的智能信号发生器,是基于 ATMEL 生产的AT89C51 内核的信号发生器,它的特点之处如下:1.可产生正弦波、方波,锯齿波及三角波。2.各种信号的频率范围为 10HZ-24MHZ,本信号发生器既可实现产生低频信号,也可实现产生高频信号,产生的信号为特定频率信号。3.硬件主要由单片机和数模转换器 DAC0832 构成,电路简单,结构紧凑 ,硬件成本较低。4.波形及其参数可由软件设定,程序采用 c51 语言编译,使编译比较简单。本论文首先对信号发生器进行了概述,然后介绍了单片机的硬件和软件知识。 硬件包括单片机 AT89C51、复位电路 、时钟电路 、键盘电路、 DAC0832 、运放 4558;软件包括各波形的产生及对硬件的控制程序。关键词信号发生器 AT89C51 DAC0832 单片机 原理图 源程序 IIAbstractA signal generator is an instrument for generating analog voltage waveforms and these waveforms can be used to verify the design of electronic circuits,signal generation is widely used in the automatic control and instructional experiment.The paper proposes a design and implementation of a signal generator that use AT89C51 as its major module, which produced by ATMlE Company. There are some special features as follows. (1) The signal generator can generate sine waveforms , saw waveforms, rectangle waveforms and triangle waveforms. (2) It can generate both low and high frequency signals that from 10HZ to 24MHZ. (3) Its hardware includes AT89C51 and D/A chip DAC0832.The circuit is simple and the hardware is low cost. (4) We use the software to adjust the data of the waveforms. We use the 51 languages to compile the program, so it becomes easy to compile it.This paper shows some instruction first. And then tell us some knowledge about the microprocessor and the software. The generator hardware includes microprocessor AT89C51, reset circuits, clock circuits, keyboard circuits and DA0832; 4558.The software includes the programs for generating waveforms and controlling hard wares.Keywords: signal generator, AT89C51, D/Achip,DA0832,microcontroller, schematic, source programi目 录摘 要 .IAbstract.II第 1 章 绪论 .11.1 智能信号发生器的背景 .11.1.1 对信号发生器的认识 .11.1.2 本次设计的信号发生器的简介 .11.2 智能信号发生器的单片机背景 .21.3 信号发生器的数模转换背景 .21.3.1 数模转换器的功能 .21.3 DA 转换部分 .41.3.1 DA 转换器概述 .41.3. 2 主要技术指标 .5第 2 章 智能信号发生器的硬件设计 .62.1 信号发生器的总体硬件结构及原理 .62.2 存储器的结构 .72.3 并行 I/O 口 .92.4 时钟电路 .102.5 复位操作 .102.6 复位电路 .112.7 键盘输入电路 .122.7.1 键盘输入应解决的问题 .122.7.2 键盘的编码 .152.8 D/A 转换电路 .162.8.1 DA 转换器的工作原理 .162.8.2 AT89C51 与 8 位 DAC0832 的接口 .17第 3 章 智能信号发生器的软件设计 .20ii3.1 软件总程序流程介绍 .203.2 系统软件设计 .213.2.1 主程序 .213.2.2 键盘输入程序 .213.3 频率的控制 .233.4 三角波程序原理 .243.5 矩形波程序原理 .243.6 正弦波程序 .24结 论 .27参考文献 .28程序框图 .29protel 总体原理图 .30源程序 .31致谢 .41毕业设计(论文)成绩评定表 .421第 1 章 绪论1.1 智能信号发生器的背景1.1.1 对信号发生器的认识信号发生器是一种能产生标准信号的电子仪器,是工业生产和电工、电子实验中经常使用的电子仪器之一。信号发生器种类较多,性能各有差别,但它们都可以产生不同频率的正弦波、调幅波调频波信号,以及各种频率的方波、三角波、锯齿波和正负脉冲波信号等。利用信号发生器输出的信号,可以对元器件的性能及参数进行测量,还可以对电工和电子产品整进行指数验证、参数调整及性能鉴定。在多数电路传递网络中、电容与电感组合电路, 、电容与电阻组合电路及信号调制器的频率、相位的检测中都可以得到广泛的应用。信号发生器按其频率的高低,可分为:超低频信号发生器,低频信号发生器,高频信号发生器,超高频信号发生器,微波信号发生器;按产生波形的不同,可分为:正弦波信号发生器,脉冲波函数波信号发生器,任意波信号发生器; 按调制方式的不同,可分为:调频信号发生器(FM) 、调幅信号发生器(AM) ,调相信号发生器(PM) ,脉冲调制信号发生器;此外,还可以产生两种或多种波形信号发生器。单片机智能信号发生器目前可直接数字合成(DDS) ,能够产生任意波形的信号,精度高,可程控,便于与其他设备接口构成各种系统。还有基于 USB2.0 的虚拟波形信号发生器,也可产生任意波形。本次设计设计的是一个可产生正弦波、方波、锯齿波及三角波的智能信号发生器。智能信号发生器可广泛应用于电子信息、机械、交通、地质、航天航空等专业,在教学、科研、生产、工程等诸多领域应用非常广泛1.1.2 本次设计的信号发生器的简介本次设计以单片机为核心,配以一定的外围电路和软件,实现智能波的产生和输出,从总体上来看设计任务可以分为硬件设计和软件设计,这2两者互相结合,不可分离。从时间上来看,硬件设计的绝大部分工作量在最初阶段,到后期往往还要作一些修改。软件设计任务贯穿始终,到中后期基本上都是软件设计任务。硬件设计部分包括 1. 单片机的存储器扩展和接口扩展设计。2. 单片机外部模块设计,包括键盘模块、D/A 转换模块、信号放大模块和滤波模块设计。软件部分设计 单片机主程序包括初始化和键入值的判定,其他都是软件子程序如 D/A 转换、智能波的产生函数及输出函数 。1.2 智能信号发生器的单片机背景单片机自 20 世纪 70 年代问世以来以极其高的性能价格比受到人们的重视和关注,所以应用很广,发展很快。单片机的优点是体积小,重量轻,抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。广大工程技术人员通过学习有关单片机的知识后,也能依靠自己的力量来开发所希望的单片机系统,并可获得较高的经济效益。正因为如此,在我国,单片机已被广泛地应用在工业自动化控制、自动检测、智能仪器仪表、家用电器等各个方面。什么是单片机?单片机就是在一块硅片上集成了微处理器(CPU),存储器(RAM,ROM,EPROM)和各种输入、输出接口(定时器计数器,并行I/O 口,串行口,AD 转换器以及脉冲调制器 PWM 等),这样一块芯片具有一台计算机的属性,因而被称为单片微型计算机,简称单片机。1.3 信号发生器的数模转换背景1.3.1 数模转换器的功能数模转换器是一种将输入的数字信号转换成模拟信号输出的电路或器件,它被广泛地应用在信号采集和处理、数字通信、自动检测、自动控制和多媒体技术等领域。无论在工业生产还是在科学研究中,常常要对某些系统参数进行采集、加工和控制,它们往往是非电的模拟量,例如声、光、磁、热和机械参数等。为了用电子技术处理这些停息先要通过传感器把这些非电信号变换为相应的电信号。 3随着数字技术的迅速发展和成熟,尤其是微处理器的迅速发展和广泛应用,使数字信号的大量存储、快速正确地处理和控制成为很容易的事,因而用数字技术处理模拟信号已越来越受到而视。方法是先把模拟电信号变换为数字信号(模数转换),再利用数字技术对数字技术加工处理,处理结果根据需要再变换为模拟电信号(数模转换),以适应后面显示或执行机构的要求,实现对模拟信的显示或控制。例如工业生产中常常需要对系统的温度参数进行控制,当采用数字系统实现其功能时,先用热电偶或其他温度传感器把系统温度转换成电压,经放大和滤波等预处理,用模数转换器把它变换成对应的数字量,再送入数字系统处理,根据系统情况和控制要求产生的处理结果用数模转换器变换为模拟电压用来而控制加热系统的功率、实现对系统温度参数的控制。综上所述,数模转换器具有和模数转换器相对应的基本功能。模数转换器使数字系统能从模拟电子系统中获取与模拟信号有单值函数关系的数字信息,而数模转换器则可以把数字系统处理的结果变为对应的模拟信号,回送给模拟系统,以实观对模拟系统工作状态的检测和控制。因此,数模转换器是数字电子系统和模拟电子系统之间的常用接口电路。数模转换器的发展经历了电子管、晶体管到集成电路的过程 。 40年代后期,人们开始了数字通信的研究和实践,例如研究脉冲编码调制式通信。它要求发送部分能将所要传送的声音、图像等连续变化的模拟量转换成数字形式发送出去,而信号接收部分要求能把接收到的数字信号还原成声音、图像。于是研制了由电子管组装而成的模数转换器和数模转换器,使这种可靠和经济的数字通信得以实现。随着晶体管工艺的发展和成熟。到 50 年代后期,转换器中的电子管逐步由晶体管替代,使转换器的体积和重量大大减小。数字计算机的兴起、发展和应用领域的不断扩大,促进了集成电路和转换技术的迅速发展。到 60 年代中期,构成数模转换器的一些主要功能单元电路,如基准电压源、模拟开关、运算放大器等已制成半导体集成电路。同时薄膜集成电路和厚膜集成电路也有很大发展。70 年代初,所有元件那被集成在一个芯片上的单片集成数模转换器研制成功。它标志数模转换器真正达到了工业化大批量生产的阶段。此后,转换器得到迅速发展。性能不断提高。工艺上进一步发展,产生了标准双极型工艺和 CMOS 工艺结合起来的组合技术 CMOS 工艺的集成电路,功耗小、4集成度高,制成的模拟开关有双向特性。在数模转换器的功能方面,不但有一般功能的,还有为一些特定应用领域研制的特殊功能数模转换器,例如用于视频调色显示的视频数模转换器。替代手工调整电位器而设计的数字电位器,专用于把数字化音频信号转换成模拟音频信号的音频数模转换器,脉码调制编码译码系统中用的压扩数模转换器等, DA 转换器有两种输出形式,一种是电压输出形式,即输入的是数字量,而输出为电压。另一种是电流输出形式,即输出为电流。在实际应用中如需要电压模拟量的话,对于电流输出的 DA 转换器,可在其输出端加运算放大器构成的电流电压转换电路,将转换器的电流输.1.3 DA 转换部分在单片机的实时控制和智能仪表等应用系统中,控制或测量对象的有关变量,往往是一些连续变化的模拟量,如温度、压力、流量、速度等物理量。这些模拟量必须转换成数字量后才能输入到单片机中进行处理。单片机处理的结果,也常常需要转换为模拟信号。若输入的是非电信号,还需经过传感器转换成模拟电信号。实现模拟量转换成数字量的器件称为模数转换器(ADC),数字量转换成模拟量的器件称为数模转换器(DAC)。下面从应用和原理的角度对数模转换器(DAC)做重点介绍1.3.1 DA 转换器概述DA(数/模)转换器输入的是数字量,经转换后输出的是模拟量。转换过程是先将各位数码按其权的大小转换为相应的模拟分量,然后再以叠加方法把各模拟分量相加,其和就是 DA 转换的结果。对于 DA 转换器的使用要注意区分输出形式和转换器内部是否带有锁存器。(1)电压与电流输出形式(2)DA 转换器内部是否带有锁存器由于实现模拟量转换是需要一定时间的,在这段时间内 DA 转换器输入端的数字量应保持稳定,为此应当在数模转换器数字量输入端的前面设置锁存器,以提供数据锁存功能。根据转换器芯片内是否带有锁存器,可以把 DA 转换器分为内部无锁存器的和内部有锁存器的两类:内部无锁存器的 DA 转换器5这种 D 从转换器由于不带锁存器而内部结构简单,它们可与 MCS51 的 P1、P2 口直接相接,因为 P1 口和 P2 口的输出有锁存功能、但是当与 P0 口接口时,由于 P0 口的特殊性,需要在转换器芯片的前面增加锁存器。内部带有锁存器的 DA 转换器 这种 DA 转换器的芯片内部不但有锁存器,而且还包括地址译码电路或多重的数据缓冲电路,可与 MCS51 的 PD 口直接相接。1.3. 2 主要技术指标DA 转换器的指标很多,使用者最关心的几个指标如下。(1)分辨串DA 转换器的分辨率指输入的单位数字量变化引起的模拟量输出的变化,是对输入量变化敏感程度的描述。通常定义为满到度值与 2n 之比(n 为 DA 转换器的二进制位数)。显然,二进制位数越多,分辨率越高,即 D 从转换器对输入量变化的敏感程度越高。例如,若满量程为 10v,根据分辨串定义则分辨率为 10v2de n ci fang 。 。设 B 位DA 转换,即 M:8,分辨率为 10v2 de n ci fang 391mv,即二进制数最低位的变化可引起输出的模拟电压变化391mv,该位占满量程的 o391,常用符号 1LSB 表示。同理;10 位 DA 转换 1LSB977mV;01满员程12 位 DA 转换 1LSB244mv:ooN满量程14 位 DA 转换 1LSB=O61mV=0006满量程16 位 DA 转换 1LSB =0076mvO00076满量程使用时,应根据对 DA 转换器分辨率的需要来选定 DA 转换器的位数 o(2)建立时间建立时间是描述 DA 转换速度快慢的一个参数,用于表明转换速度。其值为从输入数字量到输出达到终位误差 (12)LSB(最低有效位)时所6需的时间。输出形式为电流的转换器建立时间较短,而输出形式为电压的转换器,由于要加上运算放大器的延迟时间,因此建立时间要长一些。快速的 DA 转换器的建立时间可达 1 微米下。(3)转换精度理想情况下,精度与分辨率基本一致,位数越多精度越高。但由于电源电压、参考电压、电阻等各种因家存在着误差。严格讲精度与分辨率并不完全一致。只要位数相同,分辨率则相同,但相同位数的不同转换器精度会有所不同。例如,某种型号的 8 位 DAC 精度为 O19,而另一种型号的 8 位 DAC 精度为 0.05。第 2 章 智能信号发生器的硬件设计2.1 信号发生器的总体硬件结构及原理 0000 00000123485679A1M1001K*10+5VCSXFER17C1c212345678910121341561781920 212232425267282930313940837234356P0.P0.7RSTP3.0P3.1P3.2P3.P3.43.56P3.7XTAL2XTAL1GND P2.0P2.1P2.3P2.4P2.5P2.6P2.7P2.8PSENALEP0.7P0.Vc 161541WR1WR221815K 15KDGNDAGNDIOUT1IOUT2RfbVref458 458DAC0832AT89C51VcILE 7.5KP1.0P1.7 OUTC37.5K341129819201345677信号发生器的硬件结构主要由 AT89C51、复位电路、时钟电路、数模转换电路 DAC0832 及运算放大器 4558 六部分构成。其中单片机AT89C51 的程序存储器 存放软件程序,程序包括正弦波三角波锯齿波矩形波的产生程序及对波形的频率输入程序,还有对键盘和 DAC0832 的控制程序。打开信号发生器后,单片机程序请求用户从键盘上输入波形所对应的键号值及波形所对应的频率值。像 1 号键对应正弦波输出、2 号对应三角波输出,3 号对应矩尺波输出、 4 号对应矩形波输出。例如若想得到1KHZ 的正弦波 ,则需按下 1 号键,等待程序要求输入正弦波的频率,再按下 1K 键。这些波形参数通过键盘由单片机的 P1 口进入,被存放在AT89C51 的数据存储器内,单片机调用波形程序后,由 P0 口输出波形进入数模转换器的 P1 口,数模转换器将信号波由数字形式转换为模拟的形式,由数摸转换器输出的波是电流型的,而用来显示波形的示波器是电压型的仪器,所以在数模转换器以后需要添加运算放大器将电流型的信号转换成电压型的信号,同时放大信号,以便于在示波器中观察。2.2 存储器的结构MCS-51 单片机存储器采用的是哈佛(Har-vard) 结构,即程序存储器空间和数据存储器空间截然分开,程序存储器和数据存储器各有自己的寻址方式,寻址空间和控制系统。这种结构对于单片机“面向控制”的实际应用极为方便和有利。在89C51/8751 单片机中,不仅在片内集成了一定容量的程序存储器和数据存8储器及众多的特殊功能寄存器,而且还具有极强的外存储器的扩展能力,寻址能力分别可达 64KB,寻址和操作简单方便。 MCS-51 的存储器空间可划分为如下几类:1. 程序存储器单片机系统之所以能够按照一定的次序进行工作,主要是程序存储器中存放了经调试正确的应用程序和表格之类的固定常数。程序实际上是一串二进制码,程序存储器可以分为片内和片外两部分。8031 由于无内部存储器,所以只能外扩程序存储器来存放程序。MCS-51 单片机复位后,程序存储器 PC 的内容为 0000H,故系统必须从 0000H 单元开始取指令,执行程序。程序存储器中的 0000H 地址是系统程序的启动地址。一般在该单元存放一条绝对跳转指令,跳向用户设计的主程序的起始地址。64K 程序存储器中有 5 个单元具有特殊用途。5 个特殊单元分别对应于 5 种中断源的中断服务程序的入口地址。通常在这些中断入口地址处都放一条绝对跳转指令。加跳转指令的目的是由于两个中断入口间隔仅有 8个单元,存放中断服务程序往往是不够用的。在 MCS-51 单片机的指令系统中,同外部程序存储器打交道的指令仅有两条:(1) MOVC A A+DPTR(2) MOVC A A+PC2. 内部数据存储器MCS-51 单片机内部有 128 个字节的随机存取存储器 RAM,作为用户的数据寄存器,它能满足大多数控制型应用场合的需要,用作处理问题的数据缓冲器。MCS-51 单片机的片内存储器的字节地址为 00H-7FH。MCS-51 单片机对其内部 RAM 的存储器有很丰富的操作指令,从而使得用户在设计程序时非常方便。地址为 00H-1FH 的 32 个单元是 4 组通用工作寄存器区,每个区含八个 8 位寄存器,编号为 R7-R0。用户可以通过指令改变 PSW中的 RS1、RS0 这二位来切换当前的工作寄存器区,这种功能给软件设计带来极大的方便,特别是在中断嵌套时,为实现工作寄存器现场内容保护提供了极大的方便。地址为 20H-2FH 的 16 个单元可进行共 128 位的位寻址,这些单元构9成了 1 位处理机的存储空间。单元中的每一位都有自己的位地址,这 16个单元也可以进行字节寻址。地址为 30H-7FH 的单元为用户 RAM 区,只能进行字节寻址。3. 特殊功能寄存器(SFR-Special Function Register)特殊功能寄存器反映了 MCS-51 单片机的状态,实际上是 MCS-51 单片机各功能部件的状态及控制寄存器。SFR 综合的,实际的反应了整个单片机基本系统内部的工作状态及工作方式。SFR 实质上是一些具有特殊功能的片内 RAM 单元,字节地址范围为 80H-FFH.特殊功能寄存器的总数为21 个,离散的分布在该区域中,其中有些 SFR 还可以进行位寻址。128 个字节的 SFR 块中仅有 21 个字节是由定义的。对于尚未定义的字节地址单元,用户不能作寄存器使用,若访问没有定义的单元,则将得到一个不确定的随机数。4. 位寻址空间MCS-51 单片机的一个很大优点在于它具有一个功能很强的位处理器。在 MCS-51 单片机的指令系统中,有一个位处理指令的子集,使用这些指令,所处理的数据仅为一位二进制数(0 或 1)。在 MCS-51 单片机内共有211 个可寻址位,它们存在于内部 RAM(共有 128 个)和特殊功能寄存器区(共有 83 个) 中。 当 MCS-51 单片机的片内 RAM 不够用时,可在片外扩充数据存储器。MCS-51 单片机给用户提供了可寻址 64K 字节的外扩RAM 的能力,至于扩多少 RAM,则根据用户实际需要来定。2.3 并行 I/O 口MCS-51 单片机共有 4 个双向的 8 位并行 I/O 端口(Port) ,分别记作P0-P3,共有 32 根口线,各口的每一位均由锁存器、输出驱动器和输入缓冲器所组成。实际上 P0-P3 已被归入特殊功能寄存器之列。这四个口除了按字节寻址以外,还可以按位寻址。由于它们在结构上有一些差异,故各口的性质和功能有一些差异。P0 口是双向 8 位三态 I/O 口,此口为地址总线(低 8 位)及数据总线分时复用口,可驱动 8 个 LS 型 TTL 负载。P1 口是 8 位准双向 I/O 口,可驱动 4 个 LS 型负载。P2 口是 8 位准双向 I/O 口,与地址总线(高 8 位)复用,可驱动 4 个 LS 型 TTL 负载。P3 口是 8 位准双向 I/O 口,是双功能复用口,可驱动 4 个 LS 型 TTL 负载。P1 口、P2 口、P3 口各 I/O 口线片10内均有固定的上拉电阻,当这 3 个准双向 I/O 口作输入口使用时,要向该口先写“1” ,另外准双向 I/O 口无高阻的“浮空”状态,故称为双向三态I/O 口。P0-P3 口都是并行 I/O 口,都可用于数据的输入和输出,但 P0 口和P2 口出了可进行数据的输入/输出外,通常用来构建系统的数据总线和地址总线,所以在电路中有一个多路转换开关 MUX,以便进行两种用途的转换。而 P1 口和 P3 口没有构建系统的数据总线和地址总线的功能。因此,在电路中没有多路转接开关 MUX。由于 P0 口可作为地址/数据复用线试用,需传送系统的低 8 位地址和 8 位数据,因此,MUX 的一个输入端为“地址/数据”信号。而 P2 口仅作为高位地址线试用,不涉及数据,所以MUX 的一个输入信号为“地址” 。在 4 个口中只有 P0 口是一个真正的双向口, P1-P3 这三个口都是准双向口。原因是在应用系统中,P0 口作为系统的数据总线使用时,为保证数据的正确传送,需要解决芯片内外的隔离问题,即只有在数据传送时芯片内外才接通;不进行数据传递时,芯片内外处于隔离状态。为此,要求 P0口的输出缓冲器是一个三态门。在 P0 口中输出三态门是由两只场效应管(FET)组成,所以说它是一个真正的双向口。而其他的三个口中,上拉电阻代替 P0 口中的场效应管,输出缓冲器不是三态的,因此不是真正的双向口,只能称其为准双向口。P3 口的口线具有第二功能,为系统提供一些控制信号,因此在 P3 口电路增加了第二功能控制逻辑。这是 P3 口与其他各口的不同之处。2.4 时钟电路时钟是单片机的心脏单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地运作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式,一种是内部时钟方式,另一种为外部时钟方式。 1内部时钟方式MCS51 单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大11器的输入端为芯片引脚 XTAL1,输出端为引脚 XTAL22。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器,图 214 是MCS51 单片机内部时钟方式的振荡器电路。2外部时钟方式外部时钟方式是使用外部振荡脉冲信号,常用于多片 MCS51 单片机同时工作,以便于同步。对外部脉冲信号只要求高电平的持续时间大于20 微秒,一般为低于 12MHz 的方波。外部的时钟源直接接到 XTAL2 端,直接输入到片内的时钟发生器上。电路见图 215。由于 XTAL2 的逻辑电平不是 TTL 的,故建议外接个 47Kl0K 的上拉电阻。2.5 复位操作复位是单片机的初始化操作,只要给 RESET 引脚加上 2 个机器周期以上的高电平信号就可使 MCS51 单片机复位。复位的主要功能是把 PC 初始化为 0000H,使 MC551 单片机从 0000H 单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作铝误使系统处于死锁状态,为摆脱死锁状态,也需按复位控重新启动。 除 Pc 之外,复位操作还对其它一些寄存器有影响。 另外,在复位有效期间(即高电平) ,MCS 5l 单片机的 ALE 引脚和 PSEN 引脚均为高电平且内部RAM 不受复位的影响。2.6 复位电路 MCS51 的复位是由外部的复位电路来实现的。复位电路通常采用上电自动复位和按钮复位两种方式。 复位电路通常采用上电自动复位和按钮复位两种方式。 最简单的上电自动复位电路如图 2.3.1 所示。上电自动复位是通过外部复位电路的电容充电来实现的。只要 vcc 的上升时间不超过 1ms,就可以实现自动上电复位。当时钟频率选用 6MH2 时,C 取 22 微秒,R 取 lK。 除了上电复位外,有时还需要按键手动复位。按键手动复位有电平方式和脉冲方式两种,其中电平复位是通过 RST 端经电阻与电源 vcc 接通而实现的,按键手动电平复位电路见图 2 20。当时钟频率选用 6MHz 时,C 取 22 降,Rs 取 200,Rk 取 IK。按键脉冲复位则是利用 RC 微分电路产生的正脉冲来实现的,脉冲复位电路见图 221。图中的阻容参数适于 6MHz 时钟。12电路中的电容 C1 和 C2 典型值通常选择为 30PF 左右。对外接电容的值虽然没有严格的要求,但电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率的范围通常是在 1.2MHz12MHZ 之间。晶体的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。但反过来运行速度快对存储器的速度要求就高,对印刷电路板的工艺要求也高,即要求线间的寄生电容要小;晶体和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证振荡器稳定、可靠地工作。为了提高温度稳定性,应采用温度稳定性能好 NPO 高频电容。 MCS51 单片机常选择振荡频率 6MHZ 或 12MHz 的石英晶体。随着集成电路制造工艺技术的发展,单片机的时钟频率也在逐步提高,现在的高速单片机芯片的时钟频率已达 40MHz。2.7 键盘输入电路键盘能实现向单片机输入数据、传送命令等功能。信号发生器用键盘用来置入所需要输出波形的种类和频率,即根据用户的要求 将所需波形和频率用键盘输入,再由单片机判断分析,输出所需结果 .2.7.1 键盘输入应解决的问题1键盘输入的特点键盘实质上是一组按键开关的集合。通常,键盘所用开关为机械弹性开关,均利用了机械触点的合、断作用。一个电压信号通过机械触点的断开、闭合过程,其行线电压输出波形如图所示:2.3.3 上电复位电路电路2.3.4 按键电平复位电路13图中t1和L3分别为键的闭合和断开过程中的抖动期(呈现一串负脉冲),抖动时间长短和开关的机械特性有关,一般为510 ms,t2为稳定的闭合期,其时间内按键动作所确定,一般为十分之几秒到几秒,t0,t4为断开期。2按键的确认键的闭合与否,反映在行线输出电压上就是呈现出高电平或低电平,Ag果高电平表示断开的话,那么低电平则表示键闭合,所以通过对行线电平的高低状态的检测,便可确认按键按下与否。为了确保CPU对一次按键动作只确认一次按键,必须消除抖动的影响。下面将介绍如何来消除抖动。3如何消除按键抖动消除按键抖动通常采用硬件、软件两种的方法c(1)硬件消除按键抖动硬件消除抖动一般采用双稳态消抖电路。双稳态消抖电路原理如图98所示。图中用两个与非门构成一个朋触发器。当按键未按下时(开关位于s点),输出为1,当键按下(开关打向b点)时,输出为0。此时即使因按键的机械性能,使按键因弹性抖动而产生瞬时不闭合(抖动跳开b),只要技键不返回原始状态a, 双稳态电路的状态不改变,输出保持为0,不会产生抖动的波形输出。就是说即使b点的电压波形是抖动的但经双稳态电路之后,其输出为正规的矩形波,这一点很容易通过分析RS触发器的工作过程得到验证。(2)软件消除按键抖动如果按键较多,硬件消抖将无法胜任,因此常采用软件的方法进行消抖。在第一次检测到有键按下时,执行一段延时10ms的子程序后再确认该键电平是否仍保持闭合状态电平,如果保持闭合状态电平则确认为真正有2.5.1 键盘形状及其波形图 2.5.2 双稳态消抖电路 14键按下,从而消除了抖动的影响。键盘接口的工作原理常用的键盘接口分为独立式按键接口和矩阵式键盘接口1独立式按键接口独立式按键就是各按键相互独立,每个按键各接一根输入线,一根输入线上的按键工作状态不会影响其他输入线上的工作状态。因此,通过检测输入线的电平状态可以很容易判断哪个按键被按下了。独立式拉链电路配置灵活,软件简单。但每个按键需占用一根输入口线,在按键数量较多时,需要较多的输人口线且电路结构繁杂,故此种键盘适用于按键较少或操作速度较高的场合。信号发生器的键盘需要输入频率应用独立式键盘不容易实现,下面介绍信号发生器应用的锯阵式键盘。2矩阵式键盘接口矩阵式键盘(也称行列式键盘)适用于按键数量较多的场合,它由行线和列线组成,按键位于行、列的交叉点上。如图 912 所示,一个 3n*3的行、列结构可以构成一个有 9 个按键的键盘。间理一个 4M*4 的行、列结构可以构成一个 16 个按键的键盘等等。很明显,在按键数量较多的场合,矩阵键盘与独立式按键键盘相比,要节省很多的 IO 口线。(2)按键的识别方法扫描法 线反转法扫描法要逐列扫描查询,当被放下的短处于最后一列时,则要经过多次扫描才能最后获得此按键所处的行列值。而线反转法则显得很简练,无论被按键是处于第 1 列或最后一列,均只须经过两步便能获得此按键所15在的行列值,线反转法的原理如图 913 所示。图 1J 用一个 8 位I/O 口构成一个 4x 4 的矩阵键盘,采用查询方式进行工作,下面介绍线反转法的两个具体操作步骤:第一步:将行线编程为输入线,列线编程为输出线,并使输出线输出为全零电平,则行线中电平由高到低的所在行为按键所在行。第二步:同第一步完全相反,将行线编程为输出线,列线编程为输入线,并使输出线输出为全低电乎,则列线中电平由高到低的所在列为按键所在列。结合两步的结果,可确定按键所在行和列,从而识别出所按的银。假设 3 号键被按下,那么第一步即在 Do。凹输出全 0,然后,读入 N四位,结果 D4: 0而 D5贴和 D7 均为 l,因此,第一行出现电平的变化,说明第一行有键按下;第二步让 ND7 输出全 o,然后,读入DoD3 位,结果 Doo,而 D1、D2 和 D3 均为 1,因此第 4 列出现电平的变化,说明第 4 列有键按下。综合一、二两步,即第 1 行第 4 列按键被按下,此按键即是 3 号键。因此线反转法非常简单适用。当然实际编程中要考虑采用软件延时进行消抖处理 o2.7.2 键盘的编码对于独立式按键键盘,由于按键的数目较少,可根据实际需要灵活编码。对于短阵式键盘,按键的位置由行号和列号唯一确定,所以分别对行16号和列号进行二进制编码、然后将两值合成一个字节,高 4 位是行号,低4 位是列号。如 12H 表示第 1 行第 2 列的按键,而 A3H 则表示第 10 行第3 列的按键等等。但是这种编码对于不同行的键,离散性大。例如一个4M*4 的键盘,14H 键与 21H 锭之间间隔很大,因此不利于使用散转指令。所以常常采用依次排列键号的方式对按键进行编码。以 4x 4 键盘为例,键号可以编码为:0lH,02H,03H0EK,0FH, 10H 共 16 个。无论以何种方式编码,均应以处理问题方便为原则,而最基本的是键所处的物理位置即行号和列号,它是各种编码之间相互转换的基础,编码相互转换可通过查表的方法实现。信号发生器所用的编码转换如下:01H 02H 03H 04H 1 2 3 405H 06H 07H 08H - 5 6 7 809H 0AH 0BH 0CH - 9 10 100 1K0DH 0EH 0FH 10H 10000 100000 1M *通过乘号键“*”就可实现 10HZ-24MHZ 的频率输入了。2.8 D/A 转换电路由单片机输出的波形信号是数字的形式的,而用示波器显示的波形需要的是可以观察的模拟的形式,完成由数字向模拟转换的器件就是 D/A 数字模拟转换器。下面介绍它的工作原理。2.8.1 DA 转换器的工作原理数模转换器的基本功能是将输入的数字量 D 转换成与之唯一对应的模拟量 A,用数学式可表示为:A=PD 式中 P 为变换系数。那么,如何实现这种变换?这种变换器的基本结构应该是怎样的?下面分析一个具体例子。图 31 是实现数模转换的一种电路,输入数字信号为 4 位二进制数D(d3d2d1d0) ,其中 d3 为最高位 MSB,d0 为最低位 LSB,其值用十进制表示时为: 二进制的键盘编码 转换后的键盘编码17从数据线上来的数字信号先由锁存器锁存,再制模拟开关。锁存器在控制信号的作用下,从数据线上锁存需要转换的数字信号,而数据线上的其他信号,将不会被锁存而输入到转换器中。分别受输入信号对应位d3,d2,d1 和 d0 状态的控制。当 d31,s3 合向 l 端,形成大小为VR/R*d3 的电流 I3 流向 2 点,对 i0 有贡献。当 d3o 状态,s3 合向 2 端(地),I3 流向地,对 i0 没有贡献。其他位的情况类似。只要电阻网络中各电阻阻值不同,则数宁信号中各位为 1 时,所形成的流向 2 点的电流大小是不同的。对图 31 而吉,可算出i。I3+I2+I0式中,D 表尔输入 二 进制数对应的十进制值,式 (31)表明,电路输山的模拟电流值和输入数字量 D 成比例。电流 i0 流经放大器的反馈电阻形成输出电压 v0,其大小为:18上式表明,输出的模拟电压 v0 正比于输入的数字信号 D,从而实现了从数字量到模拟电压的转换。2.8.2 AT89C51 与 8 位 DAC0832 的接口1DAC832 芯片介绍(1)DAC0832 的特性美国国家半导体公司的 DAC832 芯片是具有两个输人数据寄存器的DAC 它能直接与 MCS51 单片机相连,其主要特性如下:分辨率 8 位;电流输出,稳定时间为 l 微米;可双缓冲、单缓冲或直接数字输入;只需在满量程下调整其线性度;单电源供电(+5+15v),低功耗,20mW。(2)DAC0832 的引脚及逻辑结构DAC0832 的引脚如图 101 所示。DAC0832 的逻辑结构如图 102 所示 c19功能如下:DI0-DI7 为 8 位数字信号输入端,与 CPU 数据总线相连,用于输入CPU 送来的待转换数字量, DI7 为最高位。CS:片选瑞,当 CS 为低电平时,本芯片被选中工作 oILE:数据锁存允许控制端,高电平有效。WR1:第一级输入寄存器写选通控制,低电平有效,当CS 0、ILE=1 、WR1=0 时数据信号被锁存到第一级 8 位输入寄存器中。XFER:数据传送控制,低电平有效。WR2:DAC 寄存器写选通控制端,低电平有效,当 XFER=0、WR1=0,输入寄存器状态传入 8 位 DAC 寄存器中。Iout1:D A 转换器电流输出 l 端,输人数字量全“1”时,Iout1 最大,输入数字量全为零“0”时, Iout1 最小。Iout2:电流输出 2 端,Iout2+Iout1常数。Rfb:外部反馈信号输入端,内部已有反馈电阻,根据需要也可外接反馈电阻。Vcc:电 Vcc 源输入瑞,可在+5+15v 范围内。20Vref:参考电压(也称基准电压 )输入端,电压范围(-10+10)VD:数字信号接地端。AGND:模拟信号接地端,最好与参考电压共地。DAC0832 内部由三部分电路组成,如图 10.2 所示。 “8 位输入寄存器”用于存放 CPU 送来的数字量,使输人数字虽得到缓冲和锁存,由LE1 加以控制。 “8 位 DAC 寄存器”用于存放待转换数字量,由控制。 “8位 D/A 转换电路”由 8 位 T 型电阻网络和电子开关组成,电子开关受“8 位 DAC 寄存器”输出控制,T 型电阻网络能输出和数字量成正比的模拟电流。因此,DAC0832 通常需要外接运算放大器才能得到模拟输出电压。2DAC 的应用按照输入数字量位数,DAC 常可分为 8 位、10 位和 12 位三种。但M65l 与它的接口常和 DAC 的应用有关,因此我们先讨论 DAC 的应用问题,然后介绍它与 MCS51 的接口DAC 用途很广(1) DAC 用作单极性电压输出(2) DAc 用作双极性电压输出(3) DAC 用作程控放大器3MCS51 与 DAC0832 的接口电路MCS51 与 DAC0832 接口时可以有三种连接方式:直通方式、单缓冲方式和双缓冲方式。本次设计应用的是单缓冲方式
收藏
编号:146898
类型:共享资源
大小:236.18KB
格式:RAR
上传时间:2017-10-26
100
积分
- 关 键 词:
-
基于
单片机
多功能
智能
信号发生器
- 资源描述:
-
基于单片机多功能智能信号发生器,基于,单片机,多功能,智能,信号发生器
展开阅读全文
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。