1.4 单片机与嵌入式系统
所谓嵌入式系统,是指以嵌入式应用为目的的计算机系统。这个计算机系统是作为其他系统的组成部分使用的,单片机应用系统是典型的嵌入式系统。
1.4.1 单片机的特点和应用
单片机结构上的设计,在硬件、指令系统及I/O能力等方面都有独到之处,具有较强而有效的控制功能。虽然单片机只是一个芯片,但无论从组成还是逻辑功能上来看,都具有微机系统的含义。一块单片机芯片就是具有一定规模的微型计算机,再加上必要的外围器件,就可构成完整的计算机硬件系统。
1.单片机的应用特点
1)具有较高的性能价格比。高性能、低价格是单片机一个最显著的特点,其应用系统具有印制板小、接插件少、安装调试简单方便等特点,使单片机应用系统的性能价格比大大高于一般微机系统。
2)体积小,可靠性高。由单片机组成的应用系统结构简单,其体积特别小,极易对系统进行电磁屏蔽等抗干扰措施。一般情况下,单片机对信息传输及对存储器和I/O接口的访问,是在单片机内部进行的,因此不易受外界的干扰。所以单片机应用系统的可靠性比一般微机系统高得多。
3)控制功能强。单片机采用面向控制的指令系统,实时控制功能特别强。
在实时控制方面,尤其是在位操作方面单片机有着不俗的表现。CPU可以直接对I/O口进行输入、输出操作及逻辑运算,并且具有很强的位处理能力,能有针对性地解决由简单到复杂的各类控制任务。
在单片机内存储器ROM和RAM是严格分工的。ROM用作程序存储器,只存放程序、常数和数据表格,由于配置较大的程序存储空间ROM,可以将已调试好的程序固化在ROM中,这样不仅掉电时程序不丢失,还避免了程序被破坏,从而确保了程序的安全性。而RAM用作数据存储器,存放临时数据和变量,这种方案使单片机更适用于实时控制系统。
4)使用方便、容易产品化。由于单片机具有体积小、功能强、性价比较高、系统扩展方便、硬件设计简单等优点,单片机的硬件功能具有广泛的通用性。同一种单片机可以用在不同的控制系统中,只是其中所配置的软件不同而已。换言之,给单片机固化上不同的软件,便可形成用途不同的专用智能芯片,可称为“软件就是仪器”。
单片机开发工具具有很强的软、硬件调试功能,使研制单片机应用系统极为方便,加之现场运行环境的可靠性,因此使单片机能满足许多小型对象的嵌入式应用要求。
2.单片机的应用领域
单片机由于其体积小、功耗低、价格低廉,且具有逻辑判断、定时计数、程序控制等多种功能,广泛应用于智能仪表、可编程序控制器、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域。可以毫不夸张地说,凡是能想到的地方,单片机都可以用得上。
1)智能仪器。智能仪器是含有微处理器的测量仪器。单片机广泛应用于各种仪器仪表,使仪器仪表智能化取得了令人瞩目的进展。
2)工业控制。单片机广泛应用于各种工业控制系统中,如数控机床、温度控制、可编程顺序控制等。
3)家用电器。目前各种家用电器普遍采用单片机取代传统的控制电路,如洗衣机、电冰箱、空调、彩电、微波炉、电风扇及高级电子玩具等。由于配上了单片机,使其功能增强而身价倍增,深受用户的欢迎。
4)机电一体化。机电一体化是机械工业发展的方向,机电一体化产品是指集机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品。
5)PWM(Pulse Width Modulation)控制——脉冲宽度调制技术。单片机可以方便地实现PWM,直接利用数字量来等效地获得所需要波形的(模拟量)幅值。
单片机除以上各方面应用之外,还广泛应用于办公自动化领域(如复印机)、汽车电路、通信系统(如手机)、计算机外围设备等,成为计算机发展和应用的一个重要方向。
单片机的应用从根本上改变了传统控制系统的设计思想和设计方法。过去必须由模拟电路、数字电路及继电器控制电路实现的大部分功能,现在已能用单片机并通过软件方法实现。由于软件技术的飞速发展,各种软件系列产品的大量涌现,可以极大地简化硬件电路。“软件就是仪器”已成为单片机应用技术发展的主要特点,这种以软件取代硬件并能提高系统性能的控制技术,称之为微控制技术。微控制技术标志着一种全新概念的出现,是对传统控制技术的一次革命。随着单片机应用的推广普及,单片机技术无疑将是21世纪最为活跃的新一代电子应用技术。随着微控制技术(以软件代替硬件的高性能控制技术)的发展,单片机的应用已经导致传统控制技术发生巨大变革。
单片机正朝着高性能和多品种发展。然而,由于应用领域大量需要的仍是8位单片机,因此,各大公司纷纷推出高性能、大容量、多功能的新型8位单片机。目前,市场上广泛使用的主流产品仍然是51单片机。例如,由STC公司推出的高性价比的STC89系列单片机(带负载能力最强)和ATMEL公司生产的AT89系列单片机。由于51单片机使用方便、灵活且仍能满足绝大多数应用领域的需要,有着广泛的发展前景和市场需求。
1.4.2 嵌入式系统
从使用的角度来说,计算机应用可分为两类:一类是应用广泛且独立使用的计算机系统(如个人计算机、工作站等),另一类是嵌入式计算机系统。
所谓嵌入式系统,是“以应用为中心,以计算机技术为基础,软件硬件可裁减,功能、可靠性、成本、体积、功耗严格要求的专用计算机系统”,即以嵌入式应用为目的的计算机系统。一个手持的MP3和一个微型计算机工业控制系统都可以认为是嵌入式系统,它与通用计算机技术的最大差异是必须支持硬件和软件裁减,以适应应用系统对体积、功能、功耗、可靠性、成本等的特殊要求。
单片机应用系统是典型的嵌入式系统。嵌入式系统的重要特征有以下方面。
(1)系统内核小
嵌入式系统一般应用于小型电子装置,系统功能针对性强,系统资源相对有限,所需内核较之传统的计算机系统要小得多。
(2)专用性强
嵌入式系统的个性化很强,尤其是软件系统和硬件的结合非常紧密,即使在同一系列的产品中也需要根据系统硬件的变化进行软件设计和修改。同时针对不同的功能要求,需要对系统进行相应的更改。
(3)系统精简
嵌入式系统一般没有系统软件和应用软件的明显区分,其功能设计及实现上不要求过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。
(4)高实时性
高实时性是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。软件代码要求高质量、高可靠性、实时性。
(5)嵌入式软件开发走向标准化
嵌入式系统的应用程序可以在没有操作系统的情况下直接在芯片上运行。但为了合理地调度多道程序、充分利用系统资源及对外通信接口,用户必须自行选配实时操作系统(Real-Time Operating System,RTOS)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。
(6)嵌入式系统开发需要开发工具和环境
嵌入式系统其本身不具备自主开发能力,在设计完成以后,用户必须通过开发工具和环境才能进行软、硬件调试和系统开发。
单片机正是应嵌入式计算机系统应用的要求而应运而生的,并以嵌入式应用为主要目的。
嵌入式计算机系统,是作为其他系统的组成部分使用的。单片机以面向控制、较小的体积、现场运行环境的可靠性等特点满足了许多对象的嵌入式应用要求。在嵌入式系统中,单片机是最重要也是应用最多的智能核心器件。
1.4.3 单片机应用系统的组成
单片机应用系统包括单片机硬件系统和软件系统。
1.单片机应用系统硬件组成
单片机应用系统硬件组成是指通过系统配置,给单片机系统按控制对象的环境要求配置相应的外部接口电路(如数据采集系统的传感器接口、控制系统的伺服驱动接口单元及人机对话接口等),以构成满足对象要求的单片机硬件环境,或者是当单片机内部功能单元不能满足对象要求时,通过系统扩展,在外部并行总线上扩展相应的外围功能单元所构成的系统。
单片机应用系统的硬件组成,如果按其系统扩展及配置状况,可分为最小系统、最小功耗系统和典型系统等。
(1)单片机最小系统
单片机最小系统是指单片机嵌入一些简单的控制对象(如开关状态的输入/输出控制等),并能维护单片机运行的控制系统。这种系统成本低,结构简单,其功能完全取决于单片机芯片技术的发展水平。
(2)单片机最小功耗应用系统
单片机最小功耗应用系统的作用是使系统功耗最小。设计该系统时,必须使系统内所有器件及外设都有最小的功耗。最小功耗应用系统常用在一些袖珍式智能仪表及便携式仪表中。
(3)单片机典型应用系统
单片机可以方便地应用在工作、生活的各个领域,小到一个闪光灯、定时器,大到单片机组成的工业控制系统,如可编程控制器等。单片机典型应用系统也是单片机控制系统的一般模式,它是单片机要完成工业测控功能必须具备的硬件结构形式。其系统框图如图1-9所示。
图1-9 单片机典型应用系统框图
图1-9所示是一个典型的单片机闭环控制系统,单片机同时实现了LED数据显示和报警等多种功能。
下面简述模拟量闭环控制的工作过程。
1)被控对象的物理量通过变送器转换成标准的模拟电量,如把0~500℃温度转换成4~20mA标准直流电流输出。
2)该输出经滤波器滤除输入通道的干扰信号,然后送入多路采样器。多路采样器(可以在单片机控制下)分时地对多个模拟量进行采样、保持。
3)在单片机应用程序的控制下,使A-D转换器能将某时刻的模拟量转换成相应的数字量,然后该数字量输入单片机。
4)单片机根据程序所实现的功能要求,对输入的数据进行运算(如PID运算)处理后,经输出通道输出相应的数字量。
5)该数字量经D-A转换器转换为相应的模拟量。该模拟量经保持器控制相应的执行机构,对被控对象的相关参数进行调节,从而控制被调参数的物理量,使之按照单片机程序给定规律变化。
2.单片机的软件系统
单片机的软件系统包括系统软件和应用软件。
(1)系统软件
系统软件是处于底层硬件和高层应用软件之间的桥梁。但是,由于单片机的资源有限,应综合考虑设计成本及单片机运行速度等因素,故设计者必须在系统软件和应用软件实现的功能与硬件配置之间,仔细地寻求平衡。
单片机的系统软件构成有以下两种模式。
1)监控程序。用非常紧凑的代码,编写系统的底层软件。这些软件的功能是实现系统硬件的管理及驱动,并内嵌一个用于系统的开机初始化等的引导(BOOT)模块。
2)操作系统。当前已有许多种适合于8位至32位单片机的操作系统进入实用阶段,如在51系列单片机可以运行的RTX51操作系统。在操作系统的支持下,嵌入式系统会具有更好的技术性能,如程序的多进程结构、与硬件无关的设计特性、系统的高可靠性、软件开发的高效率等。
(2)应用软件
应用软件是用户为实现系统功能要求设计的程序。应用软件经过编译及仿真调试成功后,必须由开发系统通过上位机将目标程序下载到应用系统的单片机芯片内,进行系统调试,才能最终完成系统设计。