欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第14章 系统设计与调试.ppt

    • 资源ID:15608291       资源大小:838.50KB        全文页数:48页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第14章 系统设计与调试.ppt

    课程主讲人:第14章 系统设计与调试2 第第1414章章 单片机应用系统的设计单片机应用系统的设计 与调试与调试 23 第第14章章 单片机应用系统的设计与调试单片机应用系统的设计与调试 14.1 单片机应用系统的设计步骤单片机应用系统的设计步骤14.2 单片机应用系统设计单片机应用系统设计 14.2.1 硬件设计应考虑的问题硬件设计应考虑的问题 14.2.2 典型的单片机应用系统典型的单片机应用系统 14.2.3 系统设计中的总线驱动系统设计中的总线驱动 14.2.4 软件设计考虑的问题软件设计考虑的问题14.3 单片机应用系统的仿真开发与调试单片机应用系统的仿真开发与调试34【内容概要内容概要】 本章介绍单片机应用系统的设计。本章介绍单片机应用系统的设计。 主要包括:主要包括:应用系统的设计步骤和方法,应用系统的硬件设计以及应用应用系统的设计步骤和方法,应用系统的硬件设计以及应用程序的总体框架设计。程序的总体框架设计。 此外,还介绍了目前流行的单片机应用系统的仿真开发工具以及如何利此外,还介绍了目前流行的单片机应用系统的仿真开发工具以及如何利用仿真开发工具对单片机应用系统进行开发调试。用仿真开发工具对单片机应用系统进行开发调试。514.1 单片机应用系统的设计步骤单片机应用系统的设计步骤一个单片机应用系统设计,一般可分为一个单片机应用系统设计,一般可分为4个阶段。个阶段。(1)明确任务和需求分析以及拟定设计方案阶段)明确任务和需求分析以及拟定设计方案阶段 明确系统所要完成的任务十分重要,它是设计工作的基础,设计方案正明确系统所要完成的任务十分重要,它是设计工作的基础,设计方案正确性的保证。确性的保证。 需求分析的内容需求分析的内容主要包括:被测控参数的形式(电量、非电量、模拟量、主要包括:被测控参数的形式(电量、非电量、模拟量、数字量等)、被测控参数的范围、性能指标、系统功能、工作环境、显示、数字量等)、被测控参数的范围、性能指标、系统功能、工作环境、显示、报警、打印要求等。报警、打印要求等。6 拟定设计方案是根据任务的需求分析,先确定大致方向和准备采用的手拟定设计方案是根据任务的需求分析,先确定大致方向和准备采用的手段。注意,在进行设计方案确定的时候,简单的方法往往可以解决大问题,段。注意,在进行设计方案确定的时候,简单的方法往往可以解决大问题,切忌切忌“将简单的问题复杂化将简单的问题复杂化”(2)硬件和软件设计阶段)硬件和软件设计阶段 根据拟定的设计方案,设计出相应的系统硬件电路。硬件设计的前提根据拟定的设计方案,设计出相应的系统硬件电路。硬件设计的前提是必须能够完成系统的要求和保证可靠性。是必须能够完成系统的要求和保证可靠性。 在硬件设计时,如果能够将硬件电路设计与软件设计结合起来考虑效在硬件设计时,如果能够将硬件电路设计与软件设计结合起来考虑效果会更好。因为当有些问题在硬件电路中无法完成时,可直接由软件来完果会更好。因为当有些问题在硬件电路中无法完成时,可直接由软件来完成(如某些软件滤波、校准功能等);当软件编写程序很麻烦的时候,通成(如某些软件滤波、校准功能等);当软件编写程序很麻烦的时候,通过稍稍改动硬件电路(或尽可能不改动)可能会使软件变得十分简单。另过稍稍改动硬件电路(或尽可能不改动)可能会使软件变得十分简单。另67外在一些要求系统实时性强、响应速度快的场合,则往往必须用硬件代替外在一些要求系统实时性强、响应速度快的场合,则往往必须用硬件代替软件来完成某些功能。所以在硬件电路设计时,最好能够与软件的设计结软件来完成某些功能。所以在硬件电路设计时,最好能够与软件的设计结合起来,统一考虑,合理地安排软、硬件的比例,使系统具有最佳的性合起来,统一考虑,合理地安排软、硬件的比例,使系统具有最佳的性/价价比。当硬件电路设计完成后,就可进行硬件电路板的绘制和焊接工作了。比。当硬件电路设计完成后,就可进行硬件电路板的绘制和焊接工作了。 接下来的工作就是软件设计。正确的编程方法就是根据需求分析,先绘接下来的工作就是软件设计。正确的编程方法就是根据需求分析,先绘制出软件的流程图,该环节十分重要。流程图的绘制往往不能一次成功,制出软件的流程图,该环节十分重要。流程图的绘制往往不能一次成功,通常需要进行多次的修改。流程图的绘制可按照由简到繁的方式再逐步细通常需要进行多次的修改。流程图的绘制可按照由简到繁的方式再逐步细化,先绘制系统大体上需要执行的程序模块,然后将这些模块按照要求组化,先绘制系统大体上需要执行的程序模块,然后将这些模块按照要求组合在一起,在大方向没有问题后,再将每个模块进行细化,最后形成软件合在一起,在大方向没有问题后,再将每个模块进行细化,最后形成软件流程图,流程图,78这样程序的编写速度就会很快,同时程序流程图还会为后面的调试工作带这样程序的编写速度就会很快,同时程序流程图还会为后面的调试工作带来很多方便,如程序调试中某个模块不正常,就可以通过流程图来查找问来很多方便,如程序调试中某个模块不正常,就可以通过流程图来查找问题的原因。题的原因。软件编写者一定要克服不绘制流程图软件编写者一定要克服不绘制流程图直接在直接在计算机上编写程序计算机上编写程序的习惯。的习惯。 设计者也可以先使用设计者也可以先使用虚拟仿真开发工具虚拟仿真开发工具Proteus来进行单片机系统的仿来进行单片机系统的仿真设计。使用真设计。使用Proteus完成的单片机系统设计与用户样机在硬件上无任何联完成的单片机系统设计与用户样机在硬件上无任何联系,这是一种完全用软件手段来对单片机硬件电路和软件来进行设计、开系,这是一种完全用软件手段来对单片机硬件电路和软件来进行设计、开发与仿真调试的开发工具。如果一个单片机的软硬件系统,先使用软件虚发与仿真调试的开发工具。如果一个单片机的软硬件系统,先使用软件虚拟仿真工具进行系统设计并仿真调试通过,虽然还不能完全说明实际系统拟仿真工具进行系统设计并仿真调试通过,虽然还不能完全说明实际系统就完全通过,但至少在逻辑上是行得通的。系统虚拟仿真通过后,再进行就完全通过,但至少在逻辑上是行得通的。系统虚拟仿真通过后,再进行89实际的软硬件设计与实现,可大大减少设计上所走的弯路,软件编写调试实际的软硬件设计与实现,可大大减少设计上所走的弯路,软件编写调试可与硬件设计同步进行,可大大提高设计效率,这也是目前世界上广泛流可与硬件设计同步进行,可大大提高设计效率,这也是目前世界上广泛流行的一种开发设计方法。行的一种开发设计方法。(3)硬件与软件联合调试阶段)硬件与软件联合调试阶段 上述的软硬件系统虚拟设计仿真调试通过后,再使用硬件仿真开发工上述的软硬件系统虚拟设计仿真调试通过后,再使用硬件仿真开发工具(在线仿真器)与用户样机来进行实际调试,具体的调试方法和过程,具(在线仿真器)与用户样机来进行实际调试,具体的调试方法和过程,将在本章的后面进行介绍。将在本章的后面进行介绍。 所有的软件和硬件电路全部调试通过,并不意味着单片机系统的设计所有的软件和硬件电路全部调试通过,并不意味着单片机系统的设计成功,还需要通过实际运行来调整系统的运行状态,成功,还需要通过实际运行来调整系统的运行状态,例如例如系统中的系统中的A/D转转910换结果是否正确,如果不正确,是否要调零和调整基准电压等。换结果是否正确,如果不正确,是否要调零和调整基准电压等。(4)资料与文件整理编制阶段)资料与文件整理编制阶段 当系统全部调试通过后,就进入资料与文件整理编制阶段。当系统全部调试通过后,就进入资料与文件整理编制阶段。 资料与文件包括资料与文件包括:任务描述、设计的指导思想及设计方案论证、性能测:任务描述、设计的指导思想及设计方案论证、性能测定及现场试用报告与说明、使用指南、软件资料(流程图、子程序使用说定及现场试用报告与说明、使用指南、软件资料(流程图、子程序使用说明、地址分配、程序清单)、硬件资料(电原理图、元件布置图及接线图、明、地址分配、程序清单)、硬件资料(电原理图、元件布置图及接线图、接插件引脚图、线路板图、注意事项)。文件不仅是设计工作的结果,而接插件引脚图、线路板图、注意事项)。文件不仅是设计工作的结果,而且是以后使用、维修以及进一步再设计的依据。因此,一定要精心编写,且是以后使用、维修以及进一步再设计的依据。因此,一定要精心编写,描述清楚,使数据及资料齐全。描述清楚,使数据及资料齐全。 101114.2 单片机应用系统设计单片机应用系统设计 本节介绍如何进行单片机应用系统的设计。主要从硬件设计和软件设本节介绍如何进行单片机应用系统的设计。主要从硬件设计和软件设计两个方面考虑。计两个方面考虑。 14.2.1 硬件设计应考虑的问题硬件设计应考虑的问题 在硬件设计时,应重点首先考虑以下几个问题。在硬件设计时,应重点首先考虑以下几个问题。1尽可能采用高集成度功能强的芯片尽可能采用高集成度功能强的芯片 (1)单片机的选型)单片机的选型。随着集成电路技术的飞速发展,单片机的集成度。随着集成电路技术的飞速发展,单片机的集成度越来越高,许多外围部件都已集成在芯片内,有许多单片机本身就是一越来越高,许多外围部件都已集成在芯片内,有许多单片机本身就是一个系统,这样可以省去许多外围部件的扩展工作,使设计工作大大简化。个系统,这样可以省去许多外围部件的扩展工作,使设计工作大大简化。在第在第1章中,已经介绍了目前较为流行的各种单片机机型,用户可根据章中,已经介绍了目前较为流行的各种单片机机型,用户可根据1112任务的需求,选择合适的机型。任务的需求,选择合适的机型。例如例如,目前市场上较为流行的美国,目前市场上较为流行的美国 Cygnal公司的公司的C8051F020 8位单片机,片内集成有位单片机,片内集成有8通道通道A/D、两路、两路D/A、两路电压、两路电压比较器,内置温度传感器、定时器、可编程数字交叉开关和比较器,内置温度传感器、定时器、可编程数字交叉开关和64个通用个通用I/O口、口、电源监测、看门狗、多种类型的串行总线(两个电源监测、看门狗、多种类型的串行总线(两个UART、SPI)等。使用)等。使用1片片C8051F020 8位单片机,就构成了一个应用系统。位单片机,就构成了一个应用系统。再如再如,如果系统需要较大,如果系统需要较大的的I/O驱动能力和较强的抗干扰能力,可考虑选用驱动能力和较强的抗干扰能力,可考虑选用PIC单片机或单片机或AVR单片机。单片机。 (2)优先选用片内带有较大容量)优先选用片内带有较大容量Flash存储器的产品存储器的产品。 例如,使用例如,使用ATMEL公司的公司的AT89S52/AT89S53/ AT89S54/ AT89S55系列系列产品,产品,PHILIPS公司的公司的89C58(内有(内有32KB的的Flash存储器)等,可省去扩展存储器)等,可省去扩展片外程序存储器的工作,减少芯片数量,缩小系统的体积。片外程序存储器的工作,减少芯片数量,缩小系统的体积。1213(3)RAM容量的考虑容量的考虑。大多数单片机片内的。大多数单片机片内的RAM单元有限,当需增强软单元有限,当需增强软件数据处理功能时,往往觉得不足,这时可选用片内具有较大件数据处理功能时,往往觉得不足,这时可选用片内具有较大RAM容量的容量的单片机,例如单片机,例如PIC18F452。(4)对)对I/O端口留有余地端口留有余地。在用户样机研制出来进行现场试用时,往往会。在用户样机研制出来进行现场试用时,往往会发现一些被忽视的问题,而这些问题是不能单靠软件措施来解决的。如有发现一些被忽视的问题,而这些问题是不能单靠软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就必须增加输出端。如果在硬件设计之初就多设计留有一些必须增加输出端。如果在硬件设计之初就多设计留有一些I/O端口,这些问端口,这些问题就会迎刃而解了。题就会迎刃而解了。1314 (5)预留)预留A/D和和D/A通道通道。与上述的。与上述的I/O端口同样的原因,留出一些端口同样的原因,留出一些A/D和和D/A通道将来可能会解决大问题。通道将来可能会解决大问题。2以软代硬以软代硬 原则上,只要软件能做到且能满足性能要求,就不用硬件。硬件多了不原则上,只要软件能做到且能满足性能要求,就不用硬件。硬件多了不但增加成本,而且系统故障率也会提高。以软件代硬件的实质,就是以时但增加成本,而且系统故障率也会提高。以软件代硬件的实质,就是以时间换空间,软件执行过程需要消耗时间,因此这种替代带来的问题是实时间换空间,软件执行过程需要消耗时间,因此这种替代带来的问题是实时性下降。在实时性满足要求的场合,以软代硬是合算的。性下降。在实时性满足要求的场合,以软代硬是合算的。3工艺设计工艺设计 工艺设计包括机箱、面板、配线、接插件等。必须考虑到安装、调试、工艺设计包括机箱、面板、配线、接插件等。必须考虑到安装、调试、维修的方便。另外,硬件抗干扰措施也必须在硬件设计时一并考虑进去。维修的方便。另外,硬件抗干扰措施也必须在硬件设计时一并考虑进去。141514.2.2 典型的单片机应用系统典型的单片机应用系统 典型的单片机应用系统框图如典型的单片机应用系统框图如图图14-1所示。所示。 典型的应用系统主要由单片机基本部分、输入部分和输出部分组成。典型的应用系统主要由单片机基本部分、输入部分和输出部分组成。 (1)单片机基本部分)单片机基本部分 基本部分由单片机及其扩展的外设及芯片,如键盘、显示器、打印机、基本部分由单片机及其扩展的外设及芯片,如键盘、显示器、打印机、数据存储器、程序存储器以及数字数据存储器、程序存储器以及数字I/O等组成。等组成。1516图图14-1 单片机典型应用系统框图单片机典型应用系统框图 17(2)输入部分)输入部分 这是这是“测测”的部分,的部分,被被“测测”的信号类型有的信号类型有:数字量、模拟量和开关量。:数字量、模拟量和开关量。模拟量输入检测的主要包括信号调理电路以及模拟量输入检测的主要包括信号调理电路以及A/D转换器。转换器。A/D转换器中都转换器中都集成了包括多路切换、采样保持、集成了包括多路切换、采样保持、A/D转换等电路,转换等电路,A/D转换器或者直接集转换器或者直接集成在单片机片内。成在单片机片内。 连接传感器与连接传感器与A/D转换器之间的转换器之间的桥梁桥梁是是信号调理电路信号调理电路,传感器输出的模拟,传感器输出的模拟信号要经过信号调理电路对信号进行放大、滤波、隔离、量程调整等,变换信号要经过信号调理电路对信号进行放大、滤波、隔离、量程调整等,变换成适合成适合A/D转换的电压信号。信号放大通常由单片式仪表放大器承担。仪表转换的电压信号。信号放大通常由单片式仪表放大器承担。仪表放大器对信号进行放大比普通运算放大器具有更优异的性能。如何根据不同放大器对信号进行放大比普通运算放大器具有更优异的性能。如何根据不同的传感器正确地选择仪表放大器来进行信号调理电路的设计,请读者参阅的传感器正确地选择仪表放大器来进行信号调理电路的设计,请读者参阅1718有关资料和文献。有关资料和文献。 (3)输出部分)输出部分 这部分是应用系统这部分是应用系统“控控”的部分,包括数字量、开关量控制信号的输出的部分,包括数字量、开关量控制信号的输出和模拟量控制信号(常用于伺服控制)的输出。和模拟量控制信号(常用于伺服控制)的输出。14.2.3 系统设计中的总线驱动系统设计中的总线驱动 一个一个AT89S52单片机应用系统有时往往是多芯片系统,如何实现单片机应用系统有时往往是多芯片系统,如何实现AT89S52单片机对多片芯片的单片机对多片芯片的驱动驱动的问题。的问题。1819 在在AT89S52单片机扩展多片芯片时,要注意单片机扩展多片芯片时,要注意AT89S52单片机单片机4个并行双个并行双向口的向口的P0P3口的驱动能力。下面首先讨论这个问题。口的驱动能力。下面首先讨论这个问题。 AT89S52的的P0、P2口通常作为总线端口,当系统扩展的芯片较多时,口通常作为总线端口,当系统扩展的芯片较多时,可能造成负载过重,致使驱动能力不够,系统不能可靠地工作,所以通常可能造成负载过重,致使驱动能力不够,系统不能可靠地工作,所以通常要附加总线驱动器或其他驱动电路。因此在多芯片应用系统设计中首先要要附加总线驱动器或其他驱动电路。因此在多芯片应用系统设计中首先要估计总线的负载情况,以确定是否需要对总线的驱动能力进行扩展。估计总线的负载情况,以确定是否需要对总线的驱动能力进行扩展。 图图14-2为为AT89S52单片机总线驱动扩展原理图。单片机总线驱动扩展原理图。P2口需要单向驱动,口需要单向驱动,常见的常见的单向总线驱动器单向总线驱动器为为74LS244。 1920图图14-2 AT89S52单片机总线驱动扩展原理图单片机总线驱动扩展原理图 21 图图14-3为为74LS244引脚图和逻辑图。引脚图和逻辑图。8个三态驱动器分成两组,分别由个三态驱动器分成两组,分别由1G*和和2G*控制。控制。 P0口作为数据总线,是双向传输,驱动器应为双向驱动、三态输出,并口作为数据总线,是双向传输,驱动器应为双向驱动、三态输出,并由两个控制端来控制数据传送方向。如由两个控制端来控制数据传送方向。如图图14-2所示,数据输出允许控制端所示,数据输出允许控制端DBEO有效时,数据总线输入为高阻态,输出为开通状态;数据输入允许控有效时,数据总线输入为高阻态,输出为开通状态;数据输入允许控制端制端DBEI有效时,则状态与上相反。有效时,则状态与上相反。 常见的常见的双向驱动器双向驱动器为为74LS245,图图14-4为其引脚和逻辑图。为其引脚和逻辑图。16个三态门个三态门中每两个三态门组成一路双向驱动。驱动方向由中每两个三态门组成一路双向驱动。驱动方向由G* 、DIR两个控制端控制两个控制端控制驱动器有效或高阻态,在控制端有效(驱动器有效或高阻态,在控制端有效(G*=0)时,)时,DIR控制端控制驱动器的控制端控制驱动器的驱动方向,驱动方向,DIR=0时驱动方向为从时驱动方向为从B至至A,DIR=1时则相反。时则相反。 212222图图14-3 单向驱动器单向驱动器74LS244引脚图和逻辑图引脚图和逻辑图 23图图14-4 74LS245的引脚图和逻辑图的引脚图和逻辑图24 图图14-5所示为所示为AT89S52单片机应用系统总线驱动扩展电路图。单片机应用系统总线驱动扩展电路图。P0口的口的双向驱动采用双向驱动采用74LS245,如,如图图14-5(a)所示;所示;P2口的单向驱动器采用口的单向驱动器采用74LS244,如,如图图14-5(b)所示。所示。 P0口口的双向驱动器的双向驱动器74LS245的的G*接地,保证芯片一直处于工作状态,接地,保证芯片一直处于工作状态,而输入而输入/输出的方向控制由单片机的数据存储器的输出的方向控制由单片机的数据存储器的“读读”控制引脚(控制引脚(RD*)和程序存储器的取指控制引脚(和程序存储器的取指控制引脚(PSEN*)通过与门控制)通过与门控制DIR引脚实现。这引脚实现。这种连接方法无论是种连接方法无论是“读读”数据存储器中数据(数据存储器中数据(RD*有效)还是从程序存储有效)还是从程序存储器中取指令(器中取指令(PSEN*有效),都能保证对有效),都能保证对P0口的输入驱动;除此以外的时口的输入驱动;除此以外的时间(间( RD*及及PSEN*均无效),保证对均无效),保证对P0口的输出驱动。口的输出驱动。 对于对于P2口口,因为只用作单向的地址输出,故,因为只用作单向的地址输出,故74LS244的驱动门控制端的驱动门控制端1G* 、2G*接地。接地。 242525图图14-5 AT89S52单片机应用系统中的总线驱动扩展电路图单片机应用系统中的总线驱动扩展电路图2614.2.4 软件设计考虑的问题软件设计考虑的问题 在进行应用系统的总体设计时,软件设计和硬件设计应统一考虑,相互在进行应用系统的总体设计时,软件设计和硬件设计应统一考虑,相互结合进行。当系统的硬件电路设计定型后,软件的任务也就明确了。结合进行。当系统的硬件电路设计定型后,软件的任务也就明确了。 一般来说,软件的功能分为两大类。一类是执行软件,它能完成各种实一般来说,软件的功能分为两大类。一类是执行软件,它能完成各种实质性的功能,如测量、计算、显示、打印、输出控制等;另一类是监控软件,质性的功能,如测量、计算、显示、打印、输出控制等;另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度的角色。设计人员在进行程序设计时应从的角色。设计人员在进行程序设计时应从以下几个方面以下几个方面加以考虑。加以考虑。 (1)根据软件功能要求,将系统软件分成若干相对独立的部分,设计出根据软件功能要求,将系统软件分成若干相对独立的部分,设计出合理的软件总体结构,使其清晰、简洁、流程合理。合理的软件总体结构,使其清晰、简洁、流程合理。2627 (2)各功能程序实行模块化、子程序化。既便于调试、链接,又便于移各功能程序实行模块化、子程序化。既便于调试、链接,又便于移植、修改。植、修改。 (3)在编写应用软件之前,应绘制出程序流程图。多花一些时间来设计在编写应用软件之前,应绘制出程序流程图。多花一些时间来设计程序流程图,就可以节约几倍于源程序的编辑和调试时间。程序流程图,就可以节约几倍于源程序的编辑和调试时间。 (4)要合理分配系统资源,包括要合理分配系统资源,包括ROM、RAM、定时器、定时器/计数器、中断源计数器、中断源等。其中最关键的是片内等。其中最关键的是片内RAM分配。对分配。对AT89S52单片机来讲,片内单片机来讲,片内RAM指指00HFFH单元,这单元,这256个字节的功能不完全相同,分配时应充分发挥个字节的功能不完全相同,分配时应充分发挥其特长,做到物尽其用。其特长,做到物尽其用。例如,例如,在工作寄存器的在工作寄存器的8个单元中,个单元中,R0和和R1具有具有指针功能,是编程的重要角色,避免作为它用;指针功能,是编程的重要角色,避免作为它用;20H2FH这这16个字节具个字节具2728有位寻址功能,用来存放各种标志位、逻辑变量、状态变量等;设置堆栈有位寻址功能,用来存放各种标志位、逻辑变量、状态变量等;设置堆栈区时应事先估算出子程序和中断嵌套深度及程序中堆栈操作指令使用情况,区时应事先估算出子程序和中断嵌套深度及程序中堆栈操作指令使用情况,其大小应留有余量。其大小应留有余量。 若系统中扩展了若系统中扩展了RAM存储器,应把使用频率最高的数据缓冲器安排在片存储器,应把使用频率最高的数据缓冲器安排在片内内RAM中,以提高处理速度。当中,以提高处理速度。当RAM资源规划好后,应列出一张详细的资源规划好后,应列出一张详细的RAM资源分配表,以备编程时查用方便。资源分配表,以备编程时查用方便。282914.3 单片机应用系统的仿真开发与调试单片机应用系统的仿真开发与调试 当一个单片机应用系统(用户样机)完成了硬件和软件设计,全部元器当一个单片机应用系统(用户样机)完成了硬件和软件设计,全部元器件安装完毕后,在用户样机的程序存储器中放入编写好的应用程序,系统即件安装完毕后,在用户样机的程序存储器中放入编写好的应用程序,系统即可运行。但应用程序运行一次性成功几乎是不可能的,多少会存在一些软件、可运行。但应用程序运行一次性成功几乎是不可能的,多少会存在一些软件、硬件上的错误,这就需要借助单片机的仿真开发工具(在线仿真器)进行调硬件上的错误,这就需要借助单片机的仿真开发工具(在线仿真器)进行调试,发现错误并加以改正。试,发现错误并加以改正。 AT89S52单片机只是一个芯片,既没有键盘,又没有单片机只是一个芯片,既没有键盘,又没有CRT、LED显示器,显示器,也无法进行软件的开发(如编辑、编译、调试程序等),因此,必须借助仿也无法进行软件的开发(如编辑、编译、调试程序等),因此,必须借助仿真开发工具所提供的开发手段来进行。真开发工具所提供的开发手段来进行。 一般来说,一般来说,仿真开发工具应具有如下仿真开发工具应具有如下最基本的功能最基本的功能。2930(1)用户样机程序的输入与修改。用户样机程序的输入与修改。(2)程序的运行、调试(单步运行、设置断点运行)、排错、状态查询等程序的运行、调试(单步运行、设置断点运行)、排错、状态查询等功能。功能。(3)用户样机硬件电路的诊断与检查。用户样机硬件电路的诊断与检查。(4)有较全的开发软件。用户可用有较全的开发软件。用户可用C语言(或汇编语言)编制应用程序;语言(或汇编语言)编制应用程序;由开发系统编译链接生成目标文件、可执行文件。配有反汇编软件,能将由开发系统编译链接生成目标文件、可执行文件。配有反汇编软件,能将目标程序转换成汇编语言程序;有丰富的子程序可供用户选择调用。目标程序转换成汇编语言程序;有丰富的子程序可供用户选择调用。(5)将调试正确的程序写入到程序存储器中。将调试正确的程序写入到程序存储器中。 下面介绍下面介绍常用常用的的仿真开发工具仿真开发工具。30311. 仿真开发系统简介仿真开发系统简介 通用机仿真开发系统是目前设计者使用最多的一类开发装置,由在线仿通用机仿真开发系统是目前设计者使用最多的一类开发装置,由在线仿真器与真器与PC机上运行的仿真开发软件两部分组成。这是一种通过机上运行的仿真开发软件两部分组成。这是一种通过PC机的机的USB口,外加在线仿真器的在线仿真开发系统,如口,外加在线仿真器的在线仿真开发系统,如图图14-6所示。所示。 在调试用户程序时,在线仿真器一侧与在调试用户程序时,在线仿真器一侧与PC机的机的USB口相连,另一侧的仿口相连,另一侧的仿真插头插入到用户样机的单片机插座上,来对样机上的单片机进行真插头插入到用户样机的单片机插座上,来对样机上的单片机进行“仿仿真真”。从仿真插头向在线仿真器看去,看到的就是一个。从仿真插头向在线仿真器看去,看到的就是一个“单片机单片机”。 这个这个“单片机单片机”是是“出借出借”给用户样机的,暂时代替用户样机上的单片机。仿给用户样机的,暂时代替用户样机上的单片机。仿真开发系统除了真开发系统除了“出借出借”单片机外,还单片机外,还“出借出借”仿真用的仿真用的RAM,来暂收代,来暂收代32图图14-6 通用机仿真开发系统通用机仿真开发系统 33替用户样机上的程序存储器,存放待调试的用户程序。但是这个替用户样机上的程序存储器,存放待调试的用户程序。但是这个“单片机单片机”片内程序的运行是可以片内程序的运行是可以跟踪、修改跟踪、修改和和调试调试的。的。由于有由于有PC机机上强大的仿真上强大的仿真开发软件支持,可在开发软件支持,可在PC机的其屏幕上观察用户程序的运行情况。机的其屏幕上观察用户程序的运行情况。 当按照当按照图图14-6将仿真开发系统与将仿真开发系统与PC机联机后,用户可利用机联机后,用户可利用PC机上的机上的仿真开发软件,在仿真开发软件,在PC机上编辑、修改源程序,然后通过翻译软件(机上编辑、修改源程序,然后通过翻译软件(C51语语言编程翻译软件为相应的编译程序,汇编语言编程翻译软件为汇编程序)言编程翻译软件为相应的编译程序,汇编语言编程翻译软件为汇编程序)将其翻译成机器代码,传送到在线仿真器中的将其翻译成机器代码,传送到在线仿真器中的“仿真仿真RAM”中,这时用户中,这时用户可使用在线仿真器,采用可使用在线仿真器,采用单步、断点、跟踪、全速单步、断点、跟踪、全速等手段调试用户程序,等手段调试用户程序,并进行修改和查找软、硬件故障,将系统状态实时地显示在屏幕上。并进行修改和查找软、硬件故障,将系统状态实时地显示在屏幕上。3334待程序调试通过后,再使用仿真开发系统提供的编程器或专用编程器,把调待程序调试通过后,再使用仿真开发系统提供的编程器或专用编程器,把调试完毕的程序写入到单片机片内的试完毕的程序写入到单片机片内的Flash程序存储器中。此类仿真开发系统程序存储器中。此类仿真开发系统配置不同的在线仿真器,可仿真开发各种单片机。配置不同的在线仿真器,可仿真开发各种单片机。 但是随着但是随着ISP技术技术的普及,对于的普及,对于AT89S5x单片机也可不使用在线仿真器以单片机也可不使用在线仿真器以及编程器,用户只需要在及编程器,用户只需要在PC机上修改程序,然后将修改的程序直接写入用机上修改程序,然后将修改的程序直接写入用户样机的单片机的户样机的单片机的Flash存储器中,运行程序观察运行结果,如有问题可在存储器中,运行程序观察运行结果,如有问题可在PC机上修改程序,重新在线写入,直至运行结果满意为止。这样可省去在机上修改程序,重新在线写入,直至运行结果满意为止。这样可省去在线仿真器和编程器,但线仿真器和编程器,但不足的是不足的是,不能对用户程序进行硬件单步、断点、跟,不能对用户程序进行硬件单步、断点、跟踪、全速等手段来调试。踪、全速等手段来调试。 目前许多其他的单片机生产厂商仍在采用在线仿真来进行程序的调试。目前许多其他的单片机生产厂商仍在采用在线仿真来进行程序的调试。有的厂商每推出一种新型单片机芯片,都有相应的用于在线仿真的芯片,为有的厂商每推出一种新型单片机芯片,都有相应的用于在线仿真的芯片,为在线仿真器提供支持。在线仿真器提供支持。 3435 在工业现场,往往没有在工业现场,往往没有PC机的支持,此时可使用独立型仿真器。该类仿机的支持,此时可使用独立型仿真器。该类仿真器采用模块化结构,配有不同外设,如外存板、打印机、键盘真器采用模块化结构,配有不同外设,如外存板、打印机、键盘/显示器等,显示器等,用户可根据需要选用。由于没有用户可根据需要选用。由于没有PC机,这时使用独立型仿真器来进行的仿机,这时使用独立型仿真器来进行的仿真调试工作,要输入机器码,稍显麻烦一些。真调试工作,要输入机器码,稍显麻烦一些。2. 软件仿真开发工具软件仿真开发工具Proteus 使用软件虚拟仿真开发工具使用软件虚拟仿真开发工具Proteus进行单片机系统的设计与仿真,不需进行单片机系统的设计与仿真,不需要在线仿真器,也不需要用户样机,直接就可以在要在线仿真器,也不需要用户样机,直接就可以在PC机上进行。调试完毕机上进行。调试完毕的软件可将其机器代码写入到片内的软件可将其机器代码写入到片内Flash程序存储器中,一般能直接投入运程序存储器中,一般能直接投入运行。行。 但但Proteus是软件模拟器是使用是软件模拟器是使用纯软件纯软件来对用户系统仿真,不能进行用来对用户系统仿真,不能进行用3536户样机硬件部分的诊断与实时在线仿真。因此在系统的开发中,一般是先户样机硬件部分的诊断与实时在线仿真。因此在系统的开发中,一般是先用用Proteus仿真软件设计出系统的虚拟的硬件原理电路,编写程序,在仿真软件设计出系统的虚拟的硬件原理电路,编写程序,在Proteus环境下仿真调试通过。然后再依照仿真的结果,完成实际的硬件设环境下仿真调试通过。然后再依照仿真的结果,完成实际的硬件设计,再将仿真调试通过的程序写入到用户样机的计,再将仿真调试通过的程序写入到用户样机的Flash存储器中,观察运行存储器中,观察运行结果,如果有问题,再连接硬件仿真器去分析、调试。结果,如果有问题,再连接硬件仿真器去分析、调试。3. 用户样机的源程序调试用户样机的源程序调试 下面介绍如何使用仿真开发工具进行汇编语言源程序编写、调试以及与下面介绍如何使用仿真开发工具进行汇编语言源程序编写、调试以及与用户样机硬件联调工作。用户样机硬件联调工作。 用户源程序调试过程如用户源程序调试过程如图图14-7所示,可分为以下所示,可分为以下4个步骤。个步骤。3637图图14-7 用户样机软件设计、调试的过程用户样机软件设计、调试的过程 3838 (1)输入用户源程序输入用户源程序。用户使用编辑软件,按照汇编语言源程序要求的。用户使用编辑软件,按照汇编语言源程序要求的格式、语法规定,把源程序输入到格式、语法规定,把源程序输入到PC机中,并保存在磁盘上。机中,并保存在磁盘上。 (2)在在PC机上,利用编译程序对用户源程序进行编译,直至语法错误全机上,利用编译程序对用户源程序进行编译,直至语法错误全部纠正为止。如无语法错误,则进入下一个步骤。部纠正为止。如无语法错误,则进入下一个步骤。 (3)动态在线调试。动态在线调试。这一步对用户的源程序进行调试。上述的步骤这一步对用户的源程序进行调试。上述的步骤(1)、步骤()、步骤(2)是一个纯粹的软件运行过程,而在这一步,必须要有在)是一个纯粹的软件运行过程,而在这一步,必须要有在线仿真器配合,才能对用户源程序进线仿真器配合,才能对用户源程序进行调试。用户程序中分为与用户样机行调试。用户程序中分为与用户样机硬件无关以及与用户样机紧密相关的程序。硬件无关以及与用户样机紧密相关的程序。3939 对于与用户样机硬件无关的程序,如计算程序,虽然已经没有语法错误,对于与用户样机硬件无关的程序,如计算程序,虽然已经没有语法错误,但可能存在逻辑错误,使计算结果不正确,此时必须借助于在线仿真器的但可能存在逻辑错误,使计算结果不正确,此时必须借助于在线仿真器的动态在线调试手段,如单步运动态在线调试手段,如单步运行、设置断点等,发现逻辑错误,然后返回行、设置断点等,发现逻辑错误,然后返回到步骤(到步骤(1)修改,直至逻辑错误纠正为止。)修改,直至逻辑错误纠正为止。 对于与用户样机硬件紧密相关的程序段(如接口驱动程序),一定要先对于与用户样机硬件紧密相关的程序段(如接口驱动程序),一定要先把在线仿真器的仿真插头插入用户样机的单片机插座中(见把在线仿真器的仿真插头插入用户样机的单片机插座中(见图图14-6),进),进行在线仿真调试,利用仿真开发系统提供单步、设置断点等调试手段,来行在线仿真调试,利用仿真开发系统提供单步、设置断点等调试手段,来进行系统的调试。进行系统的调试。 有关部分程序段运行有可能不正常,可能是软件逻辑上有问题,也可能有关部分程序段运行有可能不正常,可能是软件逻辑上有问题,也可能是硬件有故障,必须先通过在线仿真调试程序提是硬件有故障,必须先通过在线仿真调试程序提供的调试手段,把硬件故供的调试手段,把硬件故4040障排除以后,再与硬件配合,对障排除以后,再与硬件配合,对用户程序进行动态在线调试。对于软件的用户程序进行动态在线调试。对于软件的逻辑错误,则返回到第一步进行修改,直至逻辑错误消除为止。在调试这逻辑错误,则返回到第一步进行修改,直至逻辑错误消除为止。在调试这类程序时,硬件调试与软件调试是不能完全分开的。许多硬件错误是通过类程序时,硬件调试与软件调试是不能完全分开的。许多硬件错误是通过软件的调试而发现和纠正的。软件的调试而发现和纠正的。 (4)将调试完毕的用户程序通过编程器或将调试完毕的用户程序通过编程器或ISP写入,固化在程序存储器中。写入,固化在程序存储器中。4用户样机的硬件调试用户样机的硬件调试 当用户样机全部焊接完毕,就可对用户样机的硬件进行调试。首先进行当用户样机全部焊接完毕,就可对用户样机的硬件进行调试。首先进行静态调试,静态调试的目的是排除明显的硬件故障。静态调试,静态调试的目的是排除明显的硬件故障。 4141(1)用户样机的静态调试)用户样机的静态调试 静态调试工作分为两步。静态调试工作分为两步。 第一步第一步是在样机加电之前,根据硬件逻辑设计图,先用万用表等工具,是在样机加电之前,根据硬件逻辑设计图,先用万用表等工具,仔细检查样机线路是否连接正确,并核对元器件的型号、规格和安装是否仔细检查样机线路是否连接正确,并核对元器件的型号、规格和安装是否符合要求,应特别注意电源系统的检查,以防止电源的短路和极性错误,符合要求,应特别注意电源系统的检查,以防止电源的短路和极性错误,并重点检

    注意事项

    本文(第14章 系统设计与调试.ppt)为本站会员(春哥&#****71;)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开