什么是单片机? 所谓单片机,就是把中央处理器CPU(Central Processing Unit)、存储器(Memory)、定时器、I/0(Input/Output)接口电路等一些计算机的主要功能部件集成在一块集成电路芯片上的微型计算机。 虽然单片机只是一个芯片,但从组成和功能上看,它已具有了微型计算机系统的含义。中文“单片机”的称呼由英文名称“Single Chip Microcomputer”直接翻译而来。单片机的内部结构如右图所示。 单片机把微型计算机的各主要部分集成在一块芯片上,大大缩短了系统内信号传送距离,从而提高了系统的可靠性及运行速度。因而在工业测控领域中,单片机系统是最理想的控制系统。所以,单片机是典型的嵌人式系统,是嵌入式系统低端应用的最佳选择。 图1 单片机的内部结构 一、单片机技术发展的四个阶段 ------ 单片机的发展经历了探索---完善---MCU化---百花齐放四个阶段。 1、芯片化探索阶段 20世纪70午代,美国的Fairchild(仙童)公司首先推出了第一款单片机F-8,随后Intel公司推出了影响面大、应用更广的MCS48单片机系列。MCS48单片机系列的推出标志着在工业控制领域,进入到智能化嵌入式应用的芯片形态计算机的探索阶段。参与这一探索阶段的还有 Motorola、Zilog和Ti等大公司,它们都取得了满意的探索效果,确立了在SCMC的嵌入式应用中的地位。这就是Single Chip Microcomputer的诞生年代,单片机一词即由此而来。这一时期的特点是: ◆ 嵌入式计算机系统的芯片集成设计; ◆ 少资源、无软件,只保证基本控制功能。 2.结构体系的完善阶段 在MCS-48探索成功的基础上很快推出了完善的、典型的单片机系列MCS-5l。MCS-51系列单片机的推出,标志Single Chip Microcomputer体系结构的完善。它在以下几个方面奠定了典型的通用总线型单片机的体系结构。 ①完善的总线结构: ◆并行总线:8位数据总线、16位地址总线及相应的控制总线,两个独立的地址空间; ●串行总线:通信总线,扩展总线。 ②完善的指令系统: ◆具有很强的位处理功能和逻辑控制功能,以满足工业控制等方面的需要; ◆功能单元的SFR(特殊功能寄存器)集中管理。 ③完善的MCS-51成为SCMC的经典体系结构。 日后,许多电气商在MCS-51的内核和体系结构的基础上,生产出各具特色的单片机。 3.从SCMC向MCU化过渡阶段 Intel公司推出的MCS96单片机,将一些用于测控系统的模数转换器(ADC)、程序运行监视器(WDT)、脉宽调制器(PWM)、高速I/O口 纳入片中,体现了单片机的微控制器特征。MCS-51单片机系列向各大电气商的广泛扩散,许多电气商竞相使用80C51为核,将许多测控系统中使用的电路 技术、接口技术、可靠性技术应用到单片机中;随着单片机内外围功能电路的增强,强化了智能控制器特征。微控制器(Microcontrollers)成为 单片机较为准确表达的名词。其特点是: ①满足嵌入式应用要求的外围扩展,如WDT、PWM、ADC、DAC、高速I/0口等。 ②众多计算机外围功能集成,如: ◆提供串行扩展总线:SPI、I2C、BUS、Microwire; ◆配置现场总线接口:CAN BUS。 ③CMOS化,提供功耗管理功能。 ④提供OTP供应状态,利于太规模和批量生产。 4.MCU的百花齐放阶段 单片机发展到这一阶段,表明单片机已成为工业控制领域中普遍采用的智能化控制工具-----小到玩具、家电行业,大到车载、舰船电子系统,遍及计量测 试、工业过程控制、机械电子、金融电子、商用电子、办公自动化、工业机器人、军事和航空航天等领域。为满足不同的要求,出现了高速、大寻址范围、强运算能 力和多机通信能力的8位、16位、32位通用型单片机,小型廉价型、外围系统集成的专用型单片机,以及形形色色各具特色的现代单片机。可以说,单片机的发 展进人了百花齐放的时代,为用户的选择提供了空间。这一时期的特点为: (1)电气商、半导体商的普遍介入 MCS-48的成功,刺激了许多半导体公司竞相研制和发展自己的单片机系列。到目前为止,世界各地厂商已相继研制出大约50个系列300多个品种的单片机产品,其中较有代表性的有Motorola公司的6801、6802,Zilog公司的Z-8系列,Microchip公司的PIC系列等。此外,开本的NEC公司、日立公司也都推出了各自具有特色的单片机品种。 (2)大力发展专用单片机 通用型与专用型是按某一型号单片机适用范围区分的。例如,80C51是通用型单片机,它并不是为某一种专门用途设计的单片机;而专用型单片机是针对某 一类产品甚至某个产品需要而设计、生产的单片机。例如,来电显示电话中配有液晶驱动器接口的单片机和全自动洗衣机中的微控制器,都是专用单片机;特别是小 家电、玩具领域的单片机,因为小封装、价格低廉一外围器件、外设接口集成度高,多数为专用单片机。 (3)提高综合品质 在体系结构(RISC)、电磁兼容性能(EMC)、开发环境(高级语言支持ISP、IAP等)、功耗管理等诸方面得到了提高。根据控制单元设计的方式 与采用的技术不同,目前市场上的这些单片机可区分为两大类型:繁杂指令集结构(CISC架构)和精简指令集结构(RISC架构)。繁杂指令集结构 (CISC)的特点是指夺数量多,寻址方式丰富,较适合初学者系统学习,如INTEL的80C51或80C196、 MC68K;而精简指令集结构(RISC)具有较少的指令与寻址模式,结构简单,成本较低,执行程序的速度较快,成为单片机的后起之秀,如PIC、EM78XXX和Z86HCXX。 ISP(In System Programming)和IAP(In Application Programming)方式是两种先进的实时在线开发方式。它们无须传统的开发装置,借助计算机和单片机的高性能,实现了真正的在线仿真。 (4)C语言的广泛支持 ◆单片机普遍支持C语言编程,为后来者学习和应用单片机提供了方便; ◆高级语言减少了选型障碍,便于程序的优化、升级和交流。 (5)多种选择下的选择原则 ●寻求最简化的单片机应用系统; ◆尽可能选择专用单片机; ◆综合考虑下进行合理的选择。 二、80C51单片机的家族简介 虽然目前单片机的品种很多,但其中最具代表性的当属Intel公司的MCS-51单片机系列。MCS-51以其典型的结构、完善的总线、SFR的集中 管理模式、位操作系统和面向控制功能的丰富的指令系统,为单片机的发展奠定了良好的基础。MCS-51系列的典型芯片是80C51(CHMOS型的 8051)。为此,众多的厂商都介入了以80C51为代表的8位单片机的发展,如Philips、Siemens(Infineon)、Dallas、 ATMEL等公司,我们把这些公司生产的与80C51兼容的单片机统称为80C5l系列。特别是在近年来,80C51系列又有了许多发展,推出厂一些新产 品,主要是改善单片机的控制功能,如内部集成了高速I/O口、ADC、PWM、WDT等,以及低电压、微功耗、电磁兼容、串行扩展总线、控制网络总线性能 等。 ●ATMEL公司研制的89CXX系列是将Flash Memory(EEPROM)集成在80C51中,作为用户程序存储器,并不改变80C51的结构和指令系统。 ◆Philips公司的83/87C7XX系列不改变80C51结构、指令系统,省去了并行扩展总线,属于非总线的廉价型单片机,特别适合于家电产品。 ◆lnfineon(原Siemens半导体)公司推出的C500系列单片机在保持与80C51兼容的前提下,增强了各项性能,尤其是增强了电磁兼容性能,增加了CAN总线接口,特别适用于工业控制、汽车电子、通信和家电领域。 鉴于80C51系列在硬件方面的广泛性、代表性和先进性以及指令系统的兼容性,初学者可以选择51系列单片机作为学习单片机的首选类型,至于其它类型的单片机,在深入学习和掌握了80C51单片机之后再去学习已不是什么难事。 三、单片机的发展趋势 1.制作工艺CMOS化(全盘CMOS化) 出于对低功耗的普遍要求,目前各大厂商推出的各类单片机产品都采用了CHMOS工艺。80C51系列单片机采用两种半导体工艺生产。一种是HMOS工 艺,即高密度短沟道MOS工艺。另外一种是CHMOS工艺,即互补金属氧化物的HMOS工艺。CHMOS是CMOS和HMOS的结合,除保持了HMOS的 高速度和高密度的特点之外,还具有CMOS低功耗的特点。例如8051的功耗为630mw,而80C51的功耗只有120mw。在便携式、手提式或野外作 业仪器设备上低功耗是非常有意义的。因此,在这些产品中必须使用CHMOS的单片机芯片。 2.尽量实现单片化 尽管我们常说,单片机是将中央处理器CPU、存储器和I/O接口电路等主要功能部件集成在一块集成电路芯片上的微型计算机,但由于工艺和其它方面的原因,很多功能部件并未集成在单片机芯片内部。于是,用户通常的做法是根据系统设计的需要在外围扩展功能芯片。随着集成电路技术的快速发展和“以人为本”思 想在单片机设计上的体现,很多单片机生产厂家充分考虑到用户的需求,将一些常用的功能部件,如A/D(模/数转换器)、D/A(数/模转换器)、PWM (脉冲产生器)以及LCD(液晶)驱动器等集成到芯片内部,尽量做到单片化;同时,用户还可以提出要求,由厂家量身定作(SOC设计)或自行设计。 3.共性与个性共存 如今的市场上为我们提供了丰富多彩的单片机产品。从宏观上讲,有RISC和CISC两大类型;从微观上说,有Intel、Motorola、 Philips、Microchip、EMC、NEC等公司的相关产品。在未来相当长的时间内,都将维持这种群雄并起、共性与个性共存的局面。究其原因, 主要有以下两点。首先,以80C51为代表的单片机的基础地位不会动摇。这是因为80C51的架构和指令系统为后来的单片机提供了参考基准和强大支持,凡是学过80C51单片机的人再去学用其它类型的单片机易如反掌,借梯子爬坡何乐而不为呢?有关这方面的教材建设在出版界也得到了共识,取得了斐然的成果;这足以解释为制么在课堂上大家都以80C51的教材来进行教与学了。其次,个性化的产品如专用单片机等在满足用户需求方面得到了大家的认可,在应用领域大有后来赶上的架势;它们由于先天的优势,在80C51的基础上扬长避 短,以用户需要为根本,在市场上受到丁欢迎。总之,80C51作为共性的代表会与个性化的产品相互依存,共同发展,将会给用户带来更大的实惠与方便。 四、单片机的应用范围 在说单片机应用之前,首选来谈谈我们使用的电脑(PC机),我们使用的电脑属于通用计算机,真是感叹计算机发展神速!现在个人电脑的性能比以前已经得 到了极大的提高,普通PC机的运行速度就已经达到了3GB以上,拥有海量的硬盘空间,80GB、160GB甚至200G都很常见,内存普通的都有 256M、512M甚至有1G内存,使用19"大屏幕液晶显示器。。。正是这些电脑的高性能,为我们海量数值计算、信息处理、多媒体和网络应用、办公、家 用等的实现成为可能。 相比之下,单片机的硬件配置就没有通用计算机那么高了,单片机运算速度一般只有几兆至几十兆,如51单片机常用的晶振频率有6MHZ、 11.0592MHZ和24MHZ等;单片机内部程序空间也比较小,一般在几KB到几十KB;单片机内存RAM一般几百字节到几KB。虽然单片机微型计算机的性能无法和电脑相比,但是单片机具有高可靠性、体积小、智能性、实时性、可塑性强(只要写入不同的程序,同一片单片机能够完成不同的工作)等诸多特 点,而且价格低廉,如一片89S51单片机才几块钱。正是这些特点,使单片机成为工程师们开发嵌入式应用系统和小型智能化产品的首选! 举个单片机应用的典型例子,如老式洗衣机采用机械式定时控制器,功能单一,而故障频繁。要开发家用智能化洗衣机,采用性能强大的通用计算机(PC机) 固然能够轻易实现,但是这样就大材小用了,而且其成本太高,体积庞大。。。最佳的解决方案就是采用廉价单片机了,采用“单片机+控制程序+接口电路+执行机构”的智能化洗衣机控制方案后,洗衣机就具有了智能化的特性,能够自动进行控制整个洗涤过程,从注水、加洗衣粉、洗涤、漂洗、脱水、烘干等一系列工作过 程,甚至能够自动判断洗衣量及衣服材质而采用最佳的洗涤方式等,并且有多种不同的洗涤程序(方式)给你选择,你只需把衣服放进去后洗衣过程就由单片机自动 控制下完成了,洗涤完后你拿出来就已经烘干可以穿了:),实实在在的全自动,智能化,这样极大地降低了我们的劳动强度。 从上面的简单例子中,我们看到了单片机应用的现实意义了。单片机极高的可靠性,微型性和智能性(我们只要编写不同的程序后就能够完成不同的控制工 作),单片机已成为工业控制领域中普遍采用的智能化控制工具,已经深深地渗入到我们的日常生活当中-----小到玩具、家电行业,大到车载、舰船电子系 统,遍及计量测试、工业过程控制、机械电子、金融电子、商用电子、办公自动化、工业机器人、军事和航空航天等领域都可见到单片机的身影。以下是一些应用举 例: 1、智能产品:单片机微处理器与传统的机械产品相结合,使传统机械产品结构简化、控制智能化,构成新一代的机电一体化的产品。例如传真打字机采用单片机,可以取代近千个机械器件;缝纫机采用单片机控制,可执行多功能自动操作、自动调速、控制缝纫花样的选择。 2、智能仪表:用单片机微处理器改良原有的测量、控制仪表,能使仪表数宁化、智能化、多功能化、综合化。而测量仪器中的误差修正、线性化等问题也可迎刃而解。 3、测控系统:用单片机微处理器可以设计各种工业控制系统、环境控制系统、数据控制系统,例如温室人工气候控制、水闸自动控制、电镀生产线自动控制、汽轮机电液调节系统等。 4、数控型控制机:在目前数字控制系统的简易控制机中,采用单片机可提高可靠性,增强其功能、降低成本。例如在两坐标的连续控制系统中,用805l单片机微处理器组成的系统代 替Z-80组台系统,在完成同样功能的条件下,其程序长度可减少50%,提高了执行速度。数控型控制机采用单片机后口可能改变其结构模式,例如使控制机与 伺服控制分开,用单片机构成的步进电机控制器可减轻数控型控制机的负担。 5、智能接口:微 电脑系统,特别是较大型的工业测控系统中,除外围装置(打印机、键盘、磁盘、CRT)外,还有许多外部通信、采集、多路分配管理、驱动控制等接口。这些外 围装置与接口如果完全由主机进行管理,势必造成主机负担过重,降低执行速度,如果采用单片机进行接口的控制与管理,单片机微处理器与主机可并行上作,大大 地提高了系统的执行速度。如在大型数据采集系统中,用单片机对模拟,数字转换接口进行控制不仅可提高采集速度,还可对数据进行预先处理,如数字滤波、线性 化处理、误差修正等。在通信接口中采用单片机可对数据进行编码译码、分配管理、接收/发送控制等。 PIC单片机 PIC单片机(Peripheral Interface Controller)是一种用来开发的去控制外围设备的集成电路(IC)。一种具有分散作用(多任务)功能的CPU。与人类相比,大脑就是CPU,PIC 共享的部分相当于人的神经系统。 PIC 单片机是一个小的计算机 PIC单片机有计算功能和记忆内存像CPU并由软件控制允行。然而,处理能力—存储器容量却很有限,这取决于PIC的类型。但是它们的最高操作频率大约都在20MHz左右,存储器容量用做写程序的大约1K—4K字节。 时钟频率与扫描程序的时间和执行程序指令的时间有关系。但不能仅以时钟频率来判断程序处理能力,它还随处理装置的体系结构改变(1*)。如果是同样的体系结构,时钟频率较高的处理能力会较强。 这里用字来解释程序容量。用一个指令(2*)表示一个字。通常用字节(3*) 来表示存储器(4*)容量。一个字节有8位,每位由1或0组成。PIC16F84A单片机 的指令由14位构成。当把1K个子转换成位为:1 x 1,024 x 14 = 14,336位。再转换为字节为:14,336/(8 x 1,024) = 1.75K。在计算存储器的容量时,我们规定 1G 字节 = 1,024M 字节, 1M 字节 = 1,024K 字节, 1K 字节= 1,024 字节. 它们不是以1000为倍数,因为这是用二进制计算的缘故。 1*计算机的物理结构,包括组织结构、容量、该计算机的CPU、存储器以及输入输出设备间的互连。经常特指CPU的组织结构,包括它的寄存器、标志、总线、算术逻辑部件、指令译码与执行机制以及定时和控制部件。 2*指出某种操作并标识其操作数(如果有操作数的话)的一种语言构造 3*作为一个单位来操作(运算)的一个二进制字符串,通常比计算机的一个字短。 4*处理机内的所有可寻址存储空间以及用于执行指令的其它内存储器。 在计算存储器的容量时,我们规定 1G 字节 = 1,024M 字节, 1M 字节 = 1,024K 字节, 1K 字节= 1,024 字节. 它们不是以1000为倍数,因为这是用二进制计算的缘故。 用PIC单片机使电路做的很小巧变得可能。因为PIC单片机可以把计算部分、内存、输入和输出等都做在一个单片机内。所以她工作起来效率很高、功能也自由定义还可以灵活的适应不同的控制要求,而不必去更换不同的IC。这样电路才有可能做的很小巧。 |