首页 nimabi

nimabi

举报
开通vip

nimabi浙江机电职业技术学院电气工程系毕业设计说明书 毕业设计说明书 课题名称 振动检测系统设计 系 别 电气工程系 专 业 生产过程自动化 班 级 工自0732 姓 名 xxx 学 号 xxxxxxxx ...

nimabi
浙江机电职业技术学院电气工程系毕业设计 说明 关于失联党员情况说明岗位说明总经理岗位说明书会计岗位说明书行政主管岗位说明书 书 毕业设计说明书 课 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 名称 振动检测系统设计 系 别 电气工程系 专 业 生产过程自动化 班 级 工自0732 姓 名 xxx 学 号 xxxxxxxx 指导教师 xxx xxx 起讫时间:2010年3月8日~2010年4月30日(共8周) 振动检测系统设计 摘 要 振动普遍存在于人们的生产、生活当中,对振动的检测在工业生产的设备检测中起到非常重要的作用。此外如地震预报和分析、产品质量检测、地质和矿藏的勘察等也广泛的应用振动检测技术。本文基于ADC0809 、8051单片机设计的震动检测系统,介绍了ADC0809和8051单片机的原理、应用,以及AD转换电路与单片机的接口电路,此设计可以用于一般简单的工业研究。 关键词:振动;ADC0809;8051单片机;检测 Vibration Detection System Technology Abstract Vibration commonly found in people's production and daily lives, on the vibration test equipment for testing in the industrial production played a very important role. In addition, such as earthquake prediction and analysis, product quality testing, geological and mineral resources of the survey were also widely used in vibration detection. Based on ADC0809, 8051 microcontroller designed vibration test systems, introduced the principle of ADC0809 and 8051, applications, and the AD converter circuit and microcontroller interface circuit, this design can be used for general simple industrial research. Key words: vibration; ADC0809; 8051 MCU; detection 目 录 2摘 要 3Abstract 4引 言 6第一章ADC0809的结构与原理 61.1 A/D转换器概述 61.1.1 计数型A/D转换器 71.1.2 逐次逼近型A/D转换器 71.1.3双重积分型A/D转换器 81.2 ADC0809的主要特性 81.3AD0809的内外部结构 101.4 ADC0809的工作原理 101.4.1 复用器 101.4.2 转换器 111.4.3 工作流程 12第二章 模/数转换器ADC0809/0808的应用 122.1 典型应用 122.1.1 比例制转换 132.1.2 电阻阶梯限制 132.2.3 转换器等式 132.2.4 模拟比较器输入 14第三章 8051单片机的概述 143.1 8051单片机结构和原理 203.2存储器 223.3专用寄存器(SFR)简介 243.4中断 273.5 定时/计数器 293.6单片机的工作过程 30第四章 MCS-51与A/D的接口 304.1单片机读取A/D转换结果的三种 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 314.2硬件连接 314.3软件编程 32毕业设计的总结与体会 33致 谢 33参考文献 引 言 振动普遍存在与人们的生产、生活当中,对振动的检测在工业生产的设备检测中起到非常重要的作用。此外如地震预报和分析、产品质量检测、地质和矿藏的勘察等也广泛的应用振动检测技术。当我们没有掌握振动与冲击的规律时,它会给人类带来严重的危害,一旦当我们认识了它的规律,它又会变害为利,给人类带来利益。 振动与冲击的危害常表现在以下几个方面: (1)强烈而持续的振动,尤其是随机振动会导致结构的疲劳损坏。根据有关部门统计,在结构损坏中80%是属于疲劳损坏。交通车辆的车轴、弹簧、轴承、构架、钢结构等损坏都是在随机载荷作用下引起的,绝大多数都属于疲劳损坏。疲劳损坏往往会造成很大的危害,历史上曾发生过大型客机因一枚螺栓的疲劳断裂而导致机毁人亡,大型气轮发电机组曾因轴承振动疲劳使转子断成数段而飞出数百米外。美国的塔柯马大桥因风振而断毁。强地震造成的灾难性破坏更是令人触目惊心工程中的种种事例,举不胜举。 (2)强烈的冲击往往会造成结构的瞬时超越损坏。当结构动力响应首次超过其允许的上限值时,结构将发生首次超越损坏。如军工系统就曾发生过瞄准镜在打炮时由于强烈冲击而振碎,牵引火炮在牵引试验中由于道路的强烈冲击,炮车轴振断。 (3)强烈的振动和冲击会导致仪器设备的功能失效。例如,强烈的振动或冲击会使仪器仪表的精度降低、元器件参数发生变化,甚至损坏,造成功能失灵。强烈或者持续的振动会使机件松动,密封受到破坏,部件产生过大的变形,以至不能工作。我国某部曾对机载产品失效情况进行分析统计,总故障中52.7%是因环境因素引起的,其中振动引起的故障占环境因素引起的故障的21.6%,冲击引起的失效占2.1%。对于运动机械,有关部门也通过统计,由于振动引起的故障率一般可达60%~70%。由此可见,振动故障在机械故障中所占比例十分高。 (4)强烈持续的振动和冲击会导致动态特性欠佳的结构、设备的总体性能和总体水平下降。工程中很多机械设备、电器设备或者武器都是在振动环境下工作的。例如,各种火炮都是在振动和冲击过程中工作的,尤其是连发射击的火炮,振动对射击精度有很大的影响。有关课题研究表明,对于65 式双管37mm 高炮,由于振动对射弹散布的影响占总散布的80%~90%之高。某化肥厂的大型空气压缩机组、某油田的石油钻机等机械设备往往由于强烈振动而迫使停机进行检修,严重影响了产品质量和生产率。 (5)强烈的振动和冲击对人体本身也会造成严重的危害。当振动和冲击超过一定的限度时,就会破坏人与环境、人与机器之间的和谐关系,干扰人的情绪,损坏人的健康,降低工作效率。研究表明,环境振动对人体的生理、心理的危害主要是由振动频率决定的,尤其是与人体某些部分的共振频率相同的振动频率会造成更大的影响。 (6)振动又是噪音的主要来源,强噪音会造成环境污染,使人不能正常工作, 并造成各种职业病或污染性病害,危及人类健康。 有关研究表明,结构表面声辐射的能量与振动速度、振动模态及振动强度有关。振动虽有上述种种危害性,但是一旦人们掌握了振动规律,就可以消除振动、 第一章ADC0809的结构与原理 1.1 A/D转换器概述 A/D转换器的类型及原理 A/D转换器(ADC)的作用是把模拟量转换成数字量,以便于计算机进行处理。随着超大规模集成电路技术的飞速发展,现在有很多类型的A/D转换器芯片,不同的芯片,它们的内部结构不一样,转换原理也不同,各种A/D转换芯片根据转换原理可分为计数型A/D转换器、逐次比较式、双重积分型和并行式A/D转换器等;按转换方法可分为直接A/D转换器和间接A/D转换器;按其分辨率可分为4~16位的A/D转换器芯片。 1.1.1 计数型A/D转换器 计数型A/D转换器由D/A转换器、计数器和比较器组成,工作时, 计数器由零开始计数,每计一次数后,计数值送往D/A转换器进行转换,并将生成的模拟信号与输入的模拟信号在比较器内进行比较,若前者小于后者,则计数值加1,重复D/A转换及比较过程,依此类推,直到当D/A转换后的模拟信号与输入的模拟信号相同,则停止计数,这时,计数器中的当前值就为输入模拟量对应的数字量。这种 A/D转换器结构简单、原理清楚,但它的转换速度与精度之间存在矛盾,当提高精度时,转换的速度就慢,当提高速度时,转换的精度就 低,所以在实际中很少使用。 1.1.2 逐次逼近型A/D转换器 逐次逼近型A/D转换器是由一个比较器、D/A转换器、寄存器及控制电路组成部分。与计数型相同,也要进行比较以得到转换的数 字量,但逐次逼近型是用一个寄存器从高位到低位依次开始逐位试 探比较。转换过程如下:开始时寄存器各位清0,转换时,先将最高位置1,送D/A转换器转换,转换结果与输入的模拟量比较,如果转换的模拟量比输入的模拟量小,则1保留,如果转换的模拟量比输入模拟量大,则1不保留,然后从第二位依次重复上述过程直至最低位,最后寄存器中的内容就是输入模拟量对应的数字量。一个n位的逐次逼近型A/D转换器转换只须要比较n次,转换时间只取决于位数和时钟周期。逐次逼近型A/D转换器转换速度快,在实际中广泛使用。 1.1.3 双重积分型A/D转换器 双重积分型A/D转换器将输入电压先变换成与其平均值成正比的时间间隔,然后再把此时间间隔转换成数字量,它属于间接型转 换器。它的转换过程分为采样和比较两个过程。采样即用积分器对 输入模拟电压进行固定时间的积分,输入模拟电压值越大,采样值 越大,比较就是用基准电压对积分器进行反向积分,直至积分器的 值为0,由于基准电压值固定,所以采样值越大,反向积分时积分时间越长,积分时间与输入电压值成正比,最后把积分时间转换成数 字量,则该数字量就为输入模拟量对应的数字量。由于在转换过程 中进行了两次积分,因此称为双重积分型。双重积分型A/D转换器转换精度高,稳定性好,测量的是输入电压在一段时间的平均值,而 不是输入电压的瞬间值,因此它的抗干扰能力强,但是转换速度 慢,双重积分型A/D转换器在工业上应用也比较广泛。 A/D转换器的主要性能指标 (1)分辨率 (2)转换时间 (3)量程 (4)转换精度 1.2 ADC0809的主要特性 ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。 1)8路输入通道,8位A/D转换器,即分辨率为8位。 2)具有转换起停控制端。 3)转换时间为100μs 4)单个+5V电源供电 5)模拟输入电压范围0~+5V,不需零点和满刻度校准。 6)工作温度范围为-40~+85摄氏度 7)低功耗,约15mW。 1.3 AD0809的内外部结构 图1 ADC0809的内部结构图 由上图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。 图2 ADC0809的外部结构图 IN0-IN7:8条模拟量输入通道 ADC0809对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。 地址输入和控制线:4条 ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。通道选择表如图3所示。 图3 通道选择表 数字量输出及控制线:11条 ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。D7-D0为数字量输出线。 CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ, VREF(+),VREF(-)为参考电压输入。 1.4 ADC0809的工作原理 ADC0808/0809集成了一个8位的A/D转换器、一个8路通道和一个兼容控制逻辑的微处理器。其中,8位的A/D转换器采用了连续逼近的转换技术,具有高阻抗稳定的断续比较器特性,包括一个带模拟开关树的256R的分压器和一个逐次逼近寄存器;而由ADC0808/0809中的8路通道,可直接从8个单一模拟信号中获取任何一个作为输入信号。 1.4.1 复用器 这个器件包括一个8通道单端模拟信号复用器。通过使用地址解码器,选择一个输入通道。在地址锁存能信号由低到高变化时,地址被锁存住。 1.4.2 转换器 这个器件的数据获取系统的关键部分是它的8位模/数转换器。转换器的数字输出是正实数,这个转换器被设计成能在宽的温度范围内达到快速、精确、可重复的转换。该转换器分成3个主要部分:256R的阶梯网络、连续逼近的电阻和比较器。256R的阶梯网络用逼近的办法替代了传统的R/2R阶梯,其本身的单一性保证了不会丢失数字编码——在闭环反馈系统中,这种单一性尤其重要(一个非单一性的关系可能引起振荡,这种振荡对于系统可能是灾难性的)。同时,256R的阶梯网络不会在参考电压上引起负载变化,对于ADC0808/0809,使用256R网络就可以把逼近技术延伸到8位。A/D转换器的连续逼近寄存器(SAR)在起始转换(SC)脉冲的上升沿复位,转换在起始转换脉冲下降沿开始,处理过程中的转换将被新的起始转换脉冲中断。把转换结束标示(EOC)输出连接到SC输入,这样可以达到连续转换的目的。假如使用这个模式,则在上电后,需要从外部输入一个起始转换脉冲,在起始转换脉冲的上升沿后0~8个时钟脉冲之间EOC将变低。A/D转换器最重要的部分是比较器,它负责整个转换器的最终精度。一个稳定断续比较器提供了符合所有转换器要求的最有效方法。这个稳定断续比较器把DC输入信号转换成一个AC信号,这个信号通过一个高增益AC放大器反馈,并且能回复DC电平。既然漂移的是DC分量,它不会通过AC放大器,因此这个技术就限制了放大器的漂移分量,使得整个A/D转换器对于极端的温漂、长期漂移和输入偏移误差都不敏感。 1.4.3 时序图 图4 ADC0809的工作时序图 ADC0809的工作流程如图4所示: 1.输入3位地址,并使ALE=1,将地址存入地址锁存器中,经地址译码器译码从8路模拟通道中选通一路模拟量送到比较器。 2. 送START一高脉冲,START的上升沿使逐次逼近寄存器复位,下降沿启动A/D转换,并使EOC信号为低电平。 3. 当转换结束时,转换的结果送入到输出三态锁存器,并使EOC信号回到高电平,通知CPU已转换结束。 4.当CPU执行一读数据指令,使OE为高电平,则从输出端D0~D1读出数据。 第二章 模/数转换器ADC0809/0808的应用 2.1 典型应用 2.1.1 比例制转换 ADC0808和ADC0809可设计成一个比例制转换系统的完整数据获取系统(DAS)。在比例制系统中,被测量的物理变量是用一个对全量程的百分比来表达的,不需要有一个绝对 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 相关。下面 公式 小学单位换算公式大全免费下载公式下载行测公式大全下载excel公式下载逻辑回归公式下载 描述了ADC0808的输入电压: (2-1) 其中,V 为ADC0808的输入电压,V 为全量程电压,V 为0电压,D 为被测试的数据点,D 为最大数据极限,D 为最小数据极限。一个比例制转换器的最好例子就是作为位置传感器的电位计,滑变点的位置就是通过电位计的全量程电压的一部分。由于数据是全量程的一部分,这样涉及的要求就大大减少,对于许多应用就消除了很多误差源和费用。ADC0808和ADC0809的最大优点是输入电压范围等于供电范围,以至于变换器能直接和电源相连,其输出又可以直接与复用器输入相连 2.1.2 电阻阶梯限制 在转换中,来自电阻阶梯组的电压被按照设定的电压比较8次,电压通过一个模拟开关树与比较器相耦合,这些模拟开关树是以供电电源作为参考的。该阶梯电阻组的上部、中部与底部都必须被严格控制, 以保持正确地操作。阶梯电阻组的顶部电压(Ref(+))不能高于供电电压,底部电压(Ref(-))不能低于地,而中部电压必须接近供电电压的中心,因为在这个点上模拟开关树由N通道变到P通道。上述条件在比例制系统中可以自动得到满足,并且在以地为参考的系统中很容易获得。ADC0808需要的供电电流小于1个毫安,因此对于参考端的要求很容易达到。 2.2.3 转换器等式 在相邻码N和N+1之间的转变可通过以下公式给出: (2-2) 输出编码N的中心可通过以下公式给出: (2-3) 对于任意输入的输出代码N,它应是以下公式范围描述范围内的整数: (2-4) 2.2.4 模拟比较器输入 动态比较器的输入电流是由偏移电容的周期性开关引发的,这些电流作为断续稳定比较器的操作部分,交替连接到电阻阶梯/开关树网络的输出端和比较器的输入端。比较器输入电流的平均值是直接随着时钟频率和V 而变化的。假如在模拟输入端没有滤波电容,同时信号源的阻抗为低,那么比较器的输入电流就不会引入到转换器的误差,这是因为电容的瞬时放电现象在比较器输出被探测到之前就已经消失了。若为了减少噪音和信号调节需要加输入滤波电容时,它们会平衡动态比较器的输出电流,然后呈现出DC偏移电流的特性,这时电流的影响一般可以被预测出来。 第三章 8051单片机的概述 3.1 8051单片机结构和原理 1 8051单片机的内部组成 8051内部有4 KB ROM,基本组成如图3-1所示。 图3-1 8051 单片机结构框图 1) 中央处理器(CPU) 中央处理器是单片机的核心,完成运算和控制功能。8051的CPU能处理8位二进制数或代码。 2) 内部数据存储器(内部RAM) 8051芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。 3) 内部程序存储器(内部ROM) 8051共有4KB掩膜ROM,用于存放程序、原始数据或表格,因此,称之为程序存储器,简称内部ROM。 4) 定时/计数器 8051共有两个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。 5) 并行I/O口 MCS-51共有4个8位的I/O口(P0、P1、P2、P3),以实现数据的并行输入/输出。 6) 串行口 8051单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。 7) 中断控制系统 8051单片机的中断功能较强,以满足控制应用的需要。8051共有5个中断源,即外中断两个,定时/计数中断两个,串行中断一个。全部中断分为高级和低级共两个优先级别。 8) 时钟电路 8051芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。系统允许的晶振频率一般为6 MHz和12 MHz。 从上述内容可以看出,MCS-51虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。 2 8051的信号引脚 8051是标准的40引脚双列直插式集成电路芯片,引脚如图3-2所示。 图3-2 1)信号引脚介绍 (1)主电源引脚 ◇ VCC:+5 V电源 ◇ VSS:地线。 (2)时钟电路引脚 ◇ XTAL1和XTAL2:外接晶体引线端。当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 (3)控制信号引脚 ◇ RST/VPD:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作;当单片机掉电时,此引脚上可接备用电源,由VPD向片内RAM提供备用电源,一保持片内RAM中的数据不丢失。 ◇ ALE/PROG:地址锁存控制信号。在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。 对于EPROM型单片机,在EPRAM编程期间,此引脚接收编程脉冲。 ◇ PSEN:片外程序存储器读选通信号输出端。 ◇ EA/VPP:访问程序存储控制信号。当EA信号为低电平时,对ROM的读操作限定在外部程序存储器;当EA信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。 对于EPROM型单片机,在EPRAM编程期间,此引脚接上加21V EPROM编程电源VPP。 (4)I/O引脚 P0.0 ~ P0.7: P0口8位双向口线。 P1.0 ~ P1.7 :P1口8位双向口线。 P2.0 ~ P2.7 :P2口8位双向口线。 P3.0 ~ P3.7 :P3口8位双向口线。 2) P3口线的第二功能。P3的8条口线都定义有第二功能,详见表3-1。 表3-1 P3口各引脚与第二功能表 引脚 第二功能 信号名称 P3.0 RXD 串行数据接收 P3.1 TXD 串行数据发送 P3.2 INT0 外部中断0申请 P3.3 INT1 外部中断1申请 P3.4 T0 定时/计数器0的外部输入 P3.5 T1 定时/计数器1的外部输入 P3.6 WR 外部RAM写选通 P3.7 RD 外部RAM读选通 3 并行输入/输出口电路结构 单片机芯片内还有一项主要内容就是并行I/O口。8051共有4个8位的并行I/O口,分别记作P0、P1、P2、P3。每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器时,低8位地址和数据由P0口分时传送,高8位地址由P2口传送。在无片外扩展存储器的系统中,这4个口的每一位均可作为双向的I/O端口使用。 8051单片机的4个I/O口都是8位双向口,这些口在结构和特性上是基本相同的,但又各具特点。 4 时钟电路 (1)内部方式时钟电路 在8051芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路,如图3-3所示。 图3-3 时钟振荡电路 (2)外部方式时钟电路 在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入惟一的公用外部脉冲信号作为各单片机的振荡脉冲。这时,外部的脉冲信号是经XTAL2引脚注入,其连接如图3-4所示。 图3-4 外部时钟源接法 (3) 时序 时序是用定时单位来说明的。8051的时序定时单位共有4个,从小到大依次是:节拍、状态、机器周期和指令周期。它们之间的关系如下: (1)一个振荡脉冲的周期为节拍; (2)一个状态就包含两个节拍; (3)一个机器周期的宽度为6个状态; (4)一条指令周期由若干个机器周期组成。 5 单片机的复位电路 单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,复位后PC=0000H,使单片机从第一个单元取指令。单片机复位的条件是:必须使RST/VPD 或RST引脚加上持续两个机器周期(即24个振荡周期)的高电平。若时钟频率为12 MHz,每机器周期为1 μs,则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。 单片机复位期间不产生ALE和PSEN信号,即ALE=1和PSEN=1。这表明单片机复位期间不会有任何取指操作。复位后,内部各专用寄存器状态如下: PC: 0000H TMOD: 00H ACC: 00H TCON: 00H B: 00H TH0: 00H PSW: 00H TL0: 00H SP: 07H TH1: 00H DPTR: 0000H TL1: 00H P0~P3:FFH SCON: 00H IP: ***00000B SBUF: 不定 IE: 0**00000B PCON: 0***0000 其中,*表示无关位。注意: (1) 复位后PC值为0000H,表明复位后程序从0000H 开始执行,这一点在实训中已介绍。 (2) SP值为07H,表明堆栈底部在07H。一般需重新设置SP值。 (3) P0~P3口值为FFH。P0~P3口用作输入口时,必须先写入“1”。单片机在复位后,已使P0~P3口每一端线为“1”,为这些端线用作输入口做好了准备。 3.2存储器 1 8051内部数据存储器 8051单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。 1)内部数据存储器低128单元 8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH)。 低128单元是单片机的真正RAM存储器,按其用途划分为寄存器区、位寻址区和用户RAM区三个区域。 (1)寄存器区 8051共有4组寄存器,每组8个寄存单元,各组都以R0~R7作寄存单元编号。寄存器常用于存放操作数中间结果等。由于它们的功能及使用不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。4组通用寄存器占据内部RAM的00H~1FH单元地址。 在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。到底是哪一组,由程序状态字寄存器PSW中RS1、RS0位的状态组合来决定。通用寄存器为CPU提供了就近存储数据的便利,有利于提高单片机的运算速度。此外,使用通用寄存器还能提高程序编制的灵活性,因此,在单片机的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速度。 (2)位寻址区 内部RAM的20H~2FH单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。位寻址区共有16个RAM单元,计128位,地址为00H~7FH。MCS-51具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。这种位寻址能力是MCS-51的一个重要特点。 (3)用户RAM区 在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这就是供用户使用的一般RAM区,其单元地址为30H~7FH。对用户RAM区的使用没有任何规定或限制,但在一般应用中常把堆栈开辟在此区中。 2)内部数据存储器高128单元 内部RAM的高128单元是供给专用寄存器使用的,其单元地址为80H~FFH。因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器。 2 8051内部程序存储器 8051的程序存储器用于存放编好的程序和表格常数。8051片内有4 KB的ROM。051的片外最多能扩展64 KB程序存储器,片内外的ROM是统一编址的。如端保持高电平,8051的程序计数器PC在0000H~0FFFH地址范围内(即前4 KB地址)是执行片内ROM中的程序,当PC在1000H~FFFFH地址范围时,自动执行片外程序存储器中的程序;当保持低电平时,只能寻址外部程序存储器,片外存储器可以从0000H开始编址。 8051的程序存储器中有些单元具有特殊功能,使用时应予以注意。其中一组特殊单元是0000H~0002H。系统复位后,(PC)=0000H,单片机从0000H单元开始取指令执行程序。如果程序不从0000H单元开始,应在这三个单元中存放一条无条件转移指令,以便直接转去执行指定的程序。 还有一组特殊单元是0003H~002AH,共40个单元。这40个单元被均匀地分为5段,作为5个中断源的中断地址区。其中: 0003H~000AH 外部中断0中断地址区 000BH~0012H 定时/计数器0中断地址区 0013H~001AH 外部中断1中断地址区 001BH~0022H 定时/计数器1中断地址区 0023H~002AH 串行中断地址区 中断响应后,按中断种类,自动转到各中断区的首地址去执行程序,因此在中断地址区中理应存放中断服务程序。但通常情况下,8个单元难以存下一个完整的中断服务程序,因此通常也是从中断地址区首地址开始存放一条无条件转移指令,以便中断响应后,通过中断地址区,再转到中断服务程序的实际入口地址。 3.3专用寄存器(SFR)简介 8051共有21个专用寄存器,其中部分寄存器简单介绍如下: (1) 程序计数器PC: PC是一个16位的计数器,它的作用是控制程序的执行顺序。其内容为将要执行指令的地址,寻址范围达64 KB。PC有自动加1功能,从而实现程序的顺序执行。PC没有地址,是不可寻址的,因此用户无法对它进行读写,但可以通过转移、调用、返回等指令改变其内容,以实现程序的转移。因地址不在SFR(专用寄存器)之内,一般不计作专用寄存器。 (2) 累加器 ACC:累加器为8位寄存器,是最常用的专用寄存器,功能较多,地位重要。它既可用于存放操作数,也可用来存放运算的中间结果。MCS-51单片机中大部分单操作数指令的操作数就取自累加器,许多双操作数指令中的一个操作数也取自累加器。 (3) B寄存器。B寄存器是一个8位寄存器,主要用于乘除运算。乘法运算时,B存乘数。乘法操作后,乘积的高8位存于B中,除法运算时,B存除数。除法操作后,余数存于B中。此外,B寄存器也可作为一般数据寄存器使用。 (4) 程序状态字PSW:序状态字是一个8位寄存器,用于存放程序运行中的各种状态信息。其中有些位的状态是根据程序执行结果,由硬件自动设置的,而有些位的状态则使用软件方法设定。PSW的位状态可以用专门指令进行测试,也可以用指令读出。一些条件转移指令将根据PSW有些位的状态,进行程序转移。PSW的各位定义如下: PSW位地址 D7H D6H D5H D4H D3H D2H D1H D0H 字节地 址 CY AC F0 RS1 RS0 OV F1 P 除PSW.1位保留未用外,其余各位的定义及使用如下: CY(PSW.7)——进位标志位。CY是PSW中最常用的标志位。其功能有二:一是存放算术运算的进位标志,在进行加或减运算时,如果操作结果的最高位有进位或借位时,CY由硬件置“1”,否则清“0”;二是在位操作中,作累加位使用。位传送、位与位或等位操作,操作位之一固定是进位标志位。 AC(PSW.6)——辅助进位标志位。在进行加减运算中,当低4位向高4位进位或借位时,AC由硬件置“1”,否则AC位被清“0”。在BCD码调整中也要用到AC位状态。 F0(PSW.5)——用户标志位。这是一个供用户定义的标志位,需要利用软件方法置位或复位,用以控制程序的转向。 RS1和RS0(PSW.4,PSW.3)——寄存器组选择位。它们被用于选择CPU当前使用的通用寄存器组。通用寄存器共有4组。 这两个选择位的状态是由软件设置的,被选中的寄存器组即为当前通用寄存器组。但当单片机上电或复位后,RS1 RS0=00。 OV(PSW.2)——溢出标志位。在带符号数加减运算中,OV=1表示加减运算超出了累加器A所能表示的符号数有效范围(-128~+127),即产生了溢出,因此运算结果是错误的,否则,OV=0表示运算正确,即无溢出产生。在乘法运算中,OV=1表示乘积超过255,即乘积分别在B与A中,否则,OV=0,表示乘积只在A中。在除法运算中,OV=1表示除数为0,除法不能进行,否则,OV=0,除数不为0,除法可正常进行。 P(PSW.0)——奇偶标志位。表明累加器A中内容的奇偶性。如果A中有奇数个“1”,则P置“1”,否则置“0”。凡是改变累加器A中内容的指令均会影响P标志位。此标志位对串行通信中的数据传输有重要的意义。在串行通信中常采用奇偶校验的办法来校验数据传输的可靠性。 (5) 数据指针(DPTR)。数据指针为16位寄存器。编程时,DPTR既可以按16位寄存器使用,也可以按两个8位寄存器分开使用,即: DPH DPTR高位字节 DPL DPTR低位字节 DPTR通常在访问外部数据存储器时作地址指针使用。由于外部数据存储器的寻址范围为64 KB,故把DPTR设计为16位。 (6) 堆栈指针(SP—Stack Pointer)。堆栈是一个特殊的存储区,用来暂存数据和地址,它是按“先进后出”的原则存取数据的。堆栈共有两种操作:进栈和出栈。 由于8051单片机的堆栈设在内部RAM中,因此SP是一个8位寄存器。系统复位后,SP的内容为07H,从而复位后堆栈实际上是从08H单元开始的。但08H~1FH单元分别属于工作寄存器1~3区,如程序要用到这些区,最好把SP值改为1FH或更大的值。一般在内部RAM的30H~7FH单元中开辟堆栈。SP的内容一经确定,堆栈的位置也就跟着确定下来,由于SP可初始化为不同值,因此堆栈位置是浮动的。 注意:MCS-51系列单片机有21个可寻址的专用寄存器,其中有11个专用寄存器是可以位寻址的。对专用寄存器的字节寻址问题作如下几点说明: (1)21个可字节寻址的专用寄存器是不连续地分散在内部RAM高128单元之中,尽管还余有许多空闲地址,但用户并不能使用。 (2) 程序计数器PC不占据RAM单元,它在物理上是独立的,因此是不可寻址的寄存器。 (3) 对专用寄存器只能使用直接寻址方式,书写时既可使用寄存器符号,也可使用寄存器。 3.4中断 1 中断源 中断源是指能发出中断请求,引起中断的装置或事件。8051单片机的中断源共有5个,其中2个为外部中断源,3个为内部中断源: ⑴ INT0:外部中断0,中断请求信号由P3.2输入。 ⑵ INT1:外部中断1,中断请求信号由P3.3输入。 ⑶ T0:定时/计数器0溢出中断,对外部脉冲计数由P3.4输入。 ⑷ T1:定时/计数器1溢出中断,对外部脉冲计数由P3.5输入。 ⑸ 串行中断:包括串行接收中断RI和串行发送中断TI。 2 中断寄存器 8051单片机中涉及中断控制的有3个方面4个特殊功能寄存器: 中断请求:定时和外中断控制寄存器TCON;串行控制寄存器SCON; 中断允许控制寄存器IE; 中断优先级控制寄存器IP。 ④ 中断请求控制寄存器TCON INT0、INT1、T0、T1中断请求标志放在TCON中串行中断请求标志放在SCON中。 TCON的结构、位名称、位地址如下: TCON D7 D6 D5 D4 D3 D2 D1 D0 位名称 TF1 - TF0 - IE1 IT1 IE0 IT0 位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H TCON位功能: ① TF1 —— T1溢出中断请求标志,T1计数溢出后,TF1=1 ② TF0 —— T0溢出中断请求标志 T0计数溢出后,TF0=1 ③ IE1 —— 外中断中断请求标志 当P3.3引脚信号有效时,IE1=1 ④ IE0 —— 外中断中断请求标志 当P3.2引脚信号有效时,IE0=1 ⑤ IT1 —— 外中断触发方式控制位 IT1=1,边沿触发方式; IT1=0,电平触发方式。 ⑥ IT0 —— 外中断触发方式控制位 其意义和功能与IT1相似。 (2) 中断请求控制寄存器SCON SCON的结构、位名称、位地址如下: ① TI —— 串行口发送中断请求标志 ② RI —— 串行口接收中断请求标志 SCON D7 D6 D5 D4 D3 D2 D1 D0 位名称 - - - - - - TI RI 位地址 - - - - - - 99H 98H (3)中断允许控制寄存器IE 8051对中断源的开放或关闭由中断允许控制寄存器IE控制。IE的结构、位名称和位地址如下: IE D7 D6 D5 D4 D3 D2 D1 D0 位名称 EA - - ES ET1 EX1 ET0 EX0 位地址 AFH - - ACH ABH AAH A9H A8H ① EA —— CPU中断允许控制位 EA=1,CPU开中; EA=0,CPU关中,且屏蔽所有5个中断源。 ② EX0 —— 外中断INT0中断允许控制位 EX0=1,INT0开中;EX0=0,INT0关中。 ③ EX1 —— 外中断INT1中断允许控制位 EX1=1,INT1开中;EX1=0,INT1关中。 ④ ET0 —— 定时/计数器T0中断允许控制位 ET0=1,T0开中;ET0=0,T0关中。 ⑤ ET1 —— 定时/计数器T1中断允许控制位 ET1=1,T1开中;ET1=0,T1关中。 ⑥ ES —— 串行口中断(包括串发、串收)允许控制位 ES=1,串行口开中;ES=0,串行口关中。 3 中断入口地址 8051的五个中断入口地址: INT0:0003H; T0:000BH; INT1:0013H T1:001BH; 串行口:0023H 4 中断优先控制和中断嵌套 (1) 中断优先控制 8051中断优先控制首先根据中断优先级,此外还规定了同一中断优先级之间的中断优先权。其从高到低的顺序为:INT0、INT1、T0、T1、串行口。 (2) 中断嵌套 当CPU正在执行某个中断服务程序时,如果发生更高一级的中断源请求中断,CPU可以“中断”正在执行的低优先级中断,转而响应更高一级的中断,这就是中断嵌套。中断嵌套只能高优先级“中断”低优先级,低优先级不能“中断”高优先级,同一优先级也不能相互“中断”。 3.5 定时/计数器 1 定时/计数器控制寄存器, (1) 定时/计数器控制寄存器TCON TCON T1 中断 标志 T1 运行 标志 T0 中断 标志 T1 运行 标志 INT1 中断 标志 INT1触发方式 INT0 中断 标志 INT0 触发方式 位名称 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H TCON低4位与外中断、有关。 高4位与定时/计数器T0、T1有关。 ① TF1:定时/计数器T1溢出标志。 ② TF0:定时/计数器T0溢出标志。 ③ TR1:定时/计数器T1运行控制位。TR1=1,T1运行;TR1=0,T1停。 ④ TR0:定时/计数器T0运行控制位。TR0=1,T0运行;TR0=0,T0停。 TCON的字节地址为88H,每一位有位地址,均可位操作。 (2) 定时/计数器工作方式控制寄存器TMOD TMOD用于设定定时/计数器的工作方式 低4位用于控制T0,高4位用于控制T1。 高四位控制T1 低四位控制T0 门控位 计数/定时方式选择 工作方式选择 门控位 计数/定时方式选择 工作方式选择 G C/T M1 M0 G C/T M1 M0 ① M1、M0:工作方式选择位 M1 M0 工作方式 功能 00 方式0 13位计数器 01 方式1 16位计数器 10 方式2 两个8位计数器,初值自动装入 11 方式3 两个8位计数器,仅适用T0 ② C/T:计数/定时方式选择位 C/T=1,计数工作方式,对外部事件脉冲计数,用作计数器。 C/T=0,定时工作方式,对片内机周脉冲计数,用作定时器。 ③ GATE:门控位 GATE=0,运行只受TCON中运行控制位TR0/TR1的控制。 GATE=1,运行同时受TR0/TR1和外中断输入信号的双重控制。只有当INT0/INT1=1且TR0/TR1=1,T0/T1才能运行。 TMOD字节地址89H,不能位操作,设置TMOD须用字节操作指令。 2 定时/计数器工作方式 (1) 工作方式0 13位计数器,由TL0低5位和TH0 8位组成,TL0低5位计数满时不向TL0第6位进位,而是向TH0进位,13位计满溢出,TF0置“1”。最大计数值213 = 8192。 (2) 工作方式1 16位计数器,最大计数值为216 = 65536。 (3) 工作方式2 8位计数器,仅用TL0计数,最大计数值为256,计满溢出后,一方面进位TF0,使溢出标志TF0 =1;另一方面,使原来装在TH0中的初值装入TL0。 (4) 工作方式3 方式3仅适用于T0,T1无方式3。 3 计算定时/计数初值 8051定时/计数初值计算公式: 其中: N与工作方式有关: 方式0时,N=13; 方式1时,N=16; 方式2、3时,N=8。 机周时间与主振频率有关:机周时间=12/fosc;fosc=12MHZ时,1机周=1(S; fosc=6MHZ 时,1机周=2(S。 3.6单片机的工作过程 单片机的工作过程实质上是执行用户编制程序的过程,一般程序的机器码都已固化到存储器中,,因此开机复位后,就可以执行指令。执行指令又是取指令和执行指令的周而复始的过程。假设机器码74H、E0H 已存在0000H开始的单元中,则此表示把E0H这个值送入A累加器。单片机的工作过程如下: 接通电源开机后,PC =0000H,取指令过程如下: (1)PC中的0000H 送到片内的地址寄存器; (2)PC的内容自动加1变为0001H,指向下一个指令字 (3) 地址寄存器中的内容0000H通过地址总线送到存储器,经存储器中的地址译码选中0000H单元; (4)CPU通过控制总线发出读命令; (5)被选中单元的内容74H送内部数据总线上,该内容过内部数据总线送到单片机内部的指令寄存器。到此,取指令过程结束,进入执行指令过程。 执行指令的过程: (1) 指令寄存器中的内容经指令译码器译码后,说明这条指令是取数命令,即把一个立即数送A中; (2)PC的内容为0001H,送地址寄存器,译码后选中0001H单元,同时PC的内容自动加1变为0002H; (3)CPU同样通过控制总线发出读命令; (4)0001H单元的内容E0H读出经内部数据总线送至A。至此,本指令执行结束。PC=0002H,机器又进入下一条指令的取指令过程。机器一直重复上述过程直到程序中的所有指令执行完毕,这就是单片机的基本工作过程。 第四章 MCS-51与A/D的接口 4.1单片机读取A/D转换结果的三种方法 (1)延迟法--单片机启动ADC0809后,延时130uS以上,可以读到正确的A/D转换结果。 (2)查询法--EOC必须接到AT89C51的一条I/O线上。单片机启动ADC0809后,延迟10uS,检测EOC,若EOC=0则A/D转换没有结束,继续检测EOC直到EOC=1。当EOC=1时,A/D转换已经结束,单片机读取A/D转换结果。 (3)中断法EOC必须经过非门接到AT89C51的中断请求输入线INT0或INT1上,AT89C51的中断触发方式为下降沿触发。单片机启动A/D转换后可以做其它工作,当A/D转换结束时,EOC由0—1经过非门传到INT端,AT89C51收到中断请求信号,若AT89C51开着中断,则进入中断服务程序,在中断服务程序中单片机读取A/D转换的结果。 4.2硬件连接 下图是一个ADC0809与8051的一个接口电路图。 4.3软件编程 设接口电路用于一个8路模拟量输入的巡回检测系统,使用中断方式采样数据,把采样转换所得的数字量按序存于片内RAM的30H~37H单元中。采样完一遍后停止采集。 汇编语言编程: ORG 0003H LJMP INT0 ORG 0100H ;主程序 MOV R0,#30H ;设立数据存储区指针 MOV R2,#08H ;设置8路采样计数值 SETB IT0 ;设置外部中断0为边沿触发方式 SETB EA ;CPU开放中断 SETB EX0 ;允许外部中断0中断 MOV DPTR,#0000H ;送入口地址并指向IN0 LOOP:MOVX @DPTR,A ;启动A/D转换,A的值无意义 HERE:SJMP HERE ;等待中断 ORG 0200H ;中断服务程序 INT0:MOVX A,@DPTR ;读取转换后的数字量 MOV @R0,A ;存入片内RAM单元 INC DPTR ;指向下一模拟通道 INC R0 ;指向下一个数据存储单元 DJNZ R2,NEXT ;8路未转换完,则继续 CLR EA ;已转换完,则关中断 CLR EX0 ;禁止外部中断0中断 RETI ;中断返回 NEXT:MOVX @DPTR,A ;再次启动A/D转换 RETI ;中断返回 毕业设计的总结与体会 制作这次毕业设计一切都是从零开始,从最简单查资料起步,这次毕业设计可以圆满完成,跟大学里所学的知识是离不开的。 在整个设计过程中,充分发挥人的主观能动性,自主学习,学到了许多没学到的知识。较好的完成了设计,达到了预期的目的,完了最初的设想。在程序编写中,由于思路不清晰,开始时遇到了很多的问题,经过静下心来思考,和同学讨论,理清了思路,反而得心应手。在此次设计中,知道了做凡事要有一颗平常的心,不要想着走捷径,要脚踏实地。也练就了我的耐心,做什么事都在有耐心。此次毕业设计使我的能力得到了全方位的提高,使得我的操作
本文档为【nimabi】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_578824
暂无简介~
格式:doc
大小:975KB
软件:Word
页数:33
分类:工学
上传时间:2010-07-28
浏览量:12