数字气压计设计_第1页
数字气压计设计_第2页
数字气压计设计_第3页
数字气压计设计_第4页
数字气压计设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、 目录 TOC o 1-5 h z 引言 2课题背景 . 2本课题国内外研究现状 2本课题的研究意义 . 3本课题相关理论综述 3系统总体设计 设计思路分析 . 5系统总体结构 . 5系统各功能模块的设计思想 6数据采集模块的芯片选择 6A/D 转换模块 . 7单片机控制模块 8显示模块 . 11硬件电路设计 13气压传感电路 13单片机控制电路 . 13A/D转换模块 14显示模块 14系统总体电路图 15软件设计 164.1用C语言开发单片机的优势 16 HYPERLINK l bookmark20 o Current Document 程序流程图 17系统程序 18源程序代码 1823系

2、统调试与仿真 KEIL 软件介绍 23PROTEU软件介绍23单片机调试仿真 24结束语 参考文献 2627引言课题背景数字气压计是利用压敏元件将待测气压直接变换为容易检测、 传输的电流或电压 信号,然后再经过后续电路处理并进行实时显示的一种设备。其中的核心元件就是气 压传感器,它在监视压力大小、控制压力变化以及物理参量的测量等方面起着重要作 用。运用于气压计的气压传感器基本都是依靠不同高度时的气压变化来获取气压值的。 相对比于普通的水银气压计,有准确易读,易携带的优点。气象学研究表明, 在垂直方向上气压随高度增加而降低。 例如在低层,每上升 100m 气压便降低10hPa;在56km的高空,

3、高度每增加100m气压便会降低7hPa;而当 高度进一步增加时,即到910km的高空之后,高度每增加100m气压便会降低5hPa; 同样,若空气中有下降气流时,气压会增加;若空气中有上升气流时,作用于空气柱 底部的气压就会减小。一般把作用于单位面积上空气柱的重量称为大气压力。 数字气压计大量应用在各种工矿企业,野外作业,消费类电子产品等等的地方。需求 极为广泛。本课题国内外研究现状常见气压计有液体气压计和盒式气压计。 飞机上使用的高度计实际上是用盒式气压 计改装成的。常见的液体气压计有水银气压计和酒精气压计 2 种,这 2 种都是老式的 气压计,体积大,精度低,不方便携带且容易坏,当今社会科技

4、高速发展,各行各业 不断出现新技术新材料,气压测量这块也是这样,盒式气压计的出现部分的解决了液 体气压计所无法解决的缺点,比如体积、方便携带等等。人类社会进入 20世纪 90年 代以后微电子行业发展极为迅速, 各种各样的电子传感器被发明且被运用到各行各业, 为人们的生产生活创造了极大的便利。数字气压传感器亦已出现,并大量被运用,甚 至现在很多手持设备中都已经加入了气压计功能,比如手机,GPS等,方便了人们的出行旅游。目前国际国内很多公司都推出了其数字气压传感器,如摩托罗拉公司的 MPX4105 和Intersema公司的MS5534b另外还有华普微电子的HP03系列数字气压传感器。众多 数字气

5、压传感器的出现使得多样化的数字化气压测量装置、用品大量出现,并越来越 普及,精度也越来越高。数字气压计一般不会只有测量气压一种功能,一般都有其他 的功能,比如测温度、指南针、码表等等的功能。微控制器是将微型计算机的主要部分集成在一个芯片上的单芯片微型计算机。微 控制器诞生于 20 世纪 70 年代中期,经过 20多年的发展,其成本越来越低,而性能越 来越强大,这使其应用已经无处不在,遍及各个领域。例如电机控制、条码阅读器 扫描器、消费类电子、游戏设备、电话、 HVAC楼宇安全与门禁控制、工业控制与自 动化和白色家电 ( 洗衣机、微波炉 ) 等。本次设计也将采用微控制器作为电子气压计的 数据采集

6、处理和控制元件。微控制器可从不同方面进行分类:根据数据总线宽度可分为 8 位、 16 位和 32 位 机;根据存储器结构可分为 Harvard结构和Von Neumanr结构;根据内嵌程序存储器 的类别可分为 OTR掩膜、EPROJMEEPROM和闪存Flash ;根据指令结构又可分为 CISC(ComplexlnstructionSet Computer)和 RISC(ReducedlnstructionSet Computer)微控制器。气压传感器和微电子控制器的结合,可以创造出很多应用,可以说只要能有好的 想法,一般都可以实现,气压计已经由以前的只有专业场合专业人士才能使用的测量 器具变

7、成今天的随处可见,方便使用的电子产品,并集成到众多的电子产品中,都归 功于电子行业技术发展和很多有创新精神开发者。本课题的研究意义本课题是要设计一个利用微控制和数字化气压传感器为核心元件组成的电子气压 计系统。微控制和数字化气压传感器的结合可以使得气压计的设计更具灵活性,测量 精度相对于液体气压计也有了显著提高。测量结果的显示也更直观,并可灵活的加入 超压、低压报警等特殊功能,以满足某些特定需要。通过本次设计也较好的锻炼了本人的动手能力,为将来的工作打下了一定的基础,同 时可以充分利用课堂所学知识进行本课题的设计,在运用这些知识的过程中,加深了 对这些知识的理解。本课题相关理论综述在设计电子气

8、压计之前首先要搞清楚气压的定义。气压是作用在单位面积上的大 气压力,即等于单位面积上向上延伸到大气上界的垂直空气柱的重量。气压以百帕(hPa)为单位,取一位小数。国际制单位:帕斯卡,简称帕,符号是Pa。常用单位:标准大气压。表示气压的单位,习惯上常用水银柱高度。例如,一个标准大气压等于 760 毫米高的水银柱的重量,它相当于一平方厘米面积上承受1.0336 公斤重的大气压力。由于各国所用的重量和长度单位不同,因而气压单位也不统一,这不便于对全球 的气压进行比较分析。因此,国际上统一规定用百帕作为气压单位。经过换算:一个标准大气压二1013百帕(毫巴)1毫米水银(汞柱)柱高=4/3百帕(毫巴)1

9、个标准大气压=760mn水银(汞柱)柱高。气压产生的原因:从分子动理论可知,气体的压强是大量分子频繁地碰撞容器壁而产 生的。单个分子对容器壁的碰撞时间极短,作用是不连续的,但大量分子频繁的碰撞 器壁,对器壁的作用力是持续的、均匀的,这个压力与器壁面积的比值就是压强大小。影响压强的因素:气压的大小与海拔高度、大气温度 、大气密度等有关,一般 随高度升高按指数律递减。气压有日变化和年变化。一年之中,冬季比夏季气压高。 一天中,气压有一个最高值、一个最低值,分别出现在 910时和1516时,还有一 个次高值和一个次低值,分别出现在 2122时和34时。气压日变化幅度较小,一 般为 0.1 0.4 千

10、帕,并随纬度增高而减小。气压变化与风、天气的好坏等关系密切, 因而是重要气象因子。通常所用的气压单位有帕 (Pa)、毫米水银柱高(mmHg)、毫巴 (mb)。它们之间的换算关系为:100帕=1毫巴3/4毫米水银柱高。气象观测中常 用的测量气压的仪器有水银气压表、空盒气压表、气压计。温度为0C时760毫米垂直水银柱高的压力 ,标准大气压最先由意大利科学家 托里拆利 测出。系统总体设计2.1设计思路分析基于MPX4115的数字气压计包括软硬件的设计与调试。软件部分通过对C语言的学习和对单片机知识的了解,根据系统的特点编写出单片机程序。硬件部分分为四 大块,包括非电信号数据的采集、转换、处理以及显示

11、:。通过对设计的了解,选择适合的器件,画出原理图。2.2系统总体结构硬件部分由四部分构成,它们分别是:信息采集模块,数据转换模块,信息处理 模块和数据显示模块。采用单片机主控,通过压力传感器、A/D转换采集数据信息,经过含有单片机的检测系统检测,将结果传送到单片机控制的主控器,数据通过显示 器显示。原理框图如图2-1所示。压力传感器A/D转换器单片机电源模块LED显示器图2-1系统结构框图设计51单片机数字气压计系统时,需要考虑下面4个方面的内容。选择合适的气压传感器芯片,这要根据实际需要以及各种气压传感器的性能参数来 决定。选择合适的A/D转换器件,它的作用是将气压传感器输出的模拟电流或电压

12、信号转 换为数字信号。设计单片机和A/D转换器件的接口电路。实现气压信息采集并输出的软件设计。2.3系统各功能模块的设计思想2.3.1数据采集模块的芯片选择压力传感器对于系统至关重要,需要综合实际的需求和各类压力传感器的性能参数 加以选择。一般要选用有温度补偿作用的压力传感器,因为温度补偿特性可以克服半 导体压力传感器件存在的温度漂移问题。本设计要实现的数字气压计显示的是绝对气压值,同时为了简化电路,提高稳定性和 抗干扰能力,要求使用具有温度补偿能力的压力传感器。经过综合考虑,本设计选用 美国摩托罗拉公司的集成压力传感器。MPX4115可以产生高精度模拟输出电压。MPX4115系列压电电阻传感

13、器是一个硅压力传感器。这个传感器结合了高级的微电机技术,薄膜镀金属。还能为高水准模拟输出信号提供一个均衡压力。在OC -85C的温度下误差不超过1.5%,温度补偿是-40C-125C。数据采集模块由压力传感器 MPX4115 构成。其中1脚是输出信号端,输出的是与气压值相对应的模拟电压信号。MPX4115的实物图如图2-2所示。图2-2 MPX4115的实物图2.3.2 A/D 转换模块ADC0832 是美国国家半导体公司生产的一种 8位分辨率、双通道 A/D 转换芯片。 由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有 很高的普及率。学习并使用 ADC0832 可是

14、使我们了解 A/D 转换器的原理,有助于我 们单片机技术水平的提高。ADC0832 具有以下特点: 8位分辨率; 双通道 A/D 转换; 输入输出电平与 TTL/CMOS 相兼容;5V电源供电时输入电压在05V之间;工作频率为250KHZ,转换时间为32卩$一般功耗仅为 15mW;8P 14P DIP (双列直插)、PICC多种封装;商用级芯片温宽为0C to +70 C?,工业级芯片温宽为40C to +85CADC0832为8位分辨率A/D转换芯片,其最高分辨可达 256级,可以适应一般的模拟 量转换要求。其内部电源输入与参考电压的复用, 使得芯片的模拟电压输入在05V之 间。芯片转换时间

15、仅为 32卩S,据有双数据输出可作为数据校验,以减少数据误差, 转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更 加方便。通过 DI 数据输入端,可以轻易的实现通道功能的选择。正常情况下 ADC0832 与单片机的接口应为4条数据线,分别是CS CLK DO DI。但由于DO端与DI端在 通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和 DI并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用, CLK和DO/DI的电平可任意。当要进行 A/D转换时,须先将CS使能端置于低电平并 且保持低电平直到转换完全结束。此时

16、芯片开始转换工作,同时由处理器向芯片时钟 输入端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”、“T时,将CH0作为负输入端IN- , CH1作为正输

17、入端IN+进行输入。到第3个脉冲 的下沉之后DI端的输入电平就失去输入作用,此后 DO/DI端则开始利用数据输出DO 进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高位DATA?随 后每一个脉冲下沉DO端输出下一位数据。直到第11个脉冲时发出最低位数据 DATA0 一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA0随后输出8位数据,到第19个脉冲时数据输出完成,也标 志着一次A/D转换的结束。最后将CS置高电平禁用芯片,直接将转换后的数据进行处 理就可以了,如图2-3为ADC0832实物图。图2-3 ADC0832实物图2.3

18、.3单片机控制模块AT89C51是一个低电压,高性能CMOS 8位单片机带有4K字节的可反复擦写的 程序存储器(PENROM)。和128字节的存取数据存储器(RAM ),这种器件采用 ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机 兼容。片内含有8位中央处理器和闪烁存储单元, 有较强的功能的AT89C51单片机能 够被应用到控制领域中。如图 2-4为AT89C51单片机实物图。Pl Q tFi.i rpi J cPI爭RSTI A: SCO P3 0 - ctxP) py i jtHTlli FA 2 匸 匸(T Pl 4 1*3 S (WW F3 inoi

19、 叭 vXTAL-2 i XIA LI GNDVCC:PO. 0 | AD&I Jl P0.1 4 AD I)P0 2 4 AQ2) :P0.3 fAOl) 阳 d 4 AD) POP 1AQ5)W 1A0)p&.r iadt) C ArPP A|_EPH3Gi:P5CHf*l.T lAtllPJ 0 P2 1i 、 J P2 0 4At|iRST/VPP 1HXD) P3.0 (TXD) P3 1X7AL2 匚XTAL1 C (INTCl氏卫 (tNTl P3.3 (TO) P3.4 (Tl) F3 5GIYDVCC Pi,7P1SPi.$P1.4J Pt 3Pt.2I P1.I (AN1)

20、 Pl o (AINC) .1 P3.7AT89C51AT89C2051图2-4引脚描述VCC :电源电压GND : 地P0 口:P0 口是一组8位漏极开路双向I/O 口,即地址/数据总线复用口。作为输出口时,每一 个管脚都能够驱动8个TTL电路。当“ 1被写入P0 口时,每个管脚都能够作为高阻抗 输入端。P0 口还能够在访问外部数据存储器或程序存储器时,转换地址和数据总线复 用,并在这时激活内部的上拉电阻。P0 口在闪烁编程时,P0 口接收指令,在程序校验 时,输出指令,需要接电阻。P1 口:P1 口一个带内部上拉电阻的8位双向I/O 口,P1的输出缓冲级可驱动4个TTL电路。 对端口写“

21、1,通过内部的电阻把端口拉到高电平,此时可作为输入口。因为内部有电 阻,某个引脚被外部信号拉低时输出一个电流。闪烁编程时和程序校验时,P1 口接收低8位地址。P2 口:P2 口是一个内部带有上拉电阻的 8位双向I/O 口,P2的输出缓冲级可驱动4个TTL 电路。对端口写“ 1,通过内部的电阻把端口拉到高电平,此时,可作为输入口。因为 内部有电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或 16位地址的外部数据存储器时,P2 口送出高8位地址数据。在访问8位地址的外部数 据存储器时,P2 口线上的内容在整个运行期间不变。 闪烁编程或校验时,P2 口接收高 位地址和其它控制信号

22、。P3 口:P3 口是一组带有内部电阻的8位双向I/O 口,P3 口输出缓冲故可驱动4个TTL电路。 对P3 口写如“1时,它们被内部电阻拉到高电平并可作为输入端时,被外部拉低的 P3 口将用电阻输出电流。P3 口除了作为一般的I/O 口外,更重要的用途是它的第二功能,如下表所示。表2-1 P3 口第二功能端口引脚第二功能P3.0RXDP3.1TXDP3.2INTOP3.3INT1P3.4TOP3.5T1P3.6WRP3.7RDP3 口还接收一些用于闪烁存储器编程和程序校验的控制信号。RST:复位输入。当震荡器工作时,RET引脚出现两个机器周期以上的高电平将使单片机复 位。ALE/MG :当访

23、问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。 即使不访问外部存储器,ALE以时钟震荡频率的1/16输出固定的正脉冲信号,因此它 可对输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ALE脉冲时,闪烁存储器编程时,这个引脚还用于输入编程脉冲。如果必要,可对特 殊寄存器区中的8EH单元的DO位置禁止ALE操作。这个位置后只有一条 MOVX和 MOVC指令ALE才会被应用。此外,这个引脚会微弱拉高,单片机执行外部程序时, 应设置ALE无效。PSEN:程序储存允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器读 取指令时,每个机器

24、周期两次 PSEN有效,即输出两个脉冲。在此期间,当访问外部 数据存储器时,这两次有效的 PSEN信号不出现。EA/VPP :外部访问允许。欲使中央处理器仅访问外部程序存储器, EA端必须保持低电平。需要 注意的是:如果加密位LBI被编程,复位时内部会锁存 EA端状态。如EA端为高电 平,CPU则执行内部程序存储器中的指令。闪烁存储器编程时,该引脚加上 +12V的 编程允许电压VPP,当然这必须是该器件是使用12V编程电压VPP。XTAL1 :震荡器反相放大器及内部时钟发生器的输入端。XTAL2 :震荡器反相放大器的输出端。2.3.4显示模块本设计采用四位一体共阴二极管显示器74SE-MPX4

25、-CC显示,1234为共阴端,其实物图如图2-5所示。图 2-5 74SE-MPX4-CC 实物图(6)本设计采用LED动态扫描显示,原理如下:(1)P23、P22、P21、P20输出高电平,关闭所有数码管;(2)显示个位一一把要显示的数据送到P10P17, P23送低电平,延时5豪秒(时间 不能太长,否则数码管会闪烁),P23送高电平;(3)显示十位一一把要显示的数据送到P10P17, P22送低电平,延时5豪秒(时间 不能太长,否则数码管会闪烁) ,P22 送高电平;(4) 显示百位把要显示的数据送到P10P17, P21送低电平,延时5豪秒(时间 不能太长,否则数码管会闪烁) , P21

26、 送高电平;(5) 显示千位把要显示的数据送到P10P17, P20送低电平,延时5豪秒(时间 不能太长,否则数码管会闪烁),P20送高电平。( 6)以此顺序循环,把它做成子程序,在主循环中调用。硬件电路设计3.1气压传感电路数据采集模块由压力传感器 MPX4115构成,电路原理图如图3-1所示R.1.51k -.I C2 :D.lklf Jk T:图3-1 MPX4115原理图3.2单片机控制电路单片机控制模块采用AT89C5仲片机,控制原理图如图3-2所示U1FTSTk1 2|K2 3n 4PEEMA1.E EAPD.4MAM PQj 加 PC JJtAM PO.轴 D3 RO.百型N P

27、O.SfADSpo.cwicePO.7XAD7P2.O/A0 P2.1/A9 F2 2/AIQ P2 3A11P3 5A13 *P2 7A15P3.yRx&P3.imT1P3.6Mfidl耳S7d24貫453flc!4扣d5733一日33d?打d. 1TOH_UL1临图3-2单片机控制原理图A/D转换模块A/D 转换模块采用A/D转换芯片ADC0832原理图如图3-3所示COM4TEXTC0N2P2fD U1CHO CH?话VCCCHOCLKCHIDIGNDDOADC0S3275 par?图3-3 ADC0832原理图3.4显示模块本设计采用四位一体共阴二极管显示器 74SE-MPX4-C显示

28、,原理图如图3-4所示1234匸5$ IASCDEFG DP:a i is aA U2/ USA. U6 :*、同GT才 、耳 NQyNOT -o图 3-4 74SE-MPX4-CC 原理图3.5系统总体电路图本系统对应的总体电路原理图如图3-5所示R9TOiTALi1XTAL2PQOMiHL1MEI1 fnaoz ID3D3口 MX fDA*E.M1ABCD叵巨G DPR0133Tn*X03D1-3sTEraS3Zfl?卄rt:tnALEO7fAD7rznr. h.i 阳FJ-aMTD r 3i iT IFJ.irrn rajirri Is aS FJ-Ti-KB-MH汕 F2.AiZ 口P

29、2.SAUFZ.TrA.fi5CLXVI O图3-5系统总体原理图软件设计4.1 用 C 语言开发单片机的优势C 语言是一种编译型的结构化程序设计语言,具有简单的语法结构和强大的处理 功能,具有运行速度快、编译效率高,移植性好和可读性强等多种优点,可以实现对 系统便件的直接操作。用 C 语言来编写目标系统软件,可以大大缩短开发周期,且明 显地增加软件的可读性,便于改进和扩充,从而开发出大规模、高性能的应用系统 11 。 其优势如下:( 1)可以大幅度加快开发进度,程序量越大,用 C 语言就越有优势。( 2)无需精通单片机指令集和具体的硬件, 也能够编出符合硬件实际专业水平的程序。 (3)可以实

30、现软件的结构化编程,使得软件的逻辑结构变得清晰、有条理、便于开发 小组计划任务、分工合作。源程序的可读性和可维护性都很好。( 4)省去了人工分配单片机资源的工作, 在汇编语言中要为每一个子程序分配单片机 的资源。在使用 C 语言后,只要在代码中申明一下变量的类型,编译器就会自动分配 相关资源,根本不需要人工干预,从而有效地避免了人工分配单片机资源的差错。 (5)汇编语言的可移植性很差, 而 C 语言只要将一些与硬件相关的代码作适当的修改, 就可以方便地移植到其它种类的单片机上。(6)C语言提供auto、static、flash等存储类型,针对单片机的程序存储空间、数据存储空间及EEPRO空间自

31、动为变量合理地分配空间,而且C语言提供复杂的数据类 型,极大地增强了程序处理能力和灵活性。 C 编译器能够自动实现中断服务程序的现 场保护和恢复,并且提供常用的标准函数库,供用户使用。并且C编译器能自动生成一些硬件的初始化代码。(7)对于一些复杂系统的开发,可以通过移植(或C编译器提供)的实时操作系统来实 现。正由于C语言在系统开发中的优势,这次设计的所有程序设计都将采用C语言编写。4.2程序流程图A/D转换程序流程图系统总流程图显示流程图主函数流程图系统程序4.3.1 源程序代码#include #include intrins.h#define uint unsigned int#defi

32、ne uchar unsigned charsbit ADCS =P2A0; /ADC0832 chip seclectsbit ADDI =P3A7; /ADC0832 k insbit ADDO =P3A7; /ADC0832 k outsbit ADCLK =P3A6; /ADC0832 clock signal080307208unsigned chardispbitcode8=0 xf7,0 xfb,0 xfd,0 xfe,0 xef,0 xdf,0 xbf,0 x7 f;unsigned chardispcode11=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0

33、x92,0 x82,0 xF8,0 x80,0 x90,0 xff;unsigned char dispbuf4;uint temp;uchar getdata;void delay_1ms(void)unsigned char x,y;x=3;while(x-)y=40;while(y-);void display(void)char k;for(k=0;k1)&0 x1;_nop_();_nop_();ADCLK=0;ADDI=1;_nop_();_nop_();dat=0;for(i=0;i8;i+)dat|=ADDO;ADCLK=1;_nop_();_nop_();ADCLK=0;_n

34、op_();_nop_();dat=1;if(i=7)dat|=ADDO;for(i=0;i8;i+)j=0;j=j|ADDO;ADCLK=1;_nop_();_nop_();ADCLK=0;_nop_();_nop_();j=j7;ndat=ndat|j; if(i=1;ADCS=1;ADCLK=0;ADDO=1;dat=8;dat|=ndat;return(dat); /return ad kvoid main(void)while(1) unsigned int temp;float press; getdata=Adc0832(0); if(14getdata243)int vary=

35、getdata;press=(10.0/23.0)*vary)+9.3;dispbuf3=temp/1000;temp=(int)(press*10);dispbuf2=(temp%1000)/100;dispbuf1=(temp%1000)%100)/10;dispbuf0=(temp%1000)%100)%10;display();系统调试与仿真本设计的仿真软件主要讲述的是 Keil软件与Proteus软件的结合与应用。Keil 软件介绍Keil C51 是美国Keil Software 公司出品的51系列兼容单片机C语言软件开发系 统。与汇编相比, C 语言在功能上、结构性、可读性、可维

36、护性上有明显的优势,因 而易学易用。 Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows界面。Keil可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发 人员可用IDE本身或其它编辑器编辑 C或汇编源文件。然后分别由 C51及A51编译器 编译生成目标文件 (.OBJ) 。目标文件可由 LIB51 创建生成库文件,也可以与库文件一 起经L51连接定位生成绝对目标文件(.ABS)ABS文件由0H51转换成标准的Hex文件, 以供调试器 dScope51 或 tScope51 使用进行源代码级调试,也可由仿真器使用直接对 目标板进行调试,也可以直接写入程序

37、存储器中。Keil u Vision2 ADE 是 Keil software 公司的产品,它集项目管理、编译工具、 代码编写工具、代码调试以及完全仿真于一体,适合个人开发或人数少、对开发过程 的管理还不成熟的开发团体。u Vision2 本身自带项目管理器,其开发流程步骤如下:开启u Vision2,建立工程文件并且从器件数据库里挑选出项目实际使用的器件。建立一个新的源文件,并且把这个源文件添加到工程中去。为单片机添加并且设置启动代码。设置硬件相关的选项。编译整个工程并且生成下载到存储器用的HEX文件。PR0TEUS 软件介绍Proteus 与其它单片机仿真软件不同的是,它不仅能仿真单片机

38、CPU 的工作情 况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真 和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而 是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象Proteus 提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信 号和数字信号。对于单片机硬件电路和软件的调试, Proteus 提供了两种方法:一种 是系统总体执行效果, 一种是对软件的分步调试以看具体的执行情况。 对于总体执行 效果的调试方法,只需要执行 debug 菜单下的 exe

39、cute 菜单项或 F12 快捷键启动执 行,用debug菜单下的pause animation 菜单项或pause键暂停系统的运行;或用debug 菜单下的 stop animation 菜单项或 shift-break 组合键停止系统的运行。其运行方式 也可以选择工具栏中的相应工具进行。对于软件的分步调试,应先执行 debug 菜单下 的 start/restart debugging 菜单项命令, 此时可以选择 stepover 、step into 和 step out命令执行程序(可以用快捷键F10、F11和ctrl+F11),执行的效果是单句执行、进 入子程序执行和跳出子程序执行。

40、在执行了 start / restart debuging命令后,在debug 菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调 试时分析和查看。运行 proteus 的 ISIS 程序后, 进入该仿真软件的主界面。 在工作前, 要设置 view 菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的p(从库中选择元件命令 )命令,在 pick devices 窗口中选择电路所需的元件,放置元件并 调整其相对位置,元件参数设置,元器件间连线,编写程序;在source 菜单的Definecode generation tools 菜单命令下,选择程序编译的

41、工具、路径、扩展名等 项目;在 source 菜单的 Add/removesource files 命令下,加入单片机硬件电路的对 应程序;通过 debug 菜单的相应命令仿真程序和电路的运行情况。单片机调试仿真本设计我采用 proteus 的系统总体执行效果调试方法进行调试。 这里单片机时钟工 作在11.0592MHZ如下图5-1所示为仿真效果图。WXTAlKTJOFD.VJVI FD3.iZHl 时.iff*EF斯 ruam聞FZCM FZU# Bzjzxin吒LW2JTA1IALE临HMZ砂FWF1 1ra vr:aF1Zrj JTTEJ2冲REFl.lT2 *T3M5PJ&TlF1KTP1.Trjf

温馨提示

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

评论

0/150

提交评论