1、单击此处编辑母版标题样式,单片机原理与应用技术(第2版)清华大学出版社,单片机原理与应用技术(第2版),1.1 单片机的发展概述,1.2 单片机的特点及分类,1.3 单片机的应用领域,小结,第1章 单片机基础知识,单片机,在一片集成电路芯片上集成微处理器、存储器、I/O接口电路等,从而构成了,单芯片微型计算机,即单片机,。,三种应用形态的比较,:,单板机,单片机,系统机(多板机),1.1 单片机的发展概述,单片机的发展,主要经历了四个阶段:,第一阶段(,19741978年):初级单片机阶段。,第二阶段(19781982年):高性能8位机阶段。,第三阶段(19821990):16,位单片机推出阶
2、段。,第四阶段,(1990,到现在):单片机全面发展阶段。,1.1.1 单片机的发展过程,1.高性能化,2.存储大容量化,3.外围电路内装化,4.片内I/O口的改进,5.低功耗化、宽电压,1.1.2 单片机的发展趋势,1.1 单片机的发展概述,控制性能和可靠性高,实时控制功能特别强,其CPU可以对I/O端口直接进行操作,,位操作能力,更是其它计算机无法比拟的。另外,由于CPU、存储器及I/O接口,集成在同一芯片内,,各部件间的连接紧凑,数据在传送时,受干扰的影响较小,,且不易受环境条件的影响,所以单片机的,可靠性非常高,。,1、单片机的特点,1.2 单片机的特点及分类,体积小、价格低、易于产品
3、化,单片机芯片即是一台完整的微型计算机,,对于批量大的专用场合,一方面可以在众多的单片机品种间进行匹配选择;同时还可以专门进行芯片设计,使芯片的功能与应用具有良好的对应关系;在单片机产品的引脚封装方面,有的单片机引脚已减少到8个或更少。,从而使应用系统的,印制板减小、接插件减少、安装简单方便。,按CPU处理字的长度分,就CPU处理字的长度而言,有4位、8位、32位单片机,按使用范围分,可分为通用单片机和专用单片机两大类,2、单片机的分类,1.2 单片机的特点及分类,3.主要产品系列,智能仪器仪表,单片机用于各种仪器仪表,一方面提高了仪器仪表的使用功能和精度,使仪器仪表智能化,同时还简化了仪器仪
4、表的硬件结构,从而可以方便地完成仪器仪表产品的升级换代。如,各种智能电气测量仪表、智能传感器,等。,1.3 单片机的应用领域,实时工业控制,单片机还可以用于各种物理量的采集与控制。电流、电压、温度、液位、流量等物理参数的采集和控制均可以利用单片机方便地实现。在这类系统中,利用单片机作为系统控制器,可以根据被控对象的不同特征采用不同的智能算法,实现期望的控制指标,从而提高生产效率和产品质量。典型应用如,电机转速控制、温度控制、自动生产线,等。,机电一体化产品,机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的各种机电产品。单片机在机电一体化产品的开发中可以发挥
5、巨大的作用。,典型产品如机器人、数控机床、自动包装机、点钞机、医疗设备、打印机、传真机、复印机,等。,家用电器,家用电器是单片机的又一重要应用领域,前景十分广阔。如空调器、电冰箱、洗衣机、电饭煲、高档洗浴设备、高档玩具等。,另外,在交通领域中,汽车、火车、飞机、航天器等均有单片机的广泛应用。如汽车自动驾驶系统、航天测控系统、黑匣子等。,1.3 计算机运算基础,1.3.1 数制,1.3.2 有符号二进制数的编码,1.3.3 二进制编码,1.3.1 数制,数制,是指数的制式,是人们利用符号进行计数的科学方法。,数制有很多种,在计算机中常用的数制有,十进制,、,二进制,和,十六进制,。,1.十进制,
6、十进制中共使用09十个数字符号(称为,数码,),数码的个数称为,基数,。十进制的基数为10,任何一个十进制数都可用这十个数码的组合来表示。,十进制数一般有以下特点:,有09十个数字符号,基数为,10,,各位的权为,10,n,(,n,为整数)。,运算规则是加法,逢十进一,、减法,借一为十,。,用后缀,D,(Decimal)表示十进制数,通常对十进制数可不加后缀。,1.十进制,任一个数中每一位的值可用该位的数字乘以基数的幂次来表示,基数的幂次称为,权,。,十进制数各位的权是以10为底的幂,任何一个十进制数都可用权展开式来表示。,例如:,十进制数1986.129可如下式展开:,1986.129=11
7、0,3,+910,2,+810,1,+610,0,+110,-1,+210,-2,+910,-3,上式中10,0,、10,1,、10,2,、10,3,分别称为,0权位,、,1权位,、,2权位,、,3权位,。,2.二进制,二进制中共使用0、1两个数字符号。,二进制数一般有以下特点:,有0、1两个数字符号,基数为,2,,各位的权为,2,n,(,n,为整数)。,运算规则是加法,逢二进一,、减法,借一为二,。,用后缀,B,(Binary)表示二进制数。,2.二进制,二进制数各位的权是以2为底的幂,任何一个二进制数都可用权展开式来表示。,例如:,二进制数1011.11可如下式展开:,1011.11B=1
8、2,3,+02,2,+12,1,+12,0,+12,-1,+12,-2,由上式可知,二进制数1011.11B相当于十进制数11.75。,3.十六进制,十六进制中共使用09及AF十六个数字符号,其中AF相当于十进制数的1015。,十六进制数一般有以下特点:,有09及AF十六个数字符号,基数为,16,,各位的权为,16,n,(,n,为整数)。,运算规则是加法,逢十六进一,、减法,借一为十六,。,用后缀,H,(Hexadecimal)表示十六进制数。,3.十六进制,十六进制数各位的权是以16为底的幂,任何一个十六进制数都可用权展开式来表示。,例如:,十六进制数5D6E.4可如下式展开:,5D6E.4
9、H=516,3,+1316,2,+616,1,+1416,0,+416,-1,由上式可知,十六进制数5D6E.4相当于十进制数23918.25。,十进制数、二进制数和十六进制数对照表,十进制数,二进制数,十六进制数,十进制数,二进制数,十六进制数,0,0000,0,8,1000,8,1,0001,1,9,1001,9,2,0010,2,10,1010,A,3,0011,3,11,1011,B,4,0100,4,12,1100,C,5,0101,5,13,1101,D,6,0110,6,14,1110,E,7,0111,7,15,1111,F,4.不同数制之间的转换,二进制数转换成十六进制数采用
10、四位合一位,”法,十六进制数转换成二进制数采用“,一位分四位,”法,二进制数转换成十进制数按,权展开后相加,十六进制数转换成十进制数按,权展开后相加,十进制整数转换成二进制整数采用“,除以2取余,”法,十进制整数转换成十六进制整数采用“,除以16取余,”法,十进制小数转换成二进制小数采用“,乘2取整,”法,十进制小数转换成十六进制小数采用“,乘16取整,”法,4.不同数制之间的转换,【例1】,将十进制整数100转换成二进制整数。,解:用2连续除100,直至商小于2,算式如下:,运算结果:100=1100100B。,1.3.3 二进制编码,在计算机中对,数字,、,字母,和,字符,用二进制代码
11、进行编码的方法很多,二进制数的位数越长,所能编码的数字、字母和字符就越多。,常用的二进制编码有,BCD码,、,ASCII码,等。,1.BCD码,用二进制编码表示的十进制数称为,二-十进制数,,简称BCD(Binary Coded Decimal)码。,BCD码保留了十进制的权,用四位二进制数给09这10个数字编码。,BCD码种类较多,如有,8421码,、,2421码,和,余3码,等。,最常用的是 8421BCD码(以后简称BCD码),组成它的4位二进制数码的权分别是8、4、2、1。,8421BCD码与十进制数的对应关系表,十进制数,8421码,十进制数,8421码,十进制数,8421码,0,0
12、000,6,0110,12,00010010,1,0001,7,0111,13,00010011,2,0010,8,1000,14,00010100,3,0011,9,1001,15,00010101,4,0100,10,00010000,16,00010110,5,0101,11,00010001,17,00010111,1.BCD码,BCD码的加减法运算与十进制运算规则相同,加法为,逢十进一,、减法为,借一为十,。,BCD码加法运算的修正原则:,若和的低4位大于9或低4位向高4位有进位,则低4位加6;若高4位大于9或高4位向最高位有进位,则高4位加6。,BCD码减法运算的修正原则:,若差的
13、低4位大于9或低4位向高4位有借位,则低4位减6;若高4位大于9或高4位向最高位有借位,则高4位减6。,2.ASCII码,ASCII码(Ameriacan Standard Coded for Information Interchange)是“,美国信息交换标准代码,”的简称,已成为国际通用的标准编码。,ASCII码采用7位二进制编码,可为128个字符编码,这128个字符分为两类。,图形字符,包括10个十进制数符、52个大小写英文字母和34个其它字符,共计96个。图形字符具有特定的形状,可以在显示器上显示。,控制字符,包括回车、换行、退格等,共32个。控制字符没有特定的形状但有一定的控制作用
14、不能在显示器上显示。,ASCII码字符表,字 高,低 符 位,位,0,1,2,3,4,5,6,7,000,001,010,011,100,101,110,111,0,0000,NUL,DLE,SP,0,P,、,p,1,0001,SOH,DC1,!,1,A,Q,a,q,2,0010,STX,DC2,“,2,B,R,b,r,3,0011,ETX,DC3,#,3,C,S,c,s,4,0100,EOT,DC4,4,D,T,d,t,5,0101,ENQ,NAK,%,5,E,U,e,u,6,0110,ACK,SYN,&,6,F,V,f,v,7,0111,BEL,ETB,7,G,W,g,w,8,1000,
15、BS,CAN,(,8,H,X,h,x,9,1001,HT,EM,),9,I,Y,j,y,A,1010,LF,SUB,*,:,J,Z,j,z,B,1011,VT,ESC,+,;,K,k,C,1100,FF,FS,,,L,l,|,D,1101,CR,GS,-,=,M,m,E,1110,SO,RS,.,N,n,F,1111,SI,US,/,?,O,o,DEL,1.4 微型计算机的结构与原理,1.4.1 微型计算机的基本结构,1.4.2 微型计算机的工作原理,1.4.1 微型计算机的基本结构,微型计算机由,硬件系统,和,软件系统,两大部分组成,一般把二者构成的系统称为微型计算机系统。,微型计算机的硬件
16、主要是由,CPU,(运算器和控制器)、,存储器,、,I/O接口,和,I/O设备,组成,各组成部分之间通过地址总线,AB,(Address Bus)、数据总线,DB,(Data Bus)、控制总线,CB,(Control Bus)联系在一起。,微型计算机的软件包括,系统软件,和,应用软件,两大类。软件与硬件相辅相成,共同构成微型计算机系统,缺一不可。,1.4.2 微型计算机的工作原理,指令,是对计算机发出的一条条工作命令,命令它执行规定的操作,,程序,是实现既定任务的指令序列。,把,程序,和,数据,送到具有记忆功能的,存储器,中保存起来,计算机工作时只要给出程序中第一条指令的地址,,控制器,就可
17、依据存储程序中的指令顺序周而复始地取出指令、分析指令、执行指令,直到执行完全部指令为止。,微型计算机执行程序的过程,微型计算机执行程序的过程就是逐条执行指令的过程。由于执行每一条指令,都包括,取指令,与,执行指令,两个基本阶段,所以,微机的工作过程,也就是不断地取指令和执行指令的过程。,17+15,的加法运算程序如下:,存储地址 机器语言程序 汇编语言程序 注释,0000H 74 11 MOV A,#11H,;数11H送入累加 器A,0002H 24 0F ADD A,#0FH,;数0FH与累加器A中的11H,相加,和送入累加器A,0004H 80 FE SJMP ,;暂停,执行程序的过程示意
18、图,执行第一条指令的过程(二),经过对操作码74H译码后,CPU识别出这个操作码是把下一个存储单元中的操作数送入累加器A的双字节指令,所以,执行第一条指令就必须把指令第2字节中的操作数取出来。,取第一条指令操作数的步骤,如下:,把程序计数器PC的内容0001H送到地址寄存器AR。,程序计数器PC的内容送到AR后,PC自动加1,变为0002H。此时AR中的内容并没有变化。,把地址寄存器AR的内容0001H通过地址总线AB送至存储器,经地址译码器译码,选中存储器相应的0001H单元。,CPU控制器发出读命令。,在读命令控制下,将选中的0001H单元的内容11H读到数据总线DB上。,把读出的内容11
19、H经数据总线DB送到数据寄存器DR。,因CPU已知这时读出的是操作数,且指令要求把它送到累加器A,故把数据寄存器DR的内容11H经内部数据总线送到累加器A中,于是第一条指令执行完毕,进入第二条指令的取指令阶段。,本章小结,计算机按规模、性能、用途和价格来分类,可分为巨、大、中、小、微型计算机。计算机技术已发展成通用计算机系统和嵌入式计算机系统两大分支,嵌入式系统一般可分为工业控制计算机、通用CPU模块、嵌入式微处理器和嵌入式微控制器四类。,单片机是经典的嵌入式系统,,它具有专门为嵌入式应用设计的体系结构与指令系统。,单片机主要特点:集成度高、控制功能强、可靠性高、低功耗、低电压、外部总线丰富、
20、功能扩展性强、体积小、性价比高。单片机按数据处理位数可分为4位机、,8位机,、16位机和32位机,按适用范围可分为,通用型,和专用型,按并行总线可分为,总线型,和非总线型。,本章小结,在计算机中常用的数制有十进制、二进制和十六进制。不同数制之间的转换都有一定的规则,如二进制数转换成十六进制数采用“,四位合一位,”法,十六进制数转换成二进制数采用“,一位分四位,”法,十进制整数转换成二进制整数采用“,除2取余,”法,十进制整数转换成十六进制整数采用“,除16取余,”法,十进制小数转换成二进制小数采用“,乘2取整,”法,十进制小数转换成十六进制小数采用“,乘16取整,”法。,BCD码,的加减法运算
21、与十进制运算规则相同,但必须对运算结果进行修正。,ASCII码,是国际通用的标准编码,采用7位二进制编码,分为图形字符和控制字符两类,共128个字符。,本章小结,微型计算机由硬件系统和软件系统两大部分组成。硬件主要是由CPU、存储器、I/O接口和I/O设备组成,采用总线结构形式。软件包括系统软件和应用软件两大类,程序设计语言分为三级,分别是机器语言、,汇编语言,和高级语言。,微型计算机执行程序的过程就是逐条执行指令的过程。执行每一条指令,都包括取指令与执行指令两个基本阶段。,习 题,1.十进制、二进制、十六进制数各有什么特点?请举例加以说明。,2.将下列十进制数转换为二进制和十六进制数。,3.
22、将下列二进制和十六进制数转换为十进制数。,1001010B 0.1010111B 1010.11B 1C3H 0.A49H,4.将下列二进制数转换为十六进制数。,1011011B 0.1010101B 1010.0101B,5.机器数、真值、原码、反码和补码如何表示?请举例加以说明。,6.下列是有符号数的原码,请写出其反码和补码。,01111011B 10101010B 10000001B 11111111B,习 题,7.把下列数看成无符号数时,对应的十进制数为多少?若把它们看成有符号数的补码,对应的十进制数是多少?,10101010B 00110010B 10000001B,8.把下列各数用
23、补码表示,再按补码运算规则分别求出X+Y,补,和X-Y,补,。,X=+46 Y=-78 X=+112 Y=-51,9.写出89和157两数的BCD码,并对这两个BCD码进行加法运算。,10.微型计算机系统的硬件和软件包括哪些部分?,11.结合图1-2简述微型计算机执行一条指令的过程。,单片机的内部、外部结构(一),一、单片机的外部结构,拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。1、电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。2、振蒎电路:单片机是一种时序电路,必须提供脉冲
24、信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶振,电容,连上就可以了,按图1接上即可。3、复位引脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。4、EA引脚:EA引脚接到正电源端。至此,一个单片机就接好,通上电,单片机就开始工作了。,我们要P1.0输出高电平,只要写SETB P1.0,,要P1.0输出低电平,只要写 CLR P1.0就可以了。,由上式可知,十六进制数5D6E.,BCD码的加减法运算与十进制运算规则相同,但必须对运算结果进行修正。,2 微型计算机的工作原理,ASCII码是国际通用的标准编码,采用7位二进制编码
25、分为图形字符和控制字符两类,共128个字符。,4、EA引脚:EA引脚接到正电源端。,用后缀H(Hexadecimal)表示十六进制数。,+210-2+910-3,11B=123+022+121+120+12-1+12-2,0004H 80 FE SJMP ;暂停,最常用的是 8421BCD码(以后简称BCD码),组成它的4位二进制数码的权分别是8、4、2、1。,0002H 24 0F ADD A,#0FH;数0FH与累加器A中的11H,3、复位引脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。,ASCII码(Ameriacan Standard Coded fo
26、r Information Interchange)是“美国信息交换标准代码”的简称,已成为国际通用的标准编码。,十六进制数转换成二进制数采用“一位分四位”法,BCD码保留了十进制的权,用四位二进制数给09这10个数字编码。,计算机看不懂SETB CLR之类的指令,我们得把指令翻译成计算机能懂的方式,再让计算机去读。计算机能懂什么呢?它只懂一样东西数字。因此我们得把SETB P1.0变为(D2H,90H),把CLR P1.0变为(C2H,90H),至于为什么是这两个数字,这也是由51芯片的设计者-INTEL规定的,我们不去研究。第二步,在得到这两个数字后,怎样让这两个数字进入单片机的内部呢?这要借助于一个硬件工具编程器。,我们将编程器与电脑连好,运行编程器的软件,然后在编缉区内写入(D2H,90H)见图2,写入好,拿下片子,把片子插入做好的电路板,接通电源,小,结,单片机是在一片集成电路芯片上集成,CPU,、存储器、定时器,/,计数器及多种形式的,I/O,接口而构成的微型计算机。,本章介绍单片机的发展概述、特点、分类及应用领域,为后面章节的学习打下基础。,






