1、1单片机论文单片机历史 单片机诞生于 20 世纪 70 年代末,经历了 SCM、MCU、SOC 三大阶段。 单片机的基本结构单片机由运算器、控制器、存储器、输入输出设备构成单片机开创了现代电子系统时代 2 单片机构成的现代电子系统将成为主流电子系统 单片机是器件级计算机系统,它可以嵌入到任何对象体系中去,实现智能化控制。小到微型机械,如手表、助听器。集成器件级的低价位,低到几元、十几元,足以使单片机普及到许多民用家电、电子玩具中去。单片机构成的现代电子系统已深入到各家各户,正改变我们的生活,如家庭中的音响、电视机、洗衣机、微波炉、电话、防盗系统、空调机等。单片机革新了原有电子系统,如微波炉采用
2、单片机控制后,可方便地进行时钟设置、程序记忆、功率控制;空调机采用单片机后不但遥控参数设置方便,运行状态自动变换,还可实现变频控制。目前许多家用电器如 VCD、DVD 只有单片机出现后才可能实现其功能。 五、单片机将造就新一代电子精英 如果说五十年代起,无线电世界造就了几代精英,那么当今的单片机世界将会造就出新一代电子精英。 1 单片机带你进入智能化电子领域 若将经典电子系统当作一个僵死的电子系统,那么智能化的现代电子系统则是一个具有“生命”的电子系统。单片机应用系统的硬件结构给予电子系统“身躯”,单片机应用系统的应用程序赋予其“生命”。例如,在设计智能化仪器显示器的显示功能时,可在开机时显示
3、系统自检结果,未进入工作时显示各种待机状态,仪器运行时显示运行过程,工作结束后可显示当前结果、自检结果、原始数据、各种处理报表等。在无人值守时,可给定各种自动运行功能。电子系统的智能化为无止境境界,常常不需硬件资源的增添就能实现各种翻新功能。这也是当前许多家用电器功能大量增设的因素之一。 22 单片机带你进入计算机工控领域 21 世纪是全人类进入计算机时代的世纪,许多人不是在制造计算机便是在使用计算机。在使用计算机的人们中,只有从事嵌入式系统应用的人才真正地进入到计算机系统的内部软、硬件体系中,才能真正领会计算机的智能化本质并掌握智能化设计的知识。从学习单片机应用技术入手是当今培养计算机应用软
4、、硬件技术人才的最佳道路之一。 3 单片机带你进入最具魅力的电子世界 独具魅力的单片机能使你体会到电脑的真谛,你可以用单片机亲自动手设计智能玩具,可以设计不同的应用程序实现不同的功能。既有硬件制作又有软件设计,既动脑、又动手。初级水平可开发智能玩具,用宏指令编程。中级水平可开发一些智能控制器,如电脑鼠、智能车、各种遥控模型。高级水平可开发机器人,如机器人足球赛,开发工业控制单元,网络通信等,并用汇编语言或高级语言设计应用程序。围绕单片机及嵌入式系统形成的电子产业的未来,将会为电子爱好者提供广阔的天地,一个比当年无线电世界更广阔、更丰富、更持久、更具魅力的电子世界。投身到单片机世界来,将使你一生
5、受益。1.单片机简介: 亦称微控制器,顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控 机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时 工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词“智能微电脑型”,如智能型热水器等。单片机的组成:单片机要自动完成计算,它应该具有哪些最重要的部分呢? 以打算盘为例计算一道算术题。例:11110918819932。现在要进行运算,首先需要一把算
6、盘,其次是纸和笔。把要计算的问题记录下来,然后第一步先算 109188,把它与 111 相加的结果记在纸上,然后计算19932,再把它从上一次结果中减去,就得到最后的结果。现在,我们用单片机来完成上述过程,显然,它首先要有代替算盘进行运算的部件,这就是“运算器”;其次,要有能起到纸和 笔作用的器件,即能记忆原始题目、原始数据和中间结果,还要记住使单片机能自动进行运算而编制的各种命令。这类器件就称为“存贮器”。此外,还需要有能代替 人作用的控制器,它能根据事先给定的命令发出各种控制信号,使整个计算过程能一步步地进行。但是光有这三部分还不够,原始的数据与命令要输入,计算的结果 要输出,都需要按先后
7、顺序进行,有时还需等待。如上例中,当在计算109188 时,数字 111 就不能同时进入运算器。因此就需要在单片机上设置按控制器的命令进行 动作的“门”,当运算器需要时,就让新数据进入。或者,当运算器得到最后结果时,再将此结果输出,而中间结果不能随便“溜出”单片机。这种对输入、输 出数据进行一定管理的“门”电路在单片机中称为“口”(Port)。在单片机中,基本上有三类信息在流动,一类是数据,即各种原始3数 据(如上例中的 111、109 等)、中间结果(如 19932 所得的商 6、余数7 等)、程序(命令的集 合)等。这样要由外部设备通过“口”进入单片机,再存放在存贮器中,在运算处理过程中,
8、数据从存贮器读入运算器进行运算,运算的中间结果要存入存贮器中,或最后由运算器经“出入口”输出。用户要单片机执行 的各种命令(程序)也以数据的形式由存贮器送入控制器,由控制器解读(译码)后变为各种控制信号,以便执行如加、减、乘、除等功能的各种命令。所以,这一 类信息就称为控制命令,即由控制器去控制运算器一步步地进行运算和处理,又控制存贮器的读(取出数据)和写(存入数据)等。第三类信息是地址信息,其作用 是告诉运算器和控制器在何处去取命令取数据,将结果存放到什么地方,通过哪个口输入和输出信息等。半导体存储器的工作原理存贮器又分为只读存贮器和读写存贮器两种,前者 存放调试好的固定程序和常数,后者存放
9、一些随时有可能变动的数据。顾名思义,只读存贮器一旦将数据存入,就只能读出,不能更改(EPROM、E2PROM等类型的 ROM 可通过一定的方法来更改、写入数据编者注)。而读写存贮器可随时存入或读出数据.1存储器的内部构造 看下面 的图这就是半导体存储器的结构简图2存储器的工作原理 存储器就是用来存放数据的地方它其实是利 用电平的高或低来存放数据的也就是说它实际上存放的是电平的高或低的状态而不是我们所习惯上认为的有了这么一个构造我们就可以开始存放数据了比如我们要放 进一个数据1234 这样的数字那它是如何工作的呢看上面的图这就是存储器的内部结构示意 图一个存储器就象一个小抽屉一个小抽屉里有 8
10、个也就是单片机的 8 位小盒子每个小盒子用来存放 1 位电荷电 荷通过与它相连的电线传进来或释放掉至于电荷在小盒子里是怎样存放的这就不用我们操心了您可以把电线想象成水管小盒子里的电荷就象是水那就好理解了存储器 中的 1 个小抽屉我们把它称之为 1 个单元相当于 1 个字节而 1 个小盒子就相当于 1 位 00011010 我们只要把第 2 号第4 号和第 5 号小盒子里存满电荷而其它小盒子里的电荷给放掉就行了可是问题又出来了一个存储器有好多相同的单元线是并联着 的看 D7-D0 在放入电荷的时候会将电荷放入所有的字节单元中而释放电荷的时候会把每 个单元中的电荷都放掉这样的话不管存储器有多少个字
11、节单元都只能放同一个数这当然不是我们所希望的因此我们要在结构上稍作变化看上面的图在每个单元上有根 线与译码器相连我想要把数据放进哪个单元就通过译码器给哪个单元发一个信号由译码4器通过这根线把相应的开关打开这样电荷就可以自由地进出了那么这样是不是 就能随意地向存储器写入或者读出数据了呢其实还不能继续看上面的图与 D7-D0 相 连的还有一个控制器它是用来干什么的呢这根线叫写入/读出控制线当我们向存储 器写入数据时必须先把这个开关切换到写入端而要读出数据时就得先把开关切换到读出端而片选端则是为了区分不同的存储器设置的这里没搞明白没关系后面还有介 绍先让我们来看看译码器是如何工作的 3半导体存储器的
12、译码 简单介绍一下我们知道 1 根线可以代表 2 种状态 2 根线可以代表 4 种状态3 根线可以代表 8 种 256 种状态又需要几根线代表自己想一下是不是 8 根线 4存储器的选片及总线的概念至此译码的问题解决了让我们再来关注另外 一个问题送入每个字节的 8 根线又是从什么地方来的呢它就是从单片机的外部引脚上接过来的一般这 8 根线除了接一个存储器之外还要接其它的器件这样问题又来了这 8 根线既然不是存储器和单片机之间专用的如果总是将某个单元接在这 8 根线上就不行了比如这个存储器单元中的数值是 11111111 另一个存储器的单元是 00000000 那么这根 线到底是处于高电平还是低电
13、平所以我们必须让它们分离办法当然也简单当外面的线接到集成电路的引脚上来后不直接接到各单元去而是在中间加一组开关这组开关 就是前面提到的控制器看前面的图平时我们让开关打开着如果确实是要向这个存储器中写入数据或要从存储器中读出数据再让开关切换到相应的位置就行了这组开关 由三根引线选择读控制端写控制端和片选端要将数据写入先由控制器选中该片然后发出相应的写信号开关切换到相应的位置并将传过来的数据电荷写入片中如果要读 信号先选中该片然后发出读信号开关也切换到相应的位置上数据就被送出去了另外读和写信号还同时受到译码器的控制由于片选端的不同所以虽有读或写信号但没有 片选信号所以另一个存储器就不会误会而开门造
14、成冲突那么会不会同时选中两个存储器呢只要是设计好的系统就不会如果真的出现同时选中两个存储器的话那就是电 路出故障了 8 根线并不是专用的而是很多器件大家共用的所以我们把它们称之为数据总线 总线英文名为 BUS 即公交车道谁都可以走而 16 根地址线 51 单片机共有 16 根地址线这些以后会讲解这里不必死记硬背也是连在一起的我们把它们称之为地址总线看上面的图如此看来存储器要想写入或者读出数据还真是不容易不过好在这些都是由计 算机自动完成的不需要我们去操心从上面的介绍中我们已经看到用来传递数据的单片机的主要处理中心 CPU 实际上,人们往往把运算器和控制器合并称为中央处理单元CPU。 单片机除了
15、进行运算外,还要完成控制功能。所以离不开计数和定时。因此,在单片机中就设置有定时器兼计数器。到这里为止,我们已经知道了单片机的基本组 成,即单片机是由中央处理器(即 CPU 中的运算器和控制器)、只读存贮器(通常表示为 ROM)、读写存贮器(又称随机存贮器通常表示为 RAM)、输入/输出口(又分为并行口和 串行口,表示为 I/O 口)等等组成。实际上单片机5里面还有一个时钟电路,使单片机在进行运 算和控制时,都能有节奏地进行。另外,还有所谓的“中断系统”,这个系统有“传达室”的作用,当单片机控制对象的参数到达某个需要加以干预的状态时,就可经此“传达室”通报给CPU,使 CPU 根据外部事态的轻
16、重缓急来采取适当的应付措施。现在,我们已经知道了单片机的组成,余下的问题是如何将它们的各部分连接成相互关联的整体呢?实际上,单片机内部有一条将它们连接起来的“纽带”,即所谓的“内部总线”。此总线有如大城市的“干道”,而CPU、ROM、RAM、I/O 口、中断系统等就分布在此“总线”的两旁,并和它连通。从而,一切指令、数据都可经内部总线传送,有如大城市内各种物品的传送都经过干道进行。 单片机的指令系统和汇编语言程序:前面已经讲述了单片机的几个主要组成部分,这些部分构成了单片机的硬 件。所谓硬件(Hardware),就是看得到,摸得到的实体。但是,光有这样的硬件,还只是有了实 现计算和控制功能的可
17、能性。单片机要真正地能进行计算和控制,还必须有软件(Software)的配合。软件主要指的是各种程序。只有将各种正确的程序“灌入”(存入)单片机,它才能有效地工作。单片机所以能自动地进行运算和控制,正是由于人把实现计算和控制的步骤一 步步地用命令的形式,即一条条指令(Instruction)预先存入到存贮器中,单片机在 CPU的控制下,将指令一条条地取出来,并加以翻译和执行。就以两个数相加这一简单的运算来说,当需要运算的数已 存入存贮器后,还需要进行以下几步:第一步:把第一个数从它的存贮单元(Location)中取出来,送至运算器。第二步:把第二个数从它所在的存贮单元中取出来,送至运算器;第三
18、步:相加;第四 步:把相加完的结果,送至存贮器中指定的单元。所有这些取数、送数、相加、存数等等都是一种操作(Operation),我们把要求计算机执行的各种操作用命令的形式写下来,这就是指令。 但是怎样才能辨别和执行这些操作呢?这是在设计单片机时由设计人员赋予它的指令系统所决定的。一条指令,对应着一种基本操作;单片机所能执行的全部指令, 就是该单片机的指令系统(Iustruction Set),不同种类的单片机,其指令系统亦不同。数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一 样的数字,或者说都是一串0和1组成的序列。换言 之,地址、指令也都是数据。指令:由单片机芯片的设计
19、者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。 地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定, 但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有 这么几种情况:1地址(如 MOV DPTR,#1000H),即地址 1000H(相当于门牌号)送入DPTR。2方式字或控制字(如 MOV TMOD,#03H),3 即是控制字。63常数(如 MOV TH0,#10
20、H)10H 即定时常数(16 进制)。4实际输出值 (如 P1 口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令:MOV P1,#00H)这里 0FFH 和 00H 都是实际输出值。又如用于 LED 的字形码,也是实际输出的值。理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把 数据当成指令来执行了。2单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大 部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外 存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最
21、强大的 单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片机也被称为微控制器(Microcontroler),是因为它最早被用在工业 控制领域。单片机由芯片内仅有 CPU 的专用处理器发展而来。最早的设计理念是通过将大量外围设备和 CPU 集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对提及要求严格的控制设备当中。INTEL 的 Z80 是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。早期的单片机都是 8 位或 4 位的。其中最成功的是 INTEL 的 8031,因为简 单可靠而性能不错获得了很大的好评。此后在 8031 上
22、发展出了 MCS51 系列单片机系统。基于这一系统的单片机系统直到现在还在广泛使用。随着工业控制领域要求的提高,开始出现了 16 位单片机,但因 为性价比不理想并未得到很广泛的应用。90 年代后随着消费电子产品大发展,单片机技术得到了巨大的提高。随着 INTEL i960 系列特别是后来的 ARM 系列的广泛应 用,32 位单片机迅速取代 16 位单片机的高端地位,并且进入主流市场。而传统的 8 位单片机的性能也 得到了飞速提高,处理能力比起 80 年代提高了数百 倍。目前,高端的 32 位单片机主频已经超过 300MHz,性能直追 90 年代中期的专用处理器,而普通的型号出厂价格跌落至 1
23、美元,最高端的型号也只有 10 美元。当代单片机系统已经不再只在裸机环境下开发和使 用,大量专用的嵌入式操作系统被广泛应用在全系列的单片机上。而在作为掌 上电脑和手机核心处理的高端单片机甚至可以直接使用专用的 Windows 和 Linux 操作系统。单片机比专用处理器最适合应用于 嵌 入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子 和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩 具、掌上电脑以及鼠标等电脑配件中都配有 1-2 部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备 40 多部单片机,复杂
24、的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过 PC 机和其他计算 的综合,甚至比人类的数量还要多。单片机介绍:7单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块 芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单 片机内部也用和电脑功能类似的模块,比如 CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑 弱很多,不过价钱也是低的,一般不超过 10 元即可用它 来做一些控
25、制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、 VCD 等等的家电里面都可以看到它的身影!它主 要是作为控制部分的核心部件。 它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这 也是和离线式计算机的(比如家用 PC)的主要区别。 单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功 能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国 50 年代开发的 74 系列,或者 60 年代的 CD4000 系列 这些纯硬件来搞定的话,电路一定是一块大
26、PCB 板!但是如果要是用美国 70 年代成功投放市场的系列单片机,结果就会有天壤之别! 只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性! 5.单片机在医用设备领域中的应用单片机在医用设备中的用途亦相当广泛,例 如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。此外,单片机在工商,金融,科研、 教 育,国防航空航天等领域都有着十分广泛的用途。微处理器与单片机:微处理器:计算机系统核心部件(CPU)并不是一台完整的计算机单片机:将 CPU 和其它接口电路集成在一个芯片之中,使其具有计算机的基本功能。8从上面的描述可知,微处理器只是一个 CPU,而 单片机则是由
27、 CPU 与其它的接口电路组合而成的,所以 CPU 不等于单片计算机。也可以这样说,CPU 只是计算机其中的一个部件而已。8051 与 80C51 的区别:80C51 单片机是在 8051 的基础上发展起来的,也就是说在单片机的发展过程中是先有 8051,然后才有 80C51 的。8051 单片机与 80C51 单片机从外形看 是完全一样的,其指令系统、引脚信号、总线等完全一致(完全兼容),也就是说在 8051 下开发的软件完全可以在 80C51 上应用,反过来,在 89C51 下开发的软件也可以在 8051 上应用。这两种单片机是完全可移植的。既然这两种单片机外形及内部结构都一样,那它们之间
28、的主要差别在哪里 呢?8051 与 80C51 单片机的主要差别就在于芯片的制造工艺上。80C51 的制造工艺是在 8051 基础上进行了改进。8051 系列单片机采用的是 HMOS 工艺:高速度、高密度;80C51 系列单片机采用的是 CHMOS 工艺:高速度、高密度、低功耗;也就是说 80C51 单片机是一种低功耗单片机。单片机相关常用名词解释总线: 指能为多个部件服务的信息传送线,在微机系统中各个部件通过总线相互通 信。地址总线(AB):地址总线是单向的,用于传送地址信息。地址总线的宽度为16 位,因此基外部存储器直接寻址 64K,16 位地址总线由 P0 口经地址锁存器提供低 8 位地
29、址(A0A7),P2 口直接提供高 8 位地址(A8A15)。数据总线(DB):一般为双向,用于 CPU 与存储器,CPU 与外设、或外设与外 设之间传送数据信息(包括实际意义的数据和指令码)。数据总线宽度为 8 位,由 P0 口提供。控制总线(CB):是计算机系统中所有控制信号的总称,在控制总线中传送的9是控制信息。由 P3 口的第二功能状态和 4 根独立的 控制总线,RESET、EA、ALE、PSEN 组成。存储器:用来存放计算机中的所有信息:包括程序、原始数据、运算的中间结果及最 终结果等。只读存储器(ROM): 只读存 储器在使用时,只能读出而不能写入,断电后 ROM 中的信息不会丢失
30、。因此一般用来存放一些固定程序,如监控程序、子程 序、字库及数据表等。ROM 按存储信息的方法又可分为以下几种1、掩膜 ROM:掩膜 ROM 也称固定 ROM,它是由厂家编好程序写入 ROM(称固化)供用户使用,用户不能更改内部程序,其特点是价格便宜。2、可编程的只读存储器(PROM):它的内容可由用户根据自已所编程序一次性写入,一旦写入,只能读出,而不能再进行更改,这类存储器现在也称为 OTP(Only Time Programmable)。3、可改写的只读存储器 EPROM:前两种 ROM 只能进行一次性写入,因而用户较少使用,目前较为流行的ROM 芯片 为 EPROM。因为它的内容可以通
31、过紫外线照射而彻底擦除,擦除后又可重新写入新的 程序。4、可电改写只读存储器(EEPROM):EEPROM 可用电的方法写入和清除其内容,其编程电压和清除电压均与微机CPU 的 5V 工作电压相同,不需另 加电压。它既有与 RAM 一样读写操作简便,又有数据不会因掉电而丢失的优点,因而使用极为方 便。现在这种存储器的使用最为广泛。随机存储器(RAM):这种存储 器又叫读写存储器。它不仅能读取存放在存储单元中的数据,还能随时写入新的数据,写入后原来的数据就丢失了。断电后 RAM 中的信息全部丢失。因些,RAM 常用 于存放经常要改变的程序或中间计算结果等信息。RAM 按 照存储信息的方式,又可分
32、为静态和动态两种。1、静态 SRAM:其特点是只要有电源加于存储器,数据就能长期保存。2、动态 DRAM:写入的信息只能保存若干 ms 时间,因此,每隔一定时间必须重新写入一次,以保持原来的信息不变。可现场改写的非易失性存储器:这种存储器的特点是:从原理上看,它们属于 ROM 型存储器,从功能上看,10它们又可以随时改写信息,作用又相当于 RAM。所以,ROM、RAM 的定义和划分已逐渐的失去意义。1、快擦写存储器(FLASH)这种存储器是在 EPROM 和 EEPROM 的制造基础上产生的一种非易失性存储器。其集成度高,制造成本低于 DRAM,既具有 SRAM 读写的灵活性和较快的访问速度,
33、又具有 ROM 在断电后可不丢失信息的特点,所以发展迅速。2、铁电存储器 FRAM它是利用铁电材料极化方向来存储数据的。它的特点是集成度高,读写速度 快,成本低,读写周期短。时钟周期:计算机在时钟信号的作用下,以节拍方式工作。因此必须有一 个时钟发生电路,输入微处理器的时钟信号的周期称为时钟周期。机器周 期:机器完成一个动作所需的时间称为机器周期,一般由一个或一个以上的时钟周期组成。在我们讲述的 MCS-51 系列单片机中,一个机器周期由 12个时钟周期组成。指令周 期:执行一条指令(如“MOV A,#34H”,该指令的含义是将立即数34H 传送到微处理器内的累加器 A 中)所需时间称为指令周
34、期,它由一个到数个机器周期组成。指令周期的长短取决于指令的类型,即指令将要进行的 操作步聚及复杂程度。汇编: 是能完成一定任务的机器指令的集合。二进制数: 只有 0 和 1 两个数码,基数为二。16 进制数: 采用 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F 等 16 个数码,其中 A-F 相应的十进数为 10-15,基数是 16。指令: 是计算机所能执行的一种基本操作的描述,是计算机软件的基本单元。字节:8 位二进制数组成一个字节,在存储器中以字节为单位存储信息。字: 2 个字节组成一个字。双字:2 个字组成一个双字。补码:机器数可用不同的码制来表示,补码表示法是最常用的
35、一种,正数 采用符号绝对值表示,即数的最高有效位为 0,数的其余部分则表示数的绝对值;负数的表示要麻烦一些,先写出与该 负数相对应的正数的补码表示,然后将其按位求反,最后在末位加 1,就可以得到该负数的 补码表示了。11段地址:8086CPU 将 1MB 的存储器空间分成许多逻辑段,每个段最大限制为64KB, 段地址就是逻辑段在主存中的起始位置。为了能用 16 位寄存器表示段地址,8086 规定段地址必须是模 16 地址,即为 xxxx0H 形式,省略低 4 位 0,段地址就可以用 16 位数据表示,它通常被保存在 16 位的段 寄存器中。偏移地址:存单元距离段起始位置的偏移量简称偏移地址,由
36、于限定每段 不超过 64KB,所以偏移地址也可以用 16 位数据表示。物理地 址:在 1M 字节的存储器里,每一个存储单元都有一个唯一的 20 位地址,称为该存储单元的物理地址,把段地址左移 4 位再加上偏移地址就形成物理地址。代码段:程序员在编制程序时要把存储器划分成段,代码段用来存放程序的指令序列,代码段的段地址存放在 CS 中,指令指针寄存器 IP 指示代 码段中指令的偏移地址,处理器利用 CS:IP 取得下一条要执行的指令。数据段:数据段存放当前运行程序所用的数据,数据段的段地址存放在 DS 中。附加段: 附加段是附加的数据段,也用于数据的保存,另外,串操作指令将附加段作为其目的操作数
37、的存放区域。附加段的段地址存放在 ES 中。堆栈段: 堆栈段是堆栈所在的主存区域,堆栈段的段地址存放在 SS 中,堆栈指针寄存器 SP 指示堆栈栈顶的偏移地址,处理器利用 SS:SP 操作堆栈中的数据。堆栈:堆栈是一个“后进先出“的主存区域,位于堆栈段 中,使用 SS 段寄存器记录其段地址。它只有一个出入口,即当前栈顶,栈顶是地址较小 的一端(低端),它用堆栈指针寄存器 SP 指定。堆栈有两种以字为单位的基本操作,对应两条基本指令:进栈指令 PUSH 和出栈指令 POP。伪指令: 汇编语言程序的语句除指令外还包括伪指令和宏指令,伪指令又称为伪操作,它不象机器指令那样是在程序运行期间由计算机来执
38、行的,它是在汇编程序对源程序汇 编期间由汇编程序处理的操作,完成诸如数据定义、分配存储区、指示程序结束等功能。宏指令:宏是源程序中一段有独立功能的程序代码,它只需要在源程序中定义一次,就可以多次调用,调用时只需要用一个宏指令语句就可以 了。宏指令是用户自定义的指令,在编程时将多次使用的功能用一条宏指令来代替。 子程序:子程序又称为过程,它相当于高级语言中的过程和函数。在一个程序的不同部分,往往要用到类似的程序段,这些程序段 的功能和结构形式都相同,只是某些变量的赋值不同,此时就可以把这些程序段写成子程序形式,以便需要时可以调用它;某些常用的特定功能的程序段也可编制成 子程序的形式供用户使用。
39、12中断:中断是一种使 CPU 中止正在执行的程序而转去处理特殊事件的操作,这些引起中断的事件称为中断源,它们可能是来自外设的输入输 出请求,也可能是计算机的一些异常事故或其它内部原因。中断处理 程序:当中断发生时,处理器中止当前正在运行的程序,而转到处理特殊事件的程序段中去执行,这种处理中断的子程序就是中断处理程序,又称为中断服务程序。 中断处理程序的入口地址被安排在中断向量表中。BIOS 中 断:在存储器系统中,从地址 0FE000H 开始的 8K ROM 中装有BIOS(Basic Input/Output System)例行程序。驻留在 ROM 中的基本输入输出程序 BIOS 提 供了
40、系统加电自检、引导装入、主要 I/O 设备的处理程序以及接口控制等功能模块来处理所有的系统中断。BIOS 中断给程序员编程带来很大方便,程序员不必了解硬件 I/O 接口的特性,可直接用指令设置参数,然后中断调用 BIOS 中的程序。 暂存器: 用来暂存由数据总线或通用寄存器送来的操作数,并把它作为另一个操作数。中断: 中断是单片机实时地处理内部或外部事件的一种内部机制。当某种内部或 外部事件发生时,单片机的中断系统将迫使 CPU 暂停正在执行的程序,转而去进行中断事件的处理,中断处理完毕后,又 返回被中断的程序处,继续执行下去。掉电保护: 指在正常供电电源掉电时,迅速用备用直流电源供电,以保证
41、在一段时间内信息不会丢失,当主电源恢复供电时,又 自动切换为主电源供电。寄存器寻址: 操作数在寄存器中,由指令操作码中的 rrr 三位的值和 PSW 中RS1 及 RS0 的状态,选中某个工作寄存器区的某个寄存器,然后进行相应的指令操 作。波特率: 即每秒钟传送二进制数的位数, 波特率越高,数据传输的速度越快。D/A 转换: 即将二进制数量转换成与其量值成正比的电流信号或电压信号。A/D 转换: 即将模拟量转换成相应的数字量,然而送计算机处理。串行方式: 指数据的各位分时传送,只需一条数据线,外加一条公共信号地线和若干条控制信号线。并行方式: 指数据的各位同时传送,每一条数据都需要一条传输线。
42、 伪指令: 用于告诉汇编程序如何进行汇编的指令,它既不控制机器的操作也不被汇编成机器代码,只能为汇编程序所识别并指导汇编如何进行。13SLEEP MODI 睡觉模式: 保证程序内部运行,但与外部的传输等动作已停止的一种运行模式。linking 连接: 把编译后生成的 *.obj 文件与其它 *.obj 文件合并成机器能识别的机器文件。IC:输入与输出共用一条传输线,而时钟由另一条线控制的一种串行传输方 式。SFR 特殊功能寄存器区: 8051 把 CPU 中的专用寄存器、并行端口锁存器、串行口与定时器/计数器内 的控制寄存器集中安排到一个区域,离散地分布在地址从 80H 到 FFH 范围内,这
43、个区域称为特殊功能寄存器区 SFR。计算机中数的表示数字: 1、十进制: 十进制就是基数为“十”,所使用的数码为 09 共 10 个数字。逢十进一。是我们每天都会运用到的,在这里就不多谈了。2、二进制: 二进制的基数为“二”,其使用的数码只有 0 和 1 两个。在计算机中容易实 现,在常用的的实现方式中如:可以用电路的高电平表示 1,低电平表示0;或者三极管截止时集电极的输出表示 1,导通时集电极输出表示 0。 3、十六进制:由于二进制位数太长,不易记忆和收写,所以人们又提出了十六进制的书 写形式。我们在汇编语言中多数用十六进制。二进制,十进制,十六进制数码对照十进制8421BCD 码二进制十
44、进制8421BCD 码二进制1141000110A101033001112C110055010114E1110770111161010000计算机只识别和处理数字信息,数字是以二进制数表示的;它易于物理实 现,同时,资料存储、传送和处理简单可靠;运算规则简单,使逻辑电路的设计、分析、综合、方便,使计算器具有逻辑性。系列与 89C51 系列的比较首先,89C51 单片机是 8 位单片机。其指令是采用的被称为“ CISC ”的复杂指令集,共具有 111 条指令。而 MSP430 单片机是 16 位的单片机,采用了精简指令集( RISC )结构,只有简洁的 27 条指令,大量的指令则是模拟指令,众多
45、的寄存器以及片内数据存储器都可 参加多种运算。这些内核指令均为单周期指令,功能强,运行的速度快。 其次,89C51 单片机本身的电源电压是 5 伏,有两种低功耗方式:待机方式和掉电方式。正常情况下消耗的电流为 24mA ,在掉电状态下,其耗电电流仍为 3mA ;即使在掉电方式下,电源电压可以下降到 2V ,但是为了保存内部RAM 中的数据,还需要提供约 50uA 的电流。而 MSP430 系列单片机在低功耗方面的优越之处,则是 89C51 系列不可比拟的。正因为如此, MSP430 更适合应用于使用电池供电的仪器、仪表类产品中。 再者,89C51 系列单片机由于其内部总线是 8 位的,其内部功
46、能模块基本15上都是 8 位的虽然经过各种努力其内部功能模块有了显著增加,但是受其结构本身的限制很大,尤其模拟功能部件的增加更 显困难。 MSP430 系列其基本架构是 16 位的,同时在其内部的数据总线经过转换还存在 8 位的总线,在加上本身就是混合型的结构,因而对它这样的开放型的架构来说,无论扩展 8 位的功能模块,还是 16 位的功 能模块,即使扩展模 / 数转换或数 / 模转换这类的功能模块也是很方便的。这也就是为什么 MSP430 系列产品和其中功能部件迅速增加的原因。 最后,就是在开发工具上面。对于 89C51 来说,由于它是最早进入中国的单片机,人们对它在熟悉不过了,再加上我 国各方人士的努力,创造了不少适合我们使用的开发工具。但是如何实现在线编程还是一个很大的问题。对于MSP430 系列而言,由于引进了 Flash 型程序存储器和 JTAG 技术,不仅使开发工具变得简便,而且价格也相对低廉,并且还可以实现在 线编程。