MCS-51单片机应用教程谭浩强主编第5章

上传人:平*** 文档编号:46204254 上传时间:2018-06-23 格式:PPT 页数:60 大小:3.62MB
返回 下载 相关 举报
MCS-51单片机应用教程谭浩强主编第5章_第1页
第1页 / 共60页
MCS-51单片机应用教程谭浩强主编第5章_第2页
第2页 / 共60页
MCS-51单片机应用教程谭浩强主编第5章_第3页
第3页 / 共60页
MCS-51单片机应用教程谭浩强主编第5章_第4页
第4页 / 共60页
MCS-51单片机应用教程谭浩强主编第5章_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《MCS-51单片机应用教程谭浩强主编第5章》由会员分享,可在线阅读,更多相关《MCS-51单片机应用教程谭浩强主编第5章(60页珍藏版)》请在金锄头文库上搜索。

1、第5章 单片机实用开发步骤5.1 单片机应用系统设计的一般流程 5.2 单片机汇编程序的编辑方法 5.3 源程序的编译 5.4 程序的仿真调试(下载源码就到源码网:)单片机应用系统是以单片机为核心,配以相应的外 围电路和软件,能实现某种功能的应用系统,它由 硬件部分和软件部分组成。硬件是系统的基础,软 件则是在硬件的基础上对其合理的调配和使用,从 而完成应用系统所要完成的任务。5.1 单片机应用系统设计的一般流程单片机应用系统的研制过程主要包括总体设计、硬 件设计、软件设计、仿真调试等几个阶段,图5-1 为单片机应用系统设计过程框图。单片机应用系统 一般要求可靠性好、系统具有自诊断功能、操作维

2、 修方便、性能价格比较高。这些要求在进行应用系 统设计的过程中要根据不同的需要和应用场合予以 考虑。图5-1 单片机应用系统设计过程框图1. 总体设计 (1) 总体方案设计、确定技术指标对于一个待开 发的单片机应用系统,应收集相关的技术资料,查 看过去是否有类似项目、产品。如果有,则可分析 这些项目、产品有什么优点、缺点,有什么值得借 鉴。如果没有,则应首先从理论上分析、探讨实现 的可能方案,根据客观条件如环境、测试手段、仪 器设备、资金成本等,选择一种最佳方案。总体方案确定后,对应用对象的工作过程进行深入 调查和分析,了解课题的要求、信号的种类和数量 、应用环境等。不管是老产品改造还是新产品

3、的设 计,都应对产品性能改善的程度、成本、可靠性、 可维护性及经济效益等进行综合考虑,提出合理可 行的技术指标。主要技术指标是系统设计的依据和 出发点,此后的整个设计与开发过程都要围绕如何 能达到技术指标的要求来进行。(2) 具体方案设计(软硬件功能划分)具体方案 设计是将总体设计方案具体化、细化。画出各部分 功能框图,大致给出各框图的实现方法,明确哪些 部分由软件完成,哪些部分由硬件完成。系统的硬 件配置和软件的设计是紧密地联系在一起的,且硬 件和软件具有一定的互换性。多用硬件完成一些功 能,可以提高工作速度,减少软件研制工作量,但 增加了硬件成本。若用软件替代某些硬件的功能, 可使硬件成本

4、降低,但增加了软件的复杂性,而且 降低了系统的工作速度。因此,总体设计时,应综 合考虑以上因素,合理搭配软硬件的比重。(3) 机型和器件选择在选择机型和器件时应考虑 以下几点。 货源充足稳定,便于批量生产。 在考虑性能/价格比的前提下,选择最容易实现 应用系统技术指标的机种。 所选机型功能强、性能价格比好、有便于使用的 开发装置。 要选择设计者最熟悉的机种和元器件,以缩短研 制周期。 按照系统的精度、速度和可靠性等方面的要求合 理选择包括传感器、模拟电路、输入输出电路和存 储器等器件。2. 硬件设计硬件设计的任务是根据总体设计要求,确定系统扩 展所需的扩展部分和各功能模块,包括存储器( EPR

5、OM、E2PROM、FLASHROM和RAM)的扩 展、I/O电路、A/D、D/A电路以及有关外围电路( 键盘、显示器、打印机)等,然后设计出系统的硬 件电路原理图。(1) 程序存储器 可作为程序存储器的芯片有EPROM、E2PROM及 FLASHROM等。从性能和价格方面考虑,对于大 批量生产已成熟的应用系统宜选用EPROM、 FLASHROM。调试阶段以及样机的研制可选用 FLASHROM、E2PROM。(2) 数据存储器和I/O接口对于数据存储器的容量需求,各个系统之间差别较 大,对于常规的智能仪器和实时控制系统,MCS- 51单片机片内RAM已能满足要求。若需要扩充少 量RAM,可以考

6、虑选用RAM/IO扩展芯片8155,不 仅扩充了RAM,而且增加输入输出接口。对于数 据采集系统,往往需要有较大容量的RAM存储器 ,这时RAM芯片的选择原则是尽可能减少芯片的 数量。在选择I/O接口电路时,应从体积、价格、功能、 负载等方面考虑。标准的可编程接口电路8255、 8155接口简单,使用方便,对总线负载小,可优先 选用,但对要求口线扩充较少的系统,则可用TTL 或CMOS电路,以提高口线的利用率。需要注意的 是,CPU的I/O口负载能力有限,扩展以后,不宜 满载,应留有余量,否则会降低系统抗干扰能力。 对于A/D和D/A电路芯片的选择原则,应根据系统对 它的速度、精度和价格的要求

7、来确定。 外围模拟电路应根据系统的要求,在速度、精度和 价格等方面选用,同时还应注意它们与传感器等的 匹配问题。(3) 总线驱动 MCS-51系列单片机的外部扩展空间可达64KB,但 扩展总线口(P0、P2)的负载能力有限(P0口为8 个LSTTL电路,P2口为4个LSTTL电路)。若负载 过重,系统便不能可靠地工作,这时可在P0口增加 双向三态缓冲器74LS245,在P2口加单向三态缓冲 器74LS244。3. 软件设计软件设计的任务是在总体设计和硬件设计的基础上 确定程序结构,分配单片机内部RAM资源,划分 功能模块,然后进行主程序和各模块程序的设计, 最后连接起来成为一个完整的应用程序。

8、软件设计 的一般步骤如图5-2所示。图5-2 软件设计步骤(1) 系统定义系统定义是在进行软件设计前明确 软件承担的任务,然后结合硬件结构进一步确定软 件所承担任务的细节。细节如下: 定义说明各输入输出口的功能,确定信息交换的 方式、系统接口方式、占有口地址、读取和输出方 式等。 在程序存储器和数据存储器区域中(注意考虑是 否有断电保护措施)合理分配存储空间,包括系统 主程序、常数表格、数据暂存区域、堆栈区域、入 口地址等。 对面板、控制开关、按键等输入量以及显示、打 印等输出量也必须给予定义,作为编程的依据。(2) 软件结构设计设计出合理的软件结构是设计 性能优良的单片机应用系统软件的基础。

9、 常用的程序设计方法有3种: 模块化程序设计;自 顶向下逐步求精程序设计;结构化程序设计。MCS -51应用系统的软件设计一般采用模块化程序设计 。为了便于编程和调试,应先进行软件结构设计, 根据系统要求的功能,把软件分为不同的“模块”, 明确各模块应完成的功能,以及各模块之间的关系 ,主要是要指定哪些任务由主程序完成,哪些任务 由中断服务程序完成,以便进行模块化的程序设计 。模块化程序设计是单片机应用系统软件设计中最常 用的方法。这种设计方法是把一个完整的程序分成 若干个功能相对独立的较小的程序模块,各个程序 模块分别进行设计、编制程序和调试,最后将调试 好的程序模块连接起来。 模块程序设计

10、的优点是: 单个程序模块设计和调试 比较方便、容易完成,一个模块可以被多个任务共 用。(3) 建立数学模型根据问题的定义,描述出各个 输入变量和各个输出变量之间的数学关系,称为建 立数学模型。数学模型随系统任务的不同而不同。 例如在直接数字控制系统中,可采用数字 (proportional integral and differential controller,比 例积分与微分控制器)控制算法或其改进形式;在 测量系统中,从模拟输入通道得到的温度、流量、 压力等现场信息与该信号对应的实际值往往存在非 线性关系,需要进行非线性补偿。(4) 绘制程序流程图通常是根据系统功能及操作 过程和软件的结

11、构,先列出程序的简单功能流程图 ,再对该图进行扩充和具体化,把简单功能流程图 中每一部分转变成具体的存储单元、寄存器和I/O 口的操作,从而绘制出详细的程序流程图。 (5) 编写程序在完成流程图设计以后,依据流程 图编写程序。(6) 汇编程序编写完后用开发系统或仿真器的汇 编程序将所编写的用户程序汇编成MCS-5l单片机 的机器码。 (7) 在线仿真调试通过单片机的开发系统,将所 编写的程序进行在线仿真调试,完成单片机应用系 统的各种功能,完成系统软件设计。4. 联机在线仿真调试、修正软硬件错误主要包括用户软件程序的调试和目标系统的硬件调 试。 (1) 用户软件程序的调试用户软件程序的调试可

12、分为以下几个步骤: 建立用户源程序。 在单片机开发系统上,对用户源程序进行编译, 如果编译有错误,则要进行修改,再进行编译,直 至错误全部纠正为止。 动态在线调试。用户程序中分为内部服务程序以 及与外部的接口程序。内部服务程序是指与用户样 机硬件无联系的用户程序,例如计算程序,虽然经 编译后已经没有语法错误,但可能有逻辑错误,必 须借助于动态在线调试手段,如单步运行、设置断 点等,发现逻辑错误,然后进行修改。对于外部接 口程序,一定要先把硬件故障排除以后,再对用户 程序进行动态在线调试,如果有错误,则进行修改 。在调试这一类程序时,硬件调试与软件调试是不 能完全分开的,许多硬件错误是通过对软件

13、的调试 从而发现和纠正的。 将调试完毕的用户程序通过专用编程器固化在 EPROM中。(2) 用户样机硬件调试 静态调试。对用户样机进行调试,首先要进行静 态调试,静态调试的目的是排除明显的硬件故障。 第一步断电测量,在样机加电之前,先用万用表等 工具,根据硬件电路图,仔细检查样机线路是否连 接正确,并核对元器件的型号、规格和安装是否符 合要求。应特别注意对电源系统的检查,以防止电 源的短路和极性错误,并重点检查系统总线(地址 总线、数据总线和控制总线)是否存在相互之间的 短路或与其他信号线的短路。第二步加电后检查各插件上引脚的电位,仔细测量 各点电平是否正常、尤其应注意8051插座的各点电 位

14、。 第三步是在断电情况下,除CPU外,插上所有的元 器件,并把仿真器的仿真插头插入样机上的CPU插 座,准备联机仿真调试。 联机仿真、在线动态调试。在静态调试中,仅对 目标样机硬件进行了初步调试,只是排除了一些明 显的静态故障,而样机中的硬件故障(如各部件内 部存在的故障和部件之间连接的逻辑错误)主要是 靠联机仿真排除的。分别打开样机和仿真器电源后 ,便可开始联机仿真调试,排除硬件的故障。 上面已经谈到,硬件调试和软件调试是不能完全分 开的,许多硬件错误是在软件调试中发现和被纠正 的。因此,在上面介绍的软件在线调试中,也包括 联机仿真、硬件在线动态调试以及硬件故障的排除 。5. 程序固化,系统

15、独立运行至此可将用户程序固化在程序存储器中,然后将程 序存储器插入目标样机系统中,目标样机系统可独 立运行。目标样机系统独立运行一段时间无故障后 ,可认为整个设计开发过程结束。单片机的程序设计可以使用机器语言、单片机汇编 语言和高级语言三种编程语言。机器语言是CPU惟 一能够识别的语言,其他语言必须通过编译后形成 机器码供CPU识别;汇编语言是单片机系统设计中 最常用的程序设计语言;高级语言通用性好,只要 单片机开发系统具有编译的能力,就可以直接用高 级语言编写程序。MCS-51系列单片机的编译型高 级语言有: PL/M51、C-51、MBASIC-51等。5.2 单片机汇编程序的编辑方法可以

16、使用单片机仿真器提供的软件包中的编辑器来 编写单片机程序,也可以使用PC的编辑程序编写 程序,例如PC上的EDIT、PE等编辑软件。然后利 用开发系统提供的汇编或编译系统,将源程序编译 成可在目标机上直接运行的目标程序。该目标程序 可通过PC的串行通信接口直接传送到开发系统的 RAM中。本节主要介绍利用单片机仿真器进行51 汇编语言程序的编辑方法。单片机应用系统本身并无自开发能力,需要借助于 开发工具进行软件编辑、汇编和调试。目前国内用 于MCS-51型单片机的开发系统很多,伟福E2000系 列仿真器属于新型的专用开发系统,本节内容是结 合其软件包,对汇编程序的编辑等进行说明。5.2.1 伟福仿真器软件包源程序的编辑可以在开发系统的软件包中进行。下 面以一个延时程序为例介绍如何在伟福E2000仿真 器的软件包中进行源程序的编辑。 (1) 单击WINDOWS界面的开始|程序|WAVE for WINDOWS|wave,进入伟福软件模拟器选择 界面,单击好进入编辑器

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号