1、 第9章 单片机应用系统开发技术1第第9 9章章 单片机应用系统开发技术单片机应用系统开发技术总体要求:总体要求:了解单片机的开发系统及开发工具 掌握单片机应用系统软、硬件设计的基本方法 了解单片机应用系统抗干扰设计的基本方法 理解单片机应用系统调试的基本方法 了解应用实例软、硬件设计过程.第9章 单片机应用系统开发技术2学习重点:学习重点:单片机应用系统的设计原则与过程 目前,MCS-51系列单片机以其独特优越的性能和低廉的价格,在工业实时控制、智能化仪表、数据采集、计算机通信等各个领域得到了极为广泛的应用。本章将结合单片机的特点,从应用角度出发,对单片机应用系统的设计、开发工具和应用实例作
2、进一步的分析和讨论。.第9章 单片机应用系统开发技术9.1 9.1 单片机的开发系统及开发工具单片机的开发系统及开发工具9.2 9.2 单片机应用系统的设计原则与过程单片机应用系统的设计原则与过程9.3 9.3 单片机应用系统的抗干扰设计单片机应用系统的抗干扰设计9.4 9.4 单片机应用系统实例单片机应用系统实例3.第9章 单片机应用系统开发技术49.1 9.1 单片机的开发系统及开发工具单片机的开发系统及开发工具9.1.1 9.1.1 单片机的开发系统单片机的开发系统 1.概述 单片机应用系统建立以后,电路正确与否,程序是否有误,怎样将程序装入机器等,这都必须借助单片机开发系统装置来完成。
3、单片机开发系统是单片机编程调试的必需工具。单片机开发系统和一般通用计算机系统相比,在硬件上增加了目标系统的在线仿真器、编程器等部件,所提供的软件除有类似一般计算机系统的简单的操作系统之外,还增加了目标系统的汇编和调试程序等。.第9章 单片机应用系统开发技术5 在线仿真功能在线仿真功能 在线仿真器简称ICE(In Circuit Emulator),是由一系列硬件组成的单片机开发装置。仿真功能 在线仿真时,开发系统应能将在线仿真器中的单片机完整地出借给目标系统,不占用目标系统单片机的任何资源。模拟功能 在开发目标系统的过程中,单片机的开发系统允许用户使用它内部的RAM存储器和I/O来替代目标系统
4、中的ROM程序存储器、RAM数据存储器和I/O,使用户在目标系统样机还未完全配置好以前,便可以借用开发系统提供的资源进行软件的开发。2.单片机开发系统的功能.第9章 单片机应用系统开发技术6 调试功能调试功能 开发系统的调试功能应包含以下几个方面:运行控制功能 开发系统应能使用户有效地控制目标程序的运行,以便检查程序运行的结果,对存在的硬件故障和软件错误进行修改。至少应具有下列运行模式:a)单步运行:从任意的程序地址开始执行一条指令后停止运行。b)断点运行:允许用户任意设置断点,从规定地址开始运行后,遇到符合条件的断点后停止运行。c)连续运行:从指定地址开始,连续地、全速地运行目标程序。d)起
5、停控制:允许用户根据需要启动或停止运行目标程序。.第9章 单片机应用系统开发技术7 对目标系统状态的读出、修改功能 当CPU停止执行目标系统的程序后,允许用户方便地读出或修改目标系统所有资源的状态,以便检查程序运行的结果。可供用户读出、修改的目标系统资源应包括:a)程序存储器(开发系统中的仿真ROM或目标机中的ROM);b)单片机片内资源(工作寄存器、特殊功能寄存器、I/O 口、RAM及位存储单元);c)系统中扩展的RAM和IO口。跟踪功能.第9章 单片机应用系统开发技术8 辅助设计功能辅助设计功能 单片机开发系统的辅助设计功能体现在以下几个方面:程序编辑 程序设计语言 其他软件功能 程序固化
6、功能程序固化功能 当单片机应用系统程序调试完成后,需要把目标程序写入目标机的ROM中,这个过程称为程序固化。固化时需要有适当的编程电压和硬软件条件,开发系统应具有这种功能。.第9章 单片机应用系统开发技术9 3.开发系统的分类 目前国内用于MCS-51系列单片机的开发系统很多,大致可分为以下四种:(1 1)通用型单片机开发系统)通用型单片机开发系统 (2 2)实用型开发系统)实用型开发系统 (3 3)通用机开发系统)通用机开发系统 (4 4)模拟开发系统)模拟开发系统 .第9章 单片机应用系统开发技术109.1.2 9.1.2 单片机应用系统的开发工具单片机应用系统的开发工具 1.开发工具概述
7、 一个单片机应用系统经过预研,总体设计、硬件设计、软件设计、制版、元器件安装后,在系统程序存储器中写入编制好的应用程序,系统即可运行。但一次性成功几乎是不可能的,多少会出现一些硬件或软件上的错误,需通过调试来发现和改正错误。然而单片机应用系统本身并无自开发能力,仅靠万用表、示波器等常规工具显然是不够的,通常要借助于一个特殊的计算机系统来完成,这个特殊的计算机系统称为单片机开发系统或单片机开发机(仿真器)。.第9章 单片机应用系统开发技术11 2开发工具的主要作用 单片机开发系统与一般的通用计算机系统相比,在硬件上增加了目标系统在线仿真器、编程器,所提供的软件除计算机系统一般的操作系统外,还增加
8、了汇编、反汇编和调试程序等。其主要作用是:对系统硬件电路诊断、检查;应用程序的输入和修改;程序调试、单步运行、设置断点运行,各寄存器状态 查询;将程序固化到ROM中去。.第9章 单片机应用系统开发技术129.2 9.2 单片机应用系统的设计原则与过程单片机应用系统的设计原则与过程9.2.1 9.2.1 单片机应用系统的设计原则单片机应用系统的设计原则 通常我们要求单片机系统应具有可靠性高、性价比高、操作维护方便和设计周期短等特点,下面我们将对这几点作详细讨论。.第9章 单片机应用系统开发技术13 1高可靠性 使用可靠性高的元器件,以防止器件的损坏影响系 统的可靠运行。对供电电源采用抗干扰措施。
9、采用双机系统。设计电路板时布线和接地要合理,严格安装硬件设 备及电路。输入输出通道抗干扰措施。进行软硬件滤波。采用必要的冗余设计或增加系统自诊断功能。.第9章 单片机应用系统开发技术14 2高性能价格比 单片机除体积小、功耗低等特点外,最大的优势在于高性能价格比。一个单片机应用系统能否被广泛使用,性价比是其中一个关键因素。因此,在设计时,除了保持高性能外,简化外围硬件电路,在系统性能和速度许可的范围内,尽可能用软件程序取代硬件功能电路,以降低系统的制造成本。3操作维护方便 操作方便表现在操作简单、直观形象和便于操作,应从普通人的角度考虑操作和维护方便,尽量减少对操作人员专用知识的要求,以利用系
10、统的推广。.第9章 单片机应用系统开发技术15 4设计周期短 系统设计周期是衡量一个产品有无效益的一个主要依据,只有缩短设计周期,才能有效地降低设计成本,充分发挥新系统的技术优势,及早地占领市场并具有一定的竞争力。9.2.2 9.2.2 单片机应用系统的设计过程单片机应用系统的设计过程 1系统总体设计 系统总体设计是单片机系统设计的前提,合理的总体设计是系统成败的关键。总体设计关键在于对系统功能和性能的认识和合理分析,系统单片机及关键芯片的选型,系统基本结构的确立和软、硬件功能的划分。.第9章 单片机应用系统开发技术16图9-1 单片机系统研制过程框图.第9章 单片机应用系统开发技术17 2硬
11、件设计 硬件和软件是单片机控制系统的两个重要方面,硬件是基础,软件是关键,但两者又是可以相互转化的。硬件设计时,应考虑留有充分余量,电路设计力求正确无误,因为在系统调试中不易修改硬件结构。设计硬件原理图 程序存储器 数据存储器和I/O接口 数据存储器的设计原则是:在存储容量满足的前提下,尽可能减少存储芯片的数量。建议使用大容量的RAM芯片,以减少存储器芯片数目,使译码电路简单,但应避免盲目地扩大存储容量。.第9章 单片机应用系统开发技术18 地址译码电路 总线驱动能力 系统速度匹配 抗干扰措施 另外,可以采用隔离放大器、光电耦合器件抗除输入/输出设备与系统之间的地线干扰;采用差分放大器抗除共模
12、干扰;采用平滑滤波器抗除噪声干扰;采用屏蔽手段抗除辐射干扰等。最后,应注意在系统硬件设计时,要尽可能充分地利用单片机的片内资源,使自己设计的电路向标准化、模块化方向靠拢。.第9章 单片机应用系统开发技术19 3软件设计 软件是单片机应用系统中的一个重要组成部,图9-2给出了软件设计的流程图。单片机应用系统的软件设计是研制过程中任务最繁重的一项工作,难度也比较大。对于某些较复杂的应用系统,不仅要使用汇编语言来编程,有时还要使用高级语言。软件方案设计 建立数学模型 软件程序流程图设计 编制程序 软件检查.第9章 单片机应用系统开发技术20图9-2 软件设计流程图.第9章 单片机应用系统开发技术21
13、 4系统调试 单片机应用系统的总体调试是系统开发的重要环节。当完成了单片机应用系统的硬件、软件设计和硬件组装后,便可进入单片机应用系统调试阶段。系统调试的目的是要查出用户系统中硬件设计与软件设计中存在的错误及可能出现的不协调问题,以便修改设计,最终使用户系统能正确可靠地工作。系统调试包括硬件调试、软件调试和软、硬件联调。根据调试环境不同,系统调试又分为模拟调试与现场调试。系统调试的一般过程如图9-3。各种调试所起的作用是不同的,它们所处的时间段也不一样,不过它们的目的都是为了查出用户系统中存在的错误或缺陷。在调试过程中要不断调整、修改系统的硬件和软件,直到其正确为止。.第9章 单片机应用系统开
14、发技术22图9-3 系统调试的一般过程.第9章 单片机应用系统开发技术23 单片机应用系统调试工具 在单片机应用系统的调试过程中,常用的调试工具有以下几种。单片机开发系统 万用表 逻辑笔 逻辑脉冲发生器与模拟信号发生器 示波器 逻辑分析仪 单片机应用系统的一般调试方法 单片机应用系统的一般调试方法有。硬件调试:a)静态调试 b)动态调试.第9章 单片机应用系统开发技术24 软件调试:a)先独立后联机 b)先分块后组合 c)先单步后连续 系统联调:a)软、硬件能否按预定要求配合工作 b)系统运行中是否有潜在的设计时难以 预料的错误 c)系统的动态性能指标(包括精度、速 度参数)是否满足设计要求。
15、现场调试 现场调试对用户系统的调试来说是最后必需的一个过程,只有经过现场调试的用户系统才能保证其可靠地工作。现场调试仍需利用开发系统来完成,其调试方法与前述类似。.第9章 单片机应用系统开发技术259.3 9.3 单片机应用系统的抗干扰设计单片机应用系统的抗干扰设计 9.3.1 9.3.1 硬件抗干扰设计硬件抗干扰设计 由于各应用系统所处的环境不同,面临的干扰源也不同,相应采取的抗干扰措施也不尽相同。在单片机应用系统的设计中,硬件抗干扰措施主要从下面几个方面考虑。.第9章 单片机应用系统开发技术26 1电源的干扰及抗干扰措施 对于单片机应用系统来说,最严重的干扰来源于电源。由于任何电源及辅电线
16、都存在内阻、分布电容和电感等,正是这些因素引发了电源的噪声干扰。一般解决的方法是:(1)采用交流稳压电源保证供电的稳定性,防止电源的过电压和欠电压。(2)利用低通滤波器滤除高次谐波,改善电源波形。(3)采用隔离变压器,并使其一次侧、二次侧之间均采用屏蔽层隔离,以减少其分布电容,提高抗共模干扰能力。(4)采用分散独立功能块供电,以减少公共阻抗的相互耦合以及公共电源的相互耦合。.第9章 单片机应用系统开发技术27 2输入输出通道干扰及抗干扰措施 (1)输入输出通道是单片机与外设、被控对象进行信息交换的渠道。由输入输出通道引起的干扰主要由公共地线引发,其次是受到静电噪声和电磁波干扰。常用的方法有:(
17、2)摸拟电路通过隔离放大器隔离,数字电路通过光电耦合器隔离。模拟接地和数字接地严格分开,隔离器输入回路和输出回路的电源分别供电。(3)用双绞线作长线传输线能有效地抑制共模噪声及电磁场干扰,并应对传输线进行阻抗匹配,以免产生反射,使信号失真。(4)传感器后级的变送器应尽量采用电流型传输方式,因电流型比电压型抗干扰能力要高。.第9章 单片机应用系统开发技术28 3.电磁场干扰及抗干扰措施 (1)对干扰源进行电磁屏蔽(如变压器、继电器等)。(2)对整个系统进行电磁屏蔽,传输线采用屏蔽线。4印制电路板及电路的抗干扰措施 (1)将强、弱电路严格分开,尽量不要把它们设计在一块 印制电路扳上。(2)电源线的
18、走向应尽量与数据传输方向一致。(3)电源的地线应尽量加粗。(4)在大规模集成电路芯片的供电端都应加高频滤波电 容,在各个供电接点上还应加足够容量的退耦电容。.第9章 单片机应用系统开发技术299.3.2 9.3.2 软件抗干扰设计软件抗干扰设计 软件抗干扰设计是单片机应用系统的一个重要组成部分。干扰对单片机系统可能造成下列后果:数据采集误差增大,程序“飞走”失控或陷入死循环。尽管在硬件方面采取种种抗干扰措施,但仍不能完全消除这些干扰,必须同时从软件方面采取适当的措施,才能取得良好的抗干扰效果。如能正确地采用软件抗干扰措施,与硬件抗干扰措施构成双重抑制,将大大地提高系统的可靠性。而且采用软件抗干
19、扰设计,通常成本低、见效快,能起到事半功倍的效果。软件方面抗干扰措施通常有以下几种方法:.第9章 单片机应用系统开发技术30 1数据采集误差 对于实时数据采集系统来说,为了消除传感器通道中的干扰信号,在早期常采用硬件电路措施,如有源或无源滤波网络、过程模拟滤波器对信号实现滤波。同样,随着计算机运算速度的提高,可以利用软件技术对信号实现数字滤波。下面介绍几种常用的方法。(1)算术平均值法 (2)比较舍取法 (3)中位值法 (4)一阶递推数字滤波法.第9章 单片机应用系统开发技术31 2开关量的抗干扰措施 (1)对于开关量输入,为了确保信息的正确性,可以采取多次读入进行比较,取多数情况的状态。(2
20、)对于开关量输出,通常是用来控制电感性的执行机构,如控制电磁阀。为了防止电磁阀因干扰产生误动作,可以在应用程序中每隔一段时间(比如几个毫秒)发出一次命令,不断地关闭阀门或打开阀门。这样就可以较好地消除由于扰动而引起的误动作。(3)对于输入开关量的机械抖动干扰,软件程序可以通过延时来进行消除。.第9章 单片机应用系统开发技术32 3程序“飞走”失控或进入死循环 系统受到干扰导致PC值改变后,PC值不是指向指令的首字节地址而可能指向指令中的中间字节单元即操作数,将操作数作为指令码执行;或使PC值超出程序区,将非程序区的随机数作为指令码运行,从而使程序失控“飞走”,或由于偶然巧合进入死循环。这里所说
21、的死循环并非程序编制中出现的死循环错误,而是指正常运行时程序正确,只是因为干扰而产生的死循环。解决方法有:(1)设置软件陷阱 (2)设置“看门狗”.第9章 单片机应用系统开发技术 (1)(1)设置软件陷阱设置软件陷阱 即在非程序区安排指令强迫复位。如用LJMP 0000H的机器码填满非程序区。这样不论PC失控后飞到非程序区的哪个字节,都能复位。也可在程序区每隔一段(如几十条指令)连续安排三条NOP指令。因为8051指令字节最长为三字节。当程序失控时,只要不跳转,指令连续执行,就会运行NOP指令,就能使程序恢复正常。(2)设置设置“看门狗看门狗”设置软件陷阱能解决一部分程序失控问题,但当程序失控
22、“飞走”进入某种死循环时,软件陷阱可能不起作用。使程序从死循环中恢复到正常状态的有效方法是设置时间监视器,时间监视器又称“看门狗”。33.第9章 单片机应用系统开发技术时间监视器有两种:一种是硬时钟,一种是软时钟。硬时钟是在CPU芯片外用硬件构成一个定时器,软时钟是利用片内定时/计数器,定时时间比正常执行一次程序循环所需时间要大。正常运行未受干扰时,CPU每隔一段时间“喂狗”一次,即对硬时钟输出复位脉冲使其复位;对软时钟重置时间常数复位。“喂狗”时间应比设定的定时时间要短,即在狗“未饿未叫”时“喂狗”(复位),使其始终不“叫”(不中断、不溢出)。当受到干扰,程序不能正常运行,陷入死循环时,因不
23、能及时“喂狗”,硬时钟或软时钟运行至既定的定时时间,硬时钟输出一个复位脉冲至CPU的RESET端使单片机复位。软时钟可产生中断,在中断服务子程序中修正或复位。上述硬、软时钟只需设置其中一种,各有利弊。软时钟不需增加硬件电路但要占用一个宝贵的定时/计数器资源;硬时钟不占资源,但要增加硬件电路和材料成本。34.第9章 单片机应用系统开发技术359.4 9.4 单片机应用系统实例单片机应用系统实例9.4.1 9.4.1 数码管时钟电路的设计数码管时钟电路的设计 1.系统设计引言 AT89C2051是一个低电压,高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读Flash程序存储器和
24、128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。AT89C2051是一个功能强大的单片机,但它只有20个引脚,15个双向输入/输出(I/O)端口,其中P1是一个完整的8位双向I/O口,两个外中断口,两个16位可编程定时计数器,两个全双向串行通信口,一个模拟比较放大器。其引脚如图9-4所示。.第9章 单片机应用系统开发技术36 图9-4 AT89C2051引脚图.第9章 单片机应用系统开发技术37 2.系统设计原理 以AT89C2051单片机来实现时钟计时显示有如下
25、几个要点:计算计数初值计算计数初值 时钟计时的关键问题是秒的产生,因为秒是最小时钟单位,但使用MCS-51的定时器/计数器进行定时,即使按工作方式1,其最大定时时间也只能达到131ms,离1s还差很远。为此,我们把秒计时用硬件定时和软件计数相结合的方法实现,即:把定时器的定时时间定为125ms,这样计数溢出8次就可得到1s,而8次计数可用软件方法实现。为得到125ms定时,我们可使用定时器/计数器0,以工作方式1进行,假定单片机为6MHz晶振,设计数初值为X,则有如下等式:(216X)2=125000 计算得计数初值X=3036,二进制表示为110011011100B,十六进制表示为0CDCH
26、。.第9章 单片机应用系统开发技术 设定定时器定时方式设定定时器定时方式 定时器采用中断定时方式完成,以便于通过中断服务程序进行溢出次数(每次125ms)的累计,计满8次即得到秒计时。实现方法实现方法 通过在程序中的数值累加和数值比较来实现从秒到分和从分到时的计时。38.第9章 单片机应用系统开发技术39 设置时钟显示及显示缓冲区设置时钟显示及显示缓冲区 假定时钟时间在6位LED数码管上进行显示(时、分、秒各占两位)。为此,要在内部RAM中设置显示缓冲区,共6个单元,与数码管对应关系见表9-1。显示缓冲区从左向右依次存放时、分、秒的数值。表9-1 LED显示器的缓冲单位 LED5LED4LED
27、3LED2LED1LED07EH7DH7CH7BH7AH79H.第9章 单片机应用系统开发技术40 3.3.系统硬件设计系统硬件设计 数码管时钟电路如图9-5所示,其采用AT89C2051单片机最小化应用设计,LED显示用动态扫描方式实现,P1口输出段码数据,P3.0P3.5口作扫描输出,P3.7接按钮开关。为了提供LED数码管的驱动电流,用三极管9012作电源驱动输出。为了提高秒计时的精确中。本设计中的计时采用定时器T0中断完成,其余状态循环调用显示子程序,当P3.7端口开关按下时,转入调时功能程序。.第9章 单片机应用系统开发技术41图9-5 采用AT89C2051的六位时钟电路.第9章
28、单片机应用系统开发技术42 4.4.系统软件设计系统软件设计 主程序(MAIN)主程序的主要功能是进行定时器/计数器的初始化编程,然后通过反复调用显示子程序的方法,等待125ms定时中断的到来。系统主程序流程图如图9-6所示。图9-6 系统主程序流程图.第9章 单片机应用系统开发技术43 加1子程序(DAAD1)加1子程序用于完成对秒、分和时的加1操作,中断服务程序中在秒、分、时加1时共有三处调用此子程序。加1子程序流程图如图9-7所示。图9-7 加1子程序流程 .第9章 单片机应用系统开发技术44 中断服务程序(PITO)中断服务程序的主要功能是进行计时操作。程序开始先判断计数溢出是否满了8
29、次,不满8次表明还没达到最小计时单位秒,中断返回;如满8次则表明已达到最小计时单位秒,程序继续向下执行,进行计时操作。中断服务程序流程如图9-8所示。.第9章 单片机应用系统开发技术45图9-8 中断服务程序流程图.第9章 单片机应用系统开发技术46 显示子程序 数码管显示的数据存放在内存单元79H7EH中,其中79H7AH存放秒数据,7BH7CH存放分数据,7DH7EH存放时数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出79H7EH某一地址中的数据,然后查得对应的显示用段码从P1口输出。P3口将
30、对应的数码管选中,就能显示该地址单元的数据值。.第9章 单片机应用系统开发技术47 9.4.2 9.4.2 汽车倒车测距仪应用实例汽车倒车测距仪应用实例 汽车倒车测距仪能测量并显示车辆后部障碍物离车辆的距离,同时用间歇嘟嘟声发出警报,嘟嘟声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察显示的障碍物距离,还可以凭听觉判断车后障碍物离车辆距离的远近。1.工作原理 超声波在空气中的传播速度与声速相当,约340m/s。从发射信号到遇障碍物反射接收,有几毫秒到几十毫秒的时间间隔,根据这个时间可以计算出障碍物距离。随着电子技术和单片机应用技术的发展,能比较精确测量车后障碍物距离的汽车倒车测距仪终于问世
31、了。.第9章 单片机应用系统开发技术48 2.主要技术指标:最大探测距离:不小于5m。测距相对误差:5。工作环境:-l0+55。雨、雪、雾、黑夜均不受影响。3.硬件电路 图9-9为汽车倒车测距仪电气原理图。.第9章 单片机应用系统开发技术49 图9-9 汽车倒车测距仪电原理图.第9章 单片机应用系统开发技术50 图9-10为40kHz超声波发射电路。401l两个与非门E、F组成多谐振荡器,调节RP1,可调节谐振频率。P3.4控制多谐振荡器的振荡。输出高电平时,电路振荡,发射40kHz超声波;输出低电平时,停发射。图9-10 40kHz超声波发射电路.第9章 单片机应用系统开发技术51 图9-1
32、1为嘟声音响电路。4011另两个与非门G、H组成多谐振荡器,谐振频率约800Hz左右,作为嘟声音频率,P3.控制多谐振荡器振荡,高电平时发嘟声,低电平时无声。CPU可根据距离远近控制P3.5输出方波的频率,即控制嘟声间隙时间。LM386作为功率放大,驱动扬声器发声。图9-11 嘟声音响电路.第9章 单片机应用系统开发技术52 图9-12为超声波遇障碍物反射信号接收电路。前三个LM324运算放大器A、B、C组成三级回波信号放大电路。其中L1和C9组成选频电路,滤除40kHz之外的干扰信号。VD2、C12组成信号半波整流滤波电路,将接收到的40kHz反射波交流信号转化成直流电压信号。第四个LM32
33、4运算放大器D作为电压比较器,将信号直流电压与设定的基准电压比较,信号电压大于基准电压,比较器输出正脉冲,VT5导通,P3.3接收负脉冲信号,CPU中断,记录发射信号与接收信号之间的时间,并转换为距离。.第9章 单片机应用系统开发技术53图9-12 超声波遇障碍物反射信号接收电路.第9章 单片机应用系统开发技术54 报警指示见图9-9。P3.6控制报警指示灯。当障碍物距离小于某一数值(例50cm)时,输出高电平,VT4导通,发光二极管VD1导通。此输出端也可作为安全距离自动制动的控制端。4.软件程序 主程序和中断程序 图9-13为主程序流程框图。发射40kHz超声波1ms,并立即启动定时/计数
34、器T0,CPU接收到回波信号后,立即中断,T0停。定时/计数器T0专用于记录CPU发射脉冲信号的前沿至回波脉冲信号前沿之间的时间,这个时间就作为换算障碍物距离和控制嘟声间隙的数据。为简化计算,取超声波传播速度为340m/s,考虑到信号来回,速度为170m/s,即17cm/ms。因此障碍物距离dT017cm/ms,相对误差可达2以内.第9章 单片机应用系统开发技术55图9-13 主程序流程框图.第9章 单片机应用系统开发技术56 显示与延时子程序 信号处理程序WORK图9-14 信号处理程序WORK流程图.第9章 单片机应用系统开发技术57本章小结本章小结 单片机开发包括两个部分:硬件和软件,只
35、有当单片机和其他电子器件及设备组成一个硬件系统,并配置适当的工作程序后,才能构成一个单片机应用系统。单片机应用系统的软、硬件调试,需要专门的开发工具(通常为一个特殊的计算机系统),称为单片机开发系统或称仿真机。常常采用的开发方法是把开发系统中的CPU和RAM暂时出借给用户系统,利用开发系统对用户系统的软硬件进行调试(又称仿真),然后把调好的程序固化到EPROM中,恢复用户系统中的CPU和RAM,对独立的用户系统进行试运行,若满足设计要求,则开发工作完成。.第9章 单片机应用系统开发技术58 单片机开发系统一般应该具有以下四个方面的基本功能:系统硬件电路的诊断与检查;用户程序的输入修改;程序的运行调试;程序固化。对于较完善的开发系统,还配备了程序的汇编、反汇编、程序文本打印及转存储,具有全速跟踪调试运行的能力。返回首页返回首页.第9章 单片机应用系统开发技术59.