单片机教程第2章

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第2章单片及开发系统实训2单片机开发系统及使用2.1单片机开发系统2.2单片机开发系统的功能2.3单片机应用系统的调试2.4单片机开发系统举例返回主目录第2章单片机开发系统第2章单片及开发系统实训2单片机开发系统及使用1.实训目的(1)了解单片机开发系统的基本组成及功能。(2)通过最简应用系统实例了解单片机开发系统的使用方法。2.实训设备与器件实训设备:单片机开发系统。实训电路:参见附录1原理图。第2章单片及开发系统3.实训步骤及要求1)系统连接参照图2.1将单片机开发系统、实验板及计算机连接起来。注意单片机开发系统的电源不要接反。2)输入、编辑汇编语言源程序利用DOS提供的EDIT或其它文本编辑软件QE、SK等,输入下面程序。注意,分号后面的文字为说明文字,输入时可以省略。保存文件时,程序名后缀应为ASM,例如,LED1.ASM。第2章单片及开发系统程序;说明ORG0000H;程序从地址0000H开始存放START:MOVP1,#00H;把立即数00H送P1口,点亮所有发光二极管ACALLDELAY;延时MOVP1,#0FFH;灭掉所有发光二极管ACALLDELAY;延时第2章单片及开发系统AJMPSTART;重复闪动DELAY:MOVR3,#0FFH;延时子程序开始DEL2:MOVR4,#0FFHDEL1:NOPDJNZR4,DEL1DJNZR3,DEL2RET;子程序END;汇编程序结束第2章单片及开发系统图2.1MICE-51单片机开发系统连接图计算机RS232仿真电缆MICE-51仿真主机键盘LED显示器串行插座8031插座实验板电源+5V+-工具软件安装仿真插座串行通信电缆第2章单片及开发系统3)启动单片机开发系统调试软件使用不同的单片机开发系统,调试软件也有所不同。例如,MICE-51单片机开发系统的调试软件是MBUG。不同的调试软件,其功能大致相同。在调试软件中,完成以下操作:(1)打开(Open)上一步输入的汇编语言源程序文件。(2)将汇编语言源程序汇编(Assemble),生成十六进制文件。(3)将汇编后生成的十六进制文件装载(Load)到单片机开发系统的仿真RAM中。第2章单片及开发系统4)运行及调试程序(1)运行(Execute)程序,观察实验板上8个发光二极管的亮灭状态。(2)单步运行(Step)程序,观察每一句指令运行后实验板上8个发光二极管的亮灭状态。5)修改、运行程序将程序中第2行的MOVP1,#00H修改为MOVP1,#55H第4行的MOVP1,#0FFH修改为MOVP1,#0AAH,重复步骤2)~步骤4)。第2章单片及开发系统4.实训分析与总结(1)利用单片机开发系统运行、调试程序的步骤一般包括:输入源程序、汇编源程序、装载汇编后的十六进制程序及运行程序。在2.4节中,我们将以MICE-51单片机开发系统为例,详细介绍以上各步骤的具体操作。(2)为了方便程序调试,单片机开发系统一般提供以下几种程序运行方式:全速运行(简称运行Execute)、单步运行(Step)、跟踪运行(Trace)、断点运行(Breakpoint)等。全速运行可以直接看到程序的最终运行结果,实训中程序的运行结果是实验板上8个发光二极管一起闪动,跟实训一中的运行结果是完全相同的。第2章单片及开发系统单步运行可以使程序逐条指令地运行,每运行一步都可以看到运行结果,单步运行是调试程序中用得比较多的运行方式。跟踪运行与单步运行类似,不同之处在于跟踪可以进入子程序运行,在此不做赘述。试将实训中的程序跟踪运行,观察它与单步运行过程的不同。断点运行是预先在程序中设置断点,当全速运行程序时,遇到断点即停止运行,用户可以观察运行结果,断点运行对于调试程序提供了很大的方便。试将实训中的程序进行断点运行,观察其运行过程。第2章单片及开发系统(3)程序调试是一个反复的过程。一般来讲,片机硬件电路和汇编程序很难一次设计成功,因此,必须通过反复调试,不断修改硬件和软件,直到运行结果完全符合要求为止。第2章单片及开发系统2.1单片机开发系统单片机应用系统建立以后,电路正确与否,程序是否有误,怎样将程序装入机器等,这都必须借助单片机开发系统(装置)来完成。单片机开发系统是单片机编程调试的必需工具。单片机开发系统和一般通用计算机系统相比,在硬件上增加了目标系统的在线仿真器、编程器等部件,所提供的软件除有类似一般计算机系统的简单的操作系统之外,还增加了目标系统的汇编和调试程序等。单片机开发系统有通用和专用两种类型。通用的单片机开发系统配备多种在线仿真器和相应的开发软件,使用时,只要更换系统中的仿真器板,就能开发相应的单片机或微处理器。第2章单片及开发系统只能开发一种类型的单片机或微处理器的开发系统称为专用开发系统。功能强、操作方便的单片机开发系统能加快单片机应用系统的研制周期。国外早已研制出功能较全的产品,但价格昂贵,在国内没有得到推广。国内很多单位根据我国国情研制出以8031作为开发芯片的MCS-51单片机开发系统的系列产品。例如MICE-51、DVCC-51、SICE、SYBER等。这些产品大部分是开发型单片机,通过软件手段可达到或接近国外同类产品的水平。尽管它们的功能强弱并不完全相同,但都具有较高的性能价格比。第2章单片及开发系统2.2单片机开发系统的功能2.2.1在线仿真功能单片机的仿真器本身就是一个单片机系统,它具有与所要开发的单片机应用系统相同的单片机芯片(如8031或8051等)。当一个单片机用户系统接线完毕后,由于自身无调试能力,无法验证好坏,那么我们可以把应用系统中的单片机芯片拔掉,插上在线仿真器提供的仿真头(参考图2.1)。此时单片机应用系统和仿真器共用一块单片机芯片。在开发系统上通过在线仿真器调试单片机应用系统时,就像使用应用系统中真实的单片机一样,这种觉察不到的“替代”称之为“仿真”。第2章单片及开发系统在线仿真器的英文名为InCircuitEmulator(简称ICE)。ICE是由一系列硬件构成的设备。开发系统中的在线仿真器应能仿真目标系统(即应用系统)中的单片机,并能模拟目标系统的ROM、RAM和I/O口。使在线仿真时目标系统的运行环境和脱机运行的环境完全“逼真”,以实现目标系统的一次性开发。仿真功能具体地体现在以下几个方面。第2章单片及开发系统1)单片机仿真功能在线仿真时,开发系统应能将在线仿真器中的单片机完整地出借给目标系统,不占用目标系统单片机的任何资源,使目标系统在联机仿真和脱机运行时的环境(工作程序、使用的资源和地址空间)完全一致,实现完全的一次性仿真。单片机的资源包括:片上的CPU、RAM、SFR、定时器、中断源、I/O口以及外部可扩充的程序存储器和数据存储器地址空间。这些资源应允许目标系统充分自由地使用,不应受到任何限制,使目标系统能根据单片机固有的资源特性进行硬件和软件的设计。第2章单片及开发系统2)模拟功能在开发目标系统的过程中,单片机的开发系统允许用户使用它内部的RAM存储器和输入/输出来替代目标系统中的ROM程序存储器、RAM数据存储器和输入/输出,使用户在目标系统样机还未完全配置好以前,便可以借用开发系统提供的资源进行软件的开发。在研制目标系统开始的初级阶段,目标程序还未生成,此时用户编写的程序必须存放在开发系统RAM存储器内,以便于对程序进行调试和修改。开发系统所能出借的可作为目标系统程序存储器的RAM,我们常称之为仿真RAM,开发系统中仿真RAM的容量和地址映射应和目标机系统完全一致。第2章单片及开发系统2.2.2调试功能开发系统对目标系统软、硬件的调试功能强弱,将直接关系到开发的效率。性能优良的单片机开发系统应具有下列调试功能。1.运行控制功能开发系统应能使用户有效地控制目标程序的运行,以便检查程序运行的结果,对存在的硬件故障和软件错误进行定位。第2章单片及开发系统(1)单步运行:能使CPU从任意的程序地址开始,执行一条指令后停止运行。(2)断点运行:允许用户任意设置断点条件,启动CPU从规定地址开始运行后,当断点条件(程序地址和指定断点地址符合或者CPU访问到指定的数据存储器单元等条件)符合以后停止运行。(3)全速运行:能使CPU从指定地址开始连续地全速运行目标程序。(4)跟踪运行:类似单步运行过程,但可以跟踪到子程序中运行。第2章单片及开发系统2.目标系统状态的读出修改功能当CPU停止执行目标系统的程序后,允许用户方便地读出或修改目标系统资源的状态,以便检查程序运行的结果、设置断点条件以及设置程序的初始参数。可供用户读出/修改的目标系统资源包括:(1)程序存储器(开发系统中的仿真RAM存储器或目标机中的程序存储器)(2)单片机中片内资源(工作寄存器、特殊功能寄存器、I/O口、RAM数据存储器、位单元)。(3)系统中扩展的数据存储器、I/O口。第2章单片及开发系统3.跟踪功能高性能的单片机开发系统具有逻辑分析仪的功能,在目标程序运行过程中,能跟踪存储目标系统总线上的地址、数据和控制信号的状态变化,跟踪存储器能同步地记录总线上的信息。用户可以根据需要显示跟踪存储器搜集到的信息,也可以显示某一位总线状态变化的波形,使用户掌握总线上状态变化的过程,对各种故障的定位特别有用,可大大提高工作效率。第2章单片及开发系统2.2.3辅助设计功能软件辅助设计功能的强弱也是衡量单片机开发系统性能高低的重要标志。单片机应用系统软件开发的效率在很大程度上取决于开发系统的辅助设计功能。1.程序设计语言单片机的程序设计语言有机器语言、汇编语言和高级语言。机器语言只在简单的开发装置中才使用,程序的设计、输入、修改和调试都很麻烦。它只能用来开发一些非常简单的单片机应用系统。第2章单片及开发系统汇编语言具有使用灵活、程序容易优化的特点,是单片机中最常用的程序设计语言。但是用汇编语言编写程序还是比较复杂的,只有对单片机的指令系统非常熟悉,并具有一定的程序设计经验时,才能研制出功能复杂的应用程序。高级语言通用性好、程序设计人员只要掌握开发系统所提供的高级语言的使用方法,就可以直接用该语言编写程序。MCS-51系列单片机的编译型高级语言有:PL/M51、C-51、MBASIC-51等。解释型高级语言有BASIC-52、TINYBASIC等。编译型高级语言可生成机器码,解释型高级语言必须在解释程序支持下直接解释执行,因此编译型高级语言才能作为单片机开发语言。第2章单片及开发系统2.程序编辑单片机大都在一些简单的硬件环境中工作,因此大都直接使用机器代码程序。可借助开发系统提供的软件将用户系统的源程序翻译成目标程序。几乎所有的单片机开发系统都能与PC机连接,允许用户使用PC机的编辑程序编写汇编语言或高级语言程序。例如,PC机上的EDLIN行编辑和PE、WS等屏幕编辑程序,可使用户方便地将源程序输入到计算机开发系统中,生成汇编语言或高级语言的源文件。然后利用开发系统提供的交叉汇编或编译系统,将源程序编译成可在目标机上直接运行的目标程序。开发型单片机一般都具有能和PC机串行通信的接口,在PC机上生成的目标程序可通过命令直接传输到开发机的RAM中,这大大减轻了人工输入机器码的繁重劳动。第2章单片及开发系统2.2.4程序固化功能在单片机应用系统中常需要扩展EPROM或EEPROM,作为存放程序和常数的存储器。应用程序尚未调好时可借用开发系统的存储器。当系统调试完毕,确认软件无故障时,应把用户应用系统的程序固化到EPROM中去,EPROM写入器就是完成这种任务的专用设备,它也是单片机开发系统的重要组成部分。第2章单片及开发系统2.3单片机应用系统的调试2.3.1硬件调试方法单片机应用系统的硬件调试和软件调试是分不开的,许多硬件故障是在调试软件时才发现的,但通常是先排除系统中明显的硬件故障后,再和软件结合起来调试。1.常见的硬件故障1)逻辑错误样机硬件的逻辑错误是由于设计错误和加工过程中的工艺性错误所造成的。这类错误包括错线、开路、短路等几种,其中短路是最常见的故障。在印刷电路板布线密度高的情况下,极易因工艺原因造成短路。第2章单片及开

1 / 44
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功