基于单片机的函数发生器论文

更新时间:2023-07-28 12:02:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕业论文

城市学院

本科毕业设计

基于单片机的函数发生器

学生姓名:班 级: 专 业: 指导教师:

2010年5月

毕业论文

摘 要

信号发生器,它是一种用于产生标准信号的电子仪器,随着科学技术的发展,对它的要求越来越高。在工业生产和科研中利用信号发生器输出的信号,可以对元器件的性能及参数进行测量,还可以对电工和电子产品进行指数验证、参数调整及性能鉴定。常用的信号发生器绝大部分是由模拟电路构成的,当这种模拟信号发生器用于低频信号输出往往需要的RC值很大,这样不但参数准确度难以保证,而且体积和功耗都很大,而由数字电路构成的低频信号发生器,虽然其低频性能好但体积较大,价格较贵,因此,高精度,宽调幅,低价格将成为数字量信号发生器的发展趋势。

本设计核心任务是:以89S52为核心,结合DAC0832实现程序控制产生正弦波、三角波、方波和锯齿波四种常用低频信号。可以通过键盘选择波型和输入任意频率值。另外,我采用KEIL,以达到验证作品功能的目的,并且做出一块测试板。

关键词:信号发生器;89S52;KEIL

毕业论文

ABSTRACT

Signal generator, it is a widely used source, with the scientific and technological development, increasing its demands. Industrial production and scientific research in the use of signal generator output signal, the performance of components and parameters measured, but also the electrical and electronic products for authentication, and adjust parameters of identification. The signal generator used by the vast majority of analog circuit components, such as analog signal generator for the low-frequency signals often require output value of the RC great, it will not only difficult to ensure the accuracy of parameters, but also have great size and power consumption, Digital components of low-frequency signal generator, although the low-frequency performance good but larger, more expensive price, therefore, high accuracy, wide-AM, will become a low-cost digital signal generator trend of development. The graduation project core task is to design: 89S52 as the core, unifies DAC0832 to realize the programmed control to have the sine wave, the triangular wave, the square-wave and the saw-tooth wave four kind of commonly used low-frequency signals .Can choose the keyboard-type and frequency of any input, frequency of use of five digital display, two square with the duty cycle of the digital display, with a wave of the digital display. In addition, I used KEIL joint simulation, functional works to achieve the purpose of verification, and make an evaluation board.

Key words: Signal generator; 89S52; KEIL

毕业论文

第一章 绪论 1.1选题背景及意义

信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。在通信、广播、电视系统,在工业、农业、生物医学等领域内,函数信号发生器在实验和设备检测中具有十分广泛的用途。

1.1.1 本课题的研究现状

信号发生器既可以构成独立的信号源,也可以是高性能网络分析仪、频谱仪及其它自动测试设备的组成部分。信号发生器的关键技术是多种高性能仪器的支撑技术,因为它能够提供高质量的精密信号源及扫频源,可使相应系统的检测过程大大简化,降低检测费用并极大地提高检测精度。美国安捷伦生产的33250A型函数/任意波形发生器可以产生稳定、精确和低失真的任意波形,其输出频率范围为1μHz~80MHz,而输出幅度为10mVpp~10Vpp;该公司生产的8648D射频信号发生器的频率覆盖范围更可高达9kHz~4GHz。国产SG1060数字合成信号发生器能双通道同时输出高分辨率、高精度、高可靠性的各种波形,频率覆盖范围为1μHz~60MHz;国产S1000型数字合成扫频信号发生器通过采用新技术、新器件实现高精度、宽频带的扫频源,同时应用DDS和锁相技术,使频率范围从1MHz~1024MHz能精确地分辨到100Hz,它既是一台高精度的扫频源,同时也是一台高精度的标准信号发生器。还有很多其它类型的信号发生器,他们各有各的优点,但是信号发生器总的趋势将向着宽频率覆盖、高频率精度、多功能、多用途、自动化和智能化方向发展。

目前,市场上的信号发生器多种多样,一般按频带分为以下几种: 超高频:频率范围1MHz以上,可达几十兆赫兹。 高频:几百KHZ到几MHZ。

低频:频率范围为几十HZ到几百KHZ。 超低频:频率范围为零点几赫兹到几百赫兹。 超高频信号发生器,产生波形一般用LC振荡电路。

高频、低频和超低频信号发生器,大多使用文氏桥振荡电路,即RC振荡电路,通过改变电容和电阻值,改变频率。

用以上原理设计的信号发生器,其输出波形一般只有两种,即正弦波和脉冲波,

毕业论文

其零点不可调,而且价格也比较贵,一般在几百元左右。在实际应用中,超低频波和高频波一般是不用的,一般用中频,即几十HZ到几十KHZ。用单片机89S52,加上一片DAC0808,就可以做成一个简单的信号发生器,其频率受单片机运行的程序的控制。我们可以把产生各种波形的程序,写在ROM中,装入本机,按用户的选择,运行不同的程序,产生不同的波形。再在DAC0808输出端加上一些电压变换电路,就完成了一个频率、幅值、零点均可调的多功能信号发生器的设计。这样的机器体积小,价格便宜,耗电少,频率适中,便于携带。

1.1.2 选题目的及意义

信号发生器是一种经常使用的设备,由纯粹物理器件构成的传统的设计方法存在许多弊端,如:体积较大、重量较沉、移动不够方便、信号失真较大、波形种类过于单一、波形形状调节过于死板,无法满足用户对精度、便携性、稳定性等的要求,研究设计出一种具有频率稳定、准确、波形质量好、输出频率范围宽、便携性好等特点的波形发生器具有较好的市场前景,以满足军事和民用领域对信号源的要求。

本次设计的主要目标是学习和运用单片机的C语言和汇编语言,通过现有多功能电子学习机部分已有器件,实现利用单片机AT98C52和8位D/A转换芯片DAC0832共同实现正弦波,方波,三角波,锯齿波这四种常见波形的发生,并且可以接收外接键盘输入而在一定范围内改变频率。可以在没有波形发生器的情况下仍能得到一些简单波形来进行实验。本次设计准备在成本交低廉的前提下完成,使用的都是该学习机上器件,主要是用单片机AT89C52, DAC0832,性能指数都不是很高,所以对此信号源的基本要求是能发生几种常见的波形,正弦波,方波,三角波,锯齿波,并且能够在一定的范围内改变频率。通过该课题的设计掌握以AT89S52为核心的单片机系统的软硬件开发过程和基本信号的产生原理、测量及误差分析方法,同时掌握函数发生器系统的设计流程;培养我们综合运用所学的基本知识、基本理论和基本技能的能力,学习解决一般工程技术和有关专业问题的能力,学习工程设计和科学研究的基本方法,完成对所学知识的综合训练。

毕业论文

1.2设计的任务和要求 1.2.1设计的基本要求

(1)原始数据

1.正弦波的频率范围:下限频率为0.1Hz,上限频率暂时不确定,但应尽量提高,并在实验报告中分析影响上限频率的因素和已完成的最大值。 2.输出正弦波中不能含有尖峰干扰。

3.输出正弦波峰峰值最大为5 V、最小幅度自定,直流偏移为±2V。 4.频率输入为数字量,在10 Hz范围内分辨率为0.1 Hz;10~100Hz内为1Hz;100~1000Hz内为10 Hz。

5.扩展输出波形种类,如三角波、方波等,幅度和频率范围自定。 (2)技术要求:

1.波形失真度:±3% 2.六位数码管显示

(3)工作要求:

1.组建基于单片机的函数发生器的总体结构框图;

2.根据设计测量范围和准确度要求,通过理论分析和计算选择电路参数;

3.根据操作功能要求,确定键盘控制功能; 4.按设计要求确定显示位数、指示类型和单位; 5.采用C语言编写应用程序并调试通过; 6.对系统进行测试和结果分析;

7.撰写论文。

1.2.2课题具体的工作内容

本设计采用89S52及其外围扩展系统,软件方面主要是应用C语言设计程序。系统以89S52单片机为核心,配置相应的外设及接口电路,用C语言开发,组成一个多功能信号发生系统。该系统的软件可运行于Windows XP环境下,硬件电路设计具有典型性。同时,本系统中任何一部分电路模块均可移植于实用开发系统的设计中,电路设计具有实用性。

毕业论文

本设计将完成以下几个方面的工作:

(1)选芯片,尽量满足一般工业控制要求、以增强其实用性。 (2)原理图设计在保证正确的前提下,尽量采用典型的电路设计。 (3)印制板设计既要精巧,又要便于摆放及测试。

(4)固化于单片机芯片中的软件采用模块设计,层次清楚,具有上电复位

及初始化功能,具有很好的软件开发框架。 (5)掌握单片机仿真软件keil3的使用。

1.2.2本文的主要工作

函数信号发生器是一种能能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。现在我们通过对函数信号发生器的原理以及构成设计一个能变换出三角波、正弦波、方波的简易发生器。我们通过对电路的分析,参数的确定选择出一种最适合本课题的方案。在达到课题要求的前提下保证最经济、最方便、最优化的设计策略。按照设计的方案选择具体的原件,焊接出具体的实物图,并在实验室对焊接好的实物图进行调试,观察效果并与课题要求的性能指标作对比。最后分析出现误差的原因以及影响因素,因此本文将介绍波形发生器设计的方案选择与软硬件的设计、调试。全文共分为六章,本章介绍本课题的研究现状和选题目的意义等;第二章介绍函数发生器设计的总体方案与论证;第三章介绍函数发生器系统硬件电路的设计;第四章介绍函数发生器系统功能的软件设计(信号产生、D/A转换等的软件设计),并给出了各个子模块的程序流程图;第五章介绍了系统的调试过程和调试结果,并对系统调试过程中出现的问题进行了分析,给出了相应的解决方案。第六章设计总结和展望。

毕业论文

第2章 系统总体设计

2.1主要功能系统的性能指标

主要功能是实现利用单片机AT89C52和8位D/A转换芯片DAC0832共同实现正弦波,方波,三角波,锯齿波这四种常见波形的发生,并且可以接收外接键盘输入而在一定范围内改变频率。可以在没有波形发生器的情况下仍然可以的到简单的正弦波,方波,三角波,锯齿波这四种常用的波,并且可以通过zlg7289及键盘显示模块,键盘可以实现对几种波形的切换,改变频率,幅度,LED显示波的幅度及频率。

主要性能指标正弦波的频率范围:下限频率为0.1Hz,上限频率暂时不确定,但应尽量提高,并在实验报告中分析影响上限频率的因素和已完成的最大值;输出正弦波中不能含有尖峰干扰;输出正弦波峰峰值最大为5 V、最小幅度自定,直流偏移为±2V。频率输入为数字量,在10 Hz范围内分辨率为0.1 Hz;10~100Hz内为1Hz;100~1000Hz内为10 Hz。波形失真度:±3%,六位数码管显示。

2.2总体方案设计 2.2.1元器件的选择

该函数发生器有以下几部分组成:(1)控制模块(2)按键及其显示模块(3)采样模块三部分组成。 (1) 控制模块:

方案一:用单片AT89S52作为系统的主控核心。单片机具有体积小,使用灵活的,易于人机对话和良好的数据处理,有较强的指令寻址和运算功能等优点。且单片机功耗低,价格低廉的优点。

方案二:用FPGA等可编程器件作为控制模块。FPGA可以实现各种复杂的逻辑功能,密度高,速度快,稳定性好等许多有点。FPGA在掉电后会丢失数据上电后须进行一次配置,因此FPGA在应用中需要配置电路和一定的程序。并且FPGA作为数字逻辑器件,竞争、冒险是数字逻辑器件较为突出的问题,因此在使用时必须注意毛刺的产生、消除及抗干扰性。

在次系统中,采用单片机作为控制比采用FPGA实现更简便。基于综合性价

毕业论文

比,确定选择方案一. (2) 按键及其显示模块:

方案一:采用传统的独立式按键;用传统的LED段选位选的方式进行波形的切换及显示。这种方式占用系统资源较多,并且效率低,程系编写大量而复杂。 方案二:为了提高单片机的资源利用率和运行的效率,按键显示部分我们直接使用zlg7289扩展键盘,键盘与单片机连接。zlg7289芯片与单片机之间通信方便,而且由zlg7289对键盘进行自动扫描,可以去抖动,充分的提高了单片机的工作效率。

在次系统中,我们直接采用zlg7289扩展键盘实现更简便,确定选择方案一。 (3)采样模块:采用ADC0832

ADC0832 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。由于它体积小,兼容性,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。学习并使用ADC0832 可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。 ADC0832 具有以下特点: ² 8位分辨率;

² 双通道A/D转换;

² 输入输出电平与TTL/CMOS相兼容; ² 5V电源供电时输入电压在0~5V之间; ² 工作频率为250KHZ,转换时间为32μS; ² 一般功耗仅为15mW;

² 8P、14P—DIP(双列直插)、PICC 多种封装;

² 商用级芯片温宽为0°C to +70°C,工业级芯片温宽为 40°C to +85°C;

芯片接口说明:

² CS_ 片选使能,低电平芯片使能。

² CH0 模拟输入通道0,或作为IN+/-使用。

² CH1 模拟输入通道1,或作为IN+/-使用。 ² GND 芯片参考0 电位(地)。

² DI 数据信号输入,选择通道控制。 ² DO 数据信号输出,转换数据输出。 ² CLK 芯片时钟输入。

² Vcc/REF 电源输入及参考电压输入(复用)。

ADC0832 为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯

毕业论文

片的模拟电压输入在0~5V之间。芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI 数据输入端,可以轻易的实现通道功能的选择。ADC0832如图

2-1

图2-1 ADC0832 单片机对ADC0832 的控制原理:

正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择

毕业论文

的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能 当此2 位数据为“1”、“0”时,只对CH0 进行单通道转换。当2位数据为“1”、“1”时,只对CH1进行单通道转换。当2 位数据为“0”、“0”时,将CH0作为正输入端IN+,CH1作为负输入端IN-进行输入。当2 位数据为“0”、“1”时,将CH0作为负输入端IN-,CH1 作为正输入端IN+进行输入。到第3 个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7,随后每一个脉冲下沉DO端输出下一位数据。直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0。随后输出8位数据,到第19 个脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处理就可以了。作为单通道模拟信号输入时ADC0832的输入电压是0~5V且8位分辨率时的电压精度为19.53mV。如果作为由IN+与IN-输入的输入时,可是将电压值设定在某一个较大范围之内,从而提高转换的宽度。但值得注意的是,在进行IN+与IN-的输入时,如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H。

2.2.2系统总体框图设计

本系统是以单片机AT89C52和8位D/A转换芯片DAC0832以及zlg7289键盘及显示共同实现正弦波,方波,三角波,锯齿波这四种常见波形的产生及显示相互切换的功能。 系统原理框图2-2

毕业论文

1号D/A转化器

7289键盘及显示模块

参考电压

片机

图2-2 系统框图

2号D/A转化器

输出

2.3.1单片机软件开发系统

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 Keil C51单片机软件开发系统的整体结构

C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强, 使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编 器,实时操作系统,项目管理器,调试器。uVision2 IDE可为它们提供单一而灵活的开发环境。

毕业论文

第二部分 uVision2集成开发环境 一.项目管理

工程(project)是由源文件、开发工具选项以及编程说明三部分组成的。 一个单一的uVision2工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。

uVision2包含一个器件数据库(device database),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满足用户充分利用特定 微控制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extra data pointer)或者加速器(math accelerator)的特 性。

uVision2可以为片外存储器产生必要的连接选项:确定起始地址和规模。 第三部分编辑器和调试器 一、源代码编辑器

uVision2编辑器包含了所有用户熟悉的特性。彩色语法显像和文件辩识都对C源代码进行和优化。可以在编辑器内调试程序,它能提供一种自然的调试环境,使你更快速地检查和修改程序。 二、断点

uVision2允许用户在编辑时设置程序断点(甚至在源代码未经编译和汇编之前)。用户启动V2调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器命令或调试功能即可执行。

在属性框(attributes column)中可以快速浏览断点设置情况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行和未执行的部分。 三、调试函数语言

uVision2中,你可以编写或使用类似C的数语言进行调试。 1.内部函数:如printf, memset, rand及其它功能的函数。

2.信号函数:模拟产生CPU的模拟信号和脉冲信号(simulate analog and digital inputs to CPU)。

3.用户函数:扩展指令范围,合并重复动作。

2.3.2电路图设计软件

毕业论文

一、protel99se概述

Protel 99 SE主要由原理图设计系统、印制电路板设计系统两大部分组成。 1.原理图设计系统

这是一个易于使用的具有大量元件库的原理图编辑器,主要用于原理图的设计。它可以为印制电路板设计提供网络表。该编辑器除了具有强大的原理图编辑功能以外,其分层组织设计功能、设计同步器、丰富的电气设计检验功能及强大而完善的打印输出功能,使用户可以轻松完成所需的设计任务。 2.印制电路板设计系统

它是一个功能强大的印制电路板设计编辑器,具有非常专业的交互式布线及元件布局的特点,用于印制电路板(PCB)的设计并最终产生PCB文件,直接关系到印制电路板的生产。Protel99SE的印制电路板设计系统可以进行多达32层信号层、16层内部电源/接地层的布线设计,交互式的元件布置工具极大地减少了印制板设计的时间。

同时它还包含一个具有专业水准的PCB信号完整性分析工具、功能强大的打印管理系统、一个先进的PCB三维视图预览工具。

此外,Protel99SE还包含一个功能强大的基于SPICE 3f5的模/数混合信号仿真器,使设计者可以方便地在设计中对一组混合信号进行仿真分析。 同时,它还提供了一个高效、通用的可编程逻辑器件设计工具。 二、Protel99SE运行环境

1.运行Protel 99 SE的推荐配置

CPU:≥Pentium II 400及以上PC机 内存:≥64M

显卡:支持800³600³16位色以上显示 光驱:≥24倍速 2.运行环境

Windows NT/95/98及以上版本操作系统。由于系统在运行过程中要进行大量的运算和存储,所以对机器的性能要求也比较高,配置越高越能充分发挥它的优点。 三、Protel99SE设计环境 专题数据库管理环境 原理图设计环境

1.分层次组织设计功能

毕业论文

2.强大的元件及元件库的组织、编辑功能 3.方便的连线工具

4.高效、便捷的编辑功能 5.电气设计检测功能

6.与印制电路板的紧密连接 7.自定义原理图模块 8.强大而完善的输出功能

印制电路板设计环境 1.丰富的设计规则 2.易用的编辑环境

3.智能化的交互式手工布线

4.丰富的封装元件库及便简的元件库编辑和组织操作 5.智能化的基于形状的自动布线功能 6.可靠的设计校验 四、电路板设计

一般而言,设计电路板最基本的过程可以分为以下3大步骤。

1.电路原理图的设计

电路原理图的设计主要是用Protel 99 SE的原理图设计系统来绘制电路原理图。 2.产生网络报表

网络表可以从电路原理图中获得,同时Protel 99 SE也提供了从电路板中提取网络表的功能。

3.印制电路板的设计

印制电路板的设计主要是利用Protel 99 SE的PCB设计系统来完成印制电路板图的绘制

毕业论文

第3章 系统硬件设计

3.1单片机及其外围电路 3.1.1单片机介绍

89S52单片机有44个引脚PLCC和TQFP方形封装形式,40个引脚的双列直插式封装形式,最常用的40个引脚封装形式及其配置如图3-1所示,各个引脚功能说明如下:

图3-1 单片机

GND:接地

P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。

P1口:P1口是一个具有内部上拉电阻的8位双向I/O 口,P1 输出缓冲器能驱动4个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可

毕业论文

以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如表1-1所示。在flash编程和校验时,P1口接收低8位地址字节。

P2口:P2口是一个具有内部上拉电阻的8位双向I/O 口,P2 输出缓冲器能驱动4个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如表1-2所示。在flash编程和校验时,P3口也接收一些控制信号。

RST:复位输入。晶振工作时,RST脚将持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。

ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可以用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置 “1”,ALE操作将无效。这一位置 “1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。

PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。

毕业论文

EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程

序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。

XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。

3.1.2单片机晶振电路

对于MSC-51一般的晶振频率可以在1.2MHz—12MHz之间选择,这是电容C可以对应的选择10pF—30pF。当使用89C55时晶振频率可以提高到24MHZ。对于本设计的电容C用30pF,晶振选用11.0592MHz。晶振电路解法图3-2,一条引脚接在XTAL1,另一条接在XTAL2。

图 3-2 晶振电路

3.1.3单片机的复位电路

为了防止程序执行过程中失步或运行紊乱,此处我们采用了上电复位及手动复位电路,电路图如图3-3所示:

毕业论文

图3-3 单片机复位电路

3.1.4辅助性电路

(1)为了防止各种元器件之间的相互干扰,因此在设计电路时加上一组电容解法如下如3-4。

图 3-4 防干扰电路

3.3 UA741AD

1.在本设计中的运放的连接方式第一部分如图3-12

本文来源:https://www.bwwdw.com/article/lkhm.html

Top