《单片机原理课件第一章》由会员分享,可在线阅读,更多相关《单片机原理课件第一章(126页珍藏版)》请在金锄头文库上搜索。
1、单片微机原理及应用主讲教师: 胡志坚武汉大学电气工程学院有关本课程学习的几点建议有关本课程学习的几点建议 本课程是一门实践性、应用性很强的学科本课程是一门实践性、应用性很强的学科仅仅听懂还不够仅仅听懂还不够, ,重在培养动手能力重在培养动手能力硬件硬件/ /软件同样重要、不可偏废软件同样重要、不可偏废 硬件是骨架,软件是皮肉器脏及思想硬件是骨架,软件是皮肉器脏及思想本课程的前期基础课程是数字电路与微机原理本课程的前期基础课程是数字电路与微机原理这方面知识掌握得不够好的请自己补上这方面知识掌握得不够好的请自己补上预习、听课、复习、实验环环都重要预习、听课、复习、实验环环都重要用科学的方法学习用科
2、学的方法学习请各班去自控实验室找李国强老师买本课程的请各班去自控实验室找李国强老师买本课程的实验指导书实验指导书绪绪 论论 在工业、农业、军事、保安、金融、仪器在工业、农业、军事、保安、金融、仪器仪表、航空航天、医疗、通讯、办公设备、仪表、航空航天、医疗、通讯、办公设备、娱乐休闲、健身、体育竞赛、服务领域娱乐休闲、健身、体育竞赛、服务领域, ,大量大量单片机单片机- -嵌入式嵌入式技术已经无处不在。技术已经无处不在。正迅速改变着人们传统的生产和生活方式。正迅速改变着人们传统的生产和生活方式。 请稍微留心一下我们的周围,看看身边到请稍微留心一下我们的周围,看看身边到底发生了什么变化?底发生了什么
3、变化?单片微机原理及应用单片微机原理及应用教学课件教学课件单片机技术的应用遍布国民经济与人民生活的各个领域单片微机原理及应用单片微机原理及应用教学课件教学课件从一个简单的测控应用实例说起动作选择按钮动作选择按钮红外线传感器红外线传感器89C2051单片机单片机复复位位按按钮钮电电源源指指示示灯灯从一个简单的测控应用实例说起从一个简单的测控应用实例说起任务一:任务一:控制一盏灯点亮控制一盏灯点亮任务二:任务二:红灯周期性地点亮红灯周期性地点亮/ /熄灭熄灭信号检测信号检测柔性开关柔性开关集群灯控集群灯控顺序控制顺序控制/ /多任务定时切换多任务定时切换自动生产流水线自动生产流水线任务三:任务三:
4、红外防盗报警红外防盗报警实时控制实时控制简单测控实例原理图数字电路中由13片IC组成的数字钟数字电路中由数字电路中由1313片片ICIC组成的数字钟的数字钟数字电路中由13片IC组成的数字钟单片IC(单片机)电子钟单单片片机机单片机与嵌入式技术 重要吗?有用吗?遥远吗? 问题的答案是不言而喻的。第一章:单片机基础本讲重点: MCS-51的基本特性; 单片机的引脚与I/O口结构; 存储器、堆栈与特殊功能寄存器.1.1 嵌入式系统与单片机 计算机发展简介l l第一台电子计算机于1946年问世 。l l计算机的发展日新月异,至今已经历了由电子管计算机、晶体管计算机、集成电路计算机到大规模集成电路计算
5、机四代 。l l单片机的出现是计算机技术发展史上的一个重要里程碑,它使计算机从海量数值计算进入到智能化控制领域 。计算机技术逐步发展形成通用计算机系统和嵌入式计算机系统两大分支。 1.1.1 嵌入式系统的概念 基本概念l l嵌入式计算机系统是面对测控对象,嵌入到应用系统中的计算机系统的统称,简称嵌入式系统(Embedded System) 。l l通用计算机系统主要满足海量、高速数值处理,兼顾控制功能;嵌入式计算机系统主要满足测控对象的控制功能,兼顾数值处理。 嵌入式系统的分类 l l工业控制工业控制计算机。计算机。 l l通用通用CPUCPU模块。模块。 l l嵌入式微处理器嵌入式微处理器(
6、Embedded Processor)(Embedded Processor)。 l l嵌入式微控制器嵌入式微控制器(Embedded Microcontrollers)(Embedded Microcontrollers)。 嵌嵌入入式式微微控控制制器器是是嵌嵌入入式式系系统统概概念念广广泛泛使使用用后后,给给传统单片机定位的称呼。传统单片机定位的称呼。 单单片片机机是是经经典典的的嵌嵌入入式式系系统统,它它具具有有唯唯一一的的专专门门为为嵌入式应用设计的体系结构与指令系统嵌入式应用设计的体系结构与指令系统 。 国国内内外外公公认认的的标标准准体体系系结结构构是是IntelIntel的的MC
7、S-51MCS-51系系列列,其其中中80518051已已被被许许多多厂厂家家作作为为基基核核,发发展展了了许许多多兼兼容系列,所有这些系列都统称为容系列,所有这些系列都统称为80C5180C51系列系列。 1.1.2 单片机技术的发展 l l第第一一阶阶段段(1974(19741976)1976)初初始始阶阶段段。以以4 4位位单单片片机机为为主主,功功能能比比较较简简单单。如如19741974年年美美国国FairchildFairchild公公司司生生产产的的第第一一台台单单片片机机F8F8,采用双片形式,功能简单。,采用双片形式,功能简单。 l l第第二二阶阶段段(1976(197619
8、78)1978)探探索索阶阶段段。单单芯芯片片形形式式,低低档档8 8位位单单片片机机。如如19761976年年美美国国IntelIntel公公司司生生产产的的MCS-48MCS-48系系列列单单片片机机,这这是是第一台完全的第一台完全的8 8位单片机位单片机。l l第第三三阶阶段段(1978(19781982)1982)完完善善阶阶段段。提提高高电电路路的的集集成成度度,增增加加8 8位位单单片片机机的的功功能能。如如IntelIntel公公司司在在MCS-48MCS-48基基础础上上推推出出了了完完善善的的高档高档8 8位位单片机系列单片机系列MCS-51MCS-51。l l第第四四阶阶段
9、段(1982(19821990) 1990) 巩巩固固和和发发展展阶阶段段。巩巩固固发发展展8 8位位单单片片机机、推推出出1616位位单单片片机机、向向微微控控制制器器发发展展,强强化化了了智智能能控控制制器器的特征的特征 。 如将如将ADCADC、DACDAC、PWMPWM、WDTWDT、DMADMA集成到单片机集成到单片机 。l l第第五五阶阶段段(1990(1990至至今今) ) 全全面面发发展展阶阶段段。适适合合不不同同领领域域要要求求的的单单片片机机,如如各各种种高高速速、大大存存储储容容量量、强强运运算算能能力力的的8 8 位位/16/16位位/ /3232位位通用型单片机,还有
10、用于单一领域的廉价的通用型单片机,还有用于单一领域的廉价的专用型专用型单片机单片机1.1.3 单片机的特点、分类及发展趋势 单片机的主要特点单片机的主要特点 l l集成度高集成度高 l l控制功能强控制功能强 l l可靠性高可靠性高 l l低功耗、低电压低功耗、低电压 l l外部总线丰富外部总线丰富 l l功能扩展性强功能扩展性强 l l体积小、成本低体积小、成本低 l l性价比高性价比高 单片机的单片机的分类分类l l按按单片机数据处理单片机数据处理位数位数来划分来划分 4 4位单片机位单片机 8 8位单片机位单片机 1616位单片机位单片机 3232位单片机位单片机 l l按单片机按单片机
11、适用范围适用范围来划分来划分 通用型单片机通用型单片机 专用型单片机专用型单片机 l l按单片机按单片机并行总线并行总线来划分来划分 总线型单片机(如总线型单片机(如AT89C51 AT89C51 ) 非总线型单片机(如非总线型单片机(如AT89C2051 AT89C2051 ) 单片机的发展趋势l lCMOSCMOS化化单片机将具有更低的单片机将具有更低的功耗功耗、更低的、更低的电压电压。 l l高高性性能能化化精精简简指指令令集集( (RISCRISC) )结结构构和和流流水水线线技技术术将将得到广泛应用得到广泛应用 。l l高可靠性高可靠性提高单片机的抗电磁干扰能力提高单片机的抗电磁干扰
12、能力 。 l l大容量化大容量化扩大片内存储器容量。扩大片内存储器容量。 l l多多功功能能化化把把众众多多的的各各种种外外围围功功能能器器件件集集成成在在片片内内,如模如模/ /数转换器、数数转换器、数/ /模转换器、液晶显示驱动器模转换器、液晶显示驱动器 等。等。 l l串串行行扩扩展展技技术术 SPISPI、I I2 2C C、MicrowireMicrowire、1-Wire1-Wire等等串串行行总总线线的的引引入入,可可以以使使单单片片机机的的引引脚脚设设计计得得更更少少,单片机系统结构更加简化。单片机系统结构更加简化。 单片机与嵌入式单片机与嵌入式:单片微机(单片微机(Singl
13、e Chip Micro-computerSingle Chip Micro-computer)微控制器(微控制器(M Micro-icro-C Controller ontroller U UnitnitMCUMCU)嵌入式微控制器(嵌入式微控制器(Embedded MicrocontrollerEmbedded Microcontroller) 单片机应用领域单片机应用领域:测控系统、测控系统、智能仪表智能仪表、智能接口、智能接口、办公自动化办公自动化、光机电一体化设备光机电一体化设备、通讯设备、通讯设备、网络设备网络设备、汽车、汽车电子、电子、消费类电子产品消费类电子产品、智能楼宇设备、
14、智能楼宇设备组成组成: CPUCPU( (进行运算、控制进行运算、控制) ) RAMRAM( (数据存储器数据存储器) ) I/OI/O口口( (串口、并口等串口、并口等) ) ROMROM( (程序存储器程序存储器) ) PCPC机机: 上述部件以芯片形式安装在上述部件以芯片形式安装在主板主板上。上。 单片机单片机:上述部件被集成到:上述部件被集成到单芯片单芯片中。中。通用通用PCPC包括:包括:键盘、显示器、鼠标、硬键盘、显示器、鼠标、硬/ /软软/ /光驱、光驱、音箱、打印机、扫描仪音箱、打印机、扫描仪等外设等外设。单片机单片机则只是一片集成电路。(则只是一片集成电路。(100100、4
15、848、4040、3232、2828、2020、1616、8 8条引脚)。条引脚)。单片机与计算机之异同(1)功能功能:PCPC机:机: 数据运算、采集、处理、存储、传输;数据运算、采集、处理、存储、传输;单片机:单片机:控制(或受控于)外设。控制(或受控于)外设。通用计算机擅长于数据通用计算机擅长于数据运算运算、采集、处理、存储、采集、处理、存储和传输;和传输;单片机的专长则是单片机的专长则是测控测控,往往,往往嵌入嵌入某个仪器某个仪器/ /设备设备/ /系统中,使其达到智能化的效果。系统中,使其达到智能化的效果。单片机与计算机之异同(2)应用特点:个人计算机(微机):体积大,功耗大,价格高
16、,用途较固定,属体积大,功耗大,价格高,用途较固定,属通用计通用计算机算机。易于学习掌握和使用,但用于控制时必须制。易于学习掌握和使用,但用于控制时必须制作或购买专用的接口卡,并编制专门的应用软件。作或购买专用的接口卡,并编制专门的应用软件。单片机:体积小,功耗小,价格低,用途灵活,无处不在,体积小,功耗小,价格低,用途灵活,无处不在,属属专用计算机。专用计算机。是一种特殊器件,需经过专门学习是一种特殊器件,需经过专门学习方能掌握应用,应用中要设计专业的硬件和软件。方能掌握应用,应用中要设计专业的硬件和软件。单片机与计算机之异同(3)1.3 计算机运算基础 l l1.3.1 数制 l l1.3
17、.2 二进制编码 1.3.1 数制 l l数制是指数的制式,是人们利用符号进行计数的科学方法。l l数制有很多种,在计算机中常用的数制有十进制、二进制和十六进制。 2. 二进制 l l二进制中共使用0、1两个数字符号。 l l二进制数一般有以下特点:l l有0、1两个数字符号,基数为2,各位的权为2n(n为整数)。 l l运算规则是加法逢二进一、减法借一为二。 l l用后缀B(Binary)表示二进制数。3. 十六进制 l l十六进制中共使用09及AF十六个数字符号,其中AF相当于十进制数的1015。 l l十六进制数一般有以下特点:l l有09及AF十六个数字符号,基数为16,各位的权为16
18、n(n为整数)。 l l运算规则是加法逢十六进一、减法借一为十六。 l l用后缀H(Hexadecimal)表示十六进制数。 十进制数、二进制数和十六进制数对照表十进制数二进制数十六进制数十进制数二进制数十六进制数000000810008100011910019200102101010A300113111011B401004121100C501015131101D601106141110E701117151111F1.3.2 二进制编码 l l在计算机中对数字、字母和字符用二进制代码进行编码的方法很多,二进制数的位数越长,所能编码的数字、字母和字符就越多。l l常用的二进制编码有BCD码、AS
19、CII码等。 1. BCD码l l用二进制编码表示的十进制数称为二-十进制数,简称BCD(Binary Coded Decimal)码 l lBCD码保留了十进制的权,用四位二进制数给09这10个数字编码。l lBCD码种类较多,最常用的是 8421 BCD码(以后简称BCD码),组成它的4位二进制数码的权分别是8、4、2、1。 8421BCD码与十进制数的对应关系表 十进制数8421码十进制数8421码十进制数8421码00000 60110 120001001010001 70111 130001001120010 81000 140001010030011 91001 150001010
20、140100 1000010000 160001011050101 1100010001 17000101112. ASCII码 l lASCIIASCII码码 (Ameriacan (Ameriacan Standard Standard Coded Coded for for Information Information Interchange)Interchange)是是“ “美美国国信信息息交交换换标标准代码准代码” ”的简称,已成为国际通用的标准编码。的简称,已成为国际通用的标准编码。 l lASCIIASCII码采用码采用7 7位二进制编码位二进制编码,可为,可为128128个字
21、符编码,个字符编码,这这128128个字符分为两类。个字符分为两类。l l图形字符图形字符包括包括1010个十进制数符、个十进制数符、5252个大小写英个大小写英文字母和文字母和3434个其它字符,共计个其它字符,共计9696个。图形字符具个。图形字符具有特定的形状,可以在显示器上显示。有特定的形状,可以在显示器上显示。l l控制字符控制字符包括回车、换行、退格等,共包括回车、换行、退格等,共3232个。个。控制字符没有特定的形状但有一定的控制作用,控制字符没有特定的形状但有一定的控制作用,不能在显示器上显示。不能在显示器上显示。 ASCII码字符表 字字 高高低低 符符 位位 位位01234
22、56700000101001110010111011100000NULDLESP0P、p10001SOHDC1!1AQaq20010STXDC2“2BRbr30011ETXDC3#3CScs40100EOTDC44DTdt50101ENQNAK%5EUeu60110ACKSYN&6FVfv70111BELETB7GWgw81000BSCAN(8HXhx91001HTEM)9IYjyA1010LFSUB*:JZjzB1011VTESC+;KkC1100FFFS,Ll|D1101CRGS- -=MmE1110SORS. NnF1111SIUS/?OoDEL1.4 微型计算机的结构与原理l l1.4
23、.1 微型计算机的基本结构 l l1.4.2 微型计算机的工作原理 1.4.1 微型计算机的基本结构 l l微微型型计计算算机机由由硬硬件件系系统统和和软软件件系系统统两两大大部部分分组组成成,一般把二者构成的系统称为微型计算机系统。一般把二者构成的系统称为微型计算机系统。 l l微型计算机的硬件主要是由微型计算机的硬件主要是由CPUCPU( (运算器和控制器运算器和控制器) )、存储器存储器、I/OI/O接口接口和和I/OI/O设备设备组成,各组成部分组成,各组成部分之间通过地址总线之间通过地址总线AB AB (Address Bus)(Address Bus)、数据总线、数据总线DBDB
24、(Data Bus) (Data Bus)、控制总线、控制总线CBCB (Control Bus) (Control Bus)联系联系在一起。在一起。l l微型计算机的软件包括微型计算机的软件包括系统软件系统软件和和应用软件应用软件两大两大类。软件与硬件相辅相成,共同构成微型计算机类。软件与硬件相辅相成,共同构成微型计算机系统,缺一不可。系统,缺一不可。 微型计算机的系统结构框图 微型计算机系统采用微型计算机系统采用总线结构总线结构形式。形式。总线结构的主要优点:设计简单、灵活性好、易于扩展、总线结构的主要优点:设计简单、灵活性好、易于扩展、便于故障检测和维修。便于故障检测和维修。 AB1.4
25、.2 微型计算机的工作原理 l l指令是对计算机发出的一条条工作命令,命令它执行规定的操作,程序是实现既定任务的指令序列。 l l把程序和数据送到具有记忆功能的存储器中保存起来,计算机工作时只要给出程序中第一条指令的地址,控制器就可依据存储程序中的指令顺序周而复始地取出指令、分析指令、执行指令,直到执行完全部指令为止。 微型计算机执行程序的过程 l l微微型型计计算算机机执执行行程程序序的的过过程程就就是是逐逐条条执执行行指指令令的的过过程程。由由于于执执行行每每一一条条指指令令,都都包包括括取取指指令令与与执执行行指指令令两两个个基基本本阶阶段段,所所以以,微微机机的的工工作作过过程程,也也
26、就就是是不不断断地地取取指指令令和和执执行行指令的过程。指令的过程。l l17+1517+15的加法运算程序如下:的加法运算程序如下: 存储地址存储地址 机器语言程序机器语言程序 汇编语言程序汇编语言程序 注释注释 0000H0000H 74 11 MOV A,#11H 74 11 MOV A,#11H; ;数数11H11H送入累加送入累加 器器A A 0002H0002H 24 0F 24 0F ADD A,#0FH ADD A,#0FH; ;数数0FH0FH与累加器与累加器A A中的中的11H11H 相加相加, ,和送入累加器和送入累加器A A 0004H0004H 80 FE 80 FE
27、 SJMP SJMP ; ;暂停暂停执行程序的过程示意图 执行第一条指令的过程(一) l l开始执行程序时,必须先给程序计数器开始执行程序时,必须先给程序计数器PCPC赋以第赋以第1 1条指令的条指令的首地址首地址0000H0000H,然后就进入第一条指令的,然后就进入第一条指令的取指令阶段取指令阶段。l l取第一条指令的步骤取第一条指令的步骤如下:如下: 把程序计数器把程序计数器PCPC的内容的内容0000H0000H送到地址寄存器送到地址寄存器ARAR。 程序计数器程序计数器PCPC的内容送入的内容送入ARAR后,后,PCPC自动加自动加1 1,即由,即由0000H0000H变变为为000
28、1H0001H。此时。此时ARAR的内容并没有变化。的内容并没有变化。 把地址寄存器把地址寄存器ARAR的内容的内容0000H0000H通过地址总线通过地址总线ABAB送至存储器,送至存储器,经地址译码器译码,选中存储器相应的经地址译码器译码,选中存储器相应的0000H0000H单元。单元。 CPUCPU控制器发出读命令。控制器发出读命令。 在读命令控制下,把所选中的在读命令控制下,把所选中的0000H0000H单元中的内容即第单元中的内容即第1 1条条指令的操作码指令的操作码74H74H读到数据总线读到数据总线DBDB上。上。 把读出的内容把读出的内容74H74H经数据总线经数据总线DBDB
29、送到数据寄存器送到数据寄存器DRDR。 因取出的是指令的操作码,故把数据寄存器因取出的是指令的操作码,故把数据寄存器DRDR的内容的内容74H74H送到指令寄存器送到指令寄存器IRIR,然后再送,然后再送到指令到指令译码器译码器IDID。这就完成。这就完成了第一条指令的取指令阶段,然后转入第一条指令的了第一条指令的取指令阶段,然后转入第一条指令的执行执行阶段阶段。 执行第一条指令的过程(二) l l经过对操作码经过对操作码74H74H译码后,译码后,CPUCPU识别出这个操作码是把下一个识别出这个操作码是把下一个存储单元中的操作数送入累加器存储单元中的操作数送入累加器A A的双字节指令,所以,
30、执行的双字节指令,所以,执行第一条指令就必须把指令第第一条指令就必须把指令第2 2字节中的操作数取出来。字节中的操作数取出来。l l取第一条指令操作数的步骤取第一条指令操作数的步骤如下:如下: 把程序计数器把程序计数器PCPC的内容的内容0001H0001H送到地址寄存器送到地址寄存器ARAR。 程序计数器程序计数器PCPC的内容送到的内容送到ARAR后,后,PCPC自动加自动加1 1,变为,变为0002H0002H。此。此时时ARAR中的内容并没有变化。中的内容并没有变化。 把地址寄存器把地址寄存器ARAR的内容的内容0001H0001H通过地址总线通过地址总线ABAB送至存储器,送至存储器
31、,经地址译码器译码,选中存储器相应的经地址译码器译码,选中存储器相应的0001H0001H单元。单元。 CPUCPU控制器发出读命令。控制器发出读命令。 在读命令控制下,将选中的在读命令控制下,将选中的0001H0001H单元的内容单元的内容11H11H读到数据总读到数据总线线DBDB上。上。 把读出的内容把读出的内容11H11H经数据总线经数据总线DBDB送到数据寄存器送到数据寄存器DRDR。 因因CPUCPU已知这时读出的是操作数,且指令要求把它送到累加已知这时读出的是操作数,且指令要求把它送到累加器器A A,故把数据寄存器,故把数据寄存器DRDR的内容的内容11H11H经内部数据总线送到
32、累加经内部数据总线送到累加器器A A中,于是第一条指令执行完毕,进入第二条指令的取指令中,于是第一条指令执行完毕,进入第二条指令的取指令阶段。阶段。 第二章 8051单片机的硬件结构l lMCS-51MCS-51是是美美国国IntelIntel公公司司的的8 8位位高高档档单单片片机机系系列列,也也是是我我国国目目前前应应用用最最为为广广泛泛的的一一种种单单片片机机系系列列。8051/80C518051/80C51是是整整个个MCS-51MCS-51系系列列单单片片机机的的核核心心,该该系系列列其其他他型型号号的的单单片片机机都都是是在在这这一一内内核核的的基基础础上上发发展展起来的。起来的。
33、 l lMCS-51MCS-51单单片片机机系系列列分分为为5151和和5252子子系系列列,并并以以芯芯片片型型号号的的末末位位数数字字加加以以标标识识。其其中中,5151子子系系列列是是基基本本型型,而而5252子系列子系列是增强型。是增强型。 l l单单片片机机型型号号带带有有字字母母“ “C C” ”的的,表表示示该该单单片片机机采采用用的是的是CHMOSCHMOS工艺工艺,具有低功耗的特点。,具有低功耗的特点。 80518051的功耗为的功耗为630mW630mW,而,而80C5180C51的功耗只有的功耗只有120mW120mW。 MCS-51单片机基本特性8 8 位的位的 CPU
34、CPU, 片内有振荡器和时钟电路片内有振荡器和时钟电路, ,工作频率为工作频率为 1 112MHz12MHz(Atmel 89CxxAtmel 89Cxx为为0 024MHz24MHz)片内有片内有 128/256128/256字节字节 RAMRAM片内有片内有 0K/4K/8K0K/4K/8K字节字节 程序存储器程序存储器ROMROM可寻址片外可寻址片外 64K64K字节字节 数据存储器数据存储器RAMRAM可寻址片外可寻址片外 64K64K字节字节 程序存储器程序存储器ROMROM片内片内 21/2621/26个个 特殊功能寄存器特殊功能寄存器(SFRSFR)4 4个个8 8位位 的并行的
35、并行I/OI/O口口(PIOPIO)1 1个个 全双工串行口全双工串行口(SIO/UARTSIO/UART)2/32/3个个1616位位 定时器定时器/ /计数器计数器(TIMER/COUNTERTIMER/COUNTER)可处理可处理 5/65/6个个中断源,中断源,两级两级中断优先级中断优先级内置内置1 1个个布尔处理器布尔处理器和和1 1个个布尔累加器布尔累加器(CyCy)MCS-51MCS-51指令集含指令集含 111111条指令条指令MCS-51系列单片机配置一览表系列片内存储器(字节)定时器计数器并行I/O串行I/O中断源片内ROM片内RAM无有ROM有EPROMIntelMCS-
36、51子系列803180C31805180C51(4K字节)875187C51(4K字节)128字节2x164x8位15IntelMCS-52子系列803280C32805280C52(8K字节)875287C52(8K字节)256字节3x164x8位16ATEML89C系列(常用型)1051(1K)/ 2051(2K)/ 4051(4K)(20条引脚DIP封装)1282151589C51(4K)/ 89C52(8K)(40条引脚DIP封装)128/2562/33215/6内部结构框图8051单片机结构框图 8051单片机的内部结构 CPUCPU即即中中央央处处理理器器,是是单单片片机机的的核核
37、心心部部件件,是是计计算算机机的的控控制制指指挥挥中中心心。同同微微型型计计算算机机CPUCPU类类似似,80518051内内部部CPUCPU由由运运算算器器和控制器两部分组成。和控制器两部分组成。 l l运运算算器器电电路路以以算算术术逻逻辑辑单单元元(ALU(ALU,Arithmetic Arithmetic Logic Logic Unit)Unit)为为核核心心,由由暂暂存存器器1 1、暂暂存存器器2 2、累累加加器器(ACC(ACC,Accumulator)Accumulator)、寄寄存存器器B B、程程序序状状态态寄寄存存器器(PSW(PSW,Program Program St
38、atus Status Word)Word)及及布布尔尔处处理理机机共共同同组组成成。它它的的主主要要任任务务是是完完成成算算术术运运算算、逻逻辑辑运运算算、位位运运算算和和数数据据传传送送等等操操作作,运运算算结结果果的的状状态态由由程程序序状态寄存器状态寄存器(PSW)(PSW)保存。保存。 l l控控制制器器电电路路包包括括程程序序计计数数器器(PC)(PC)、PCPC增增1 1寄寄存存器器、指指令令寄寄存存器器(IR)(IR)、指指令令译译码码器器(ID)(ID)、数数据据指指针针(DPTR)(DPTR)、堆堆栈栈指指针针(SP)(SP)、缓缓冲冲器器及及定定时时控控制制电电路路等等。
39、控控制制器器电电路路完完成成指指挥挥控控制制工工作作,协调单片机各部分正常工作。协调单片机各部分正常工作。 8051单片机内部结构图单片机的引脚定义从一片集成电路的角度去认识单片机8051单片机的引脚及功能 l lMCS-51MCS-51单单片片机机的的封封装装形形式式有有两两种种,一一种种是是双双列列直直插插式式(DIP)(DIP)封装,另一种是方形封装。封装,另一种是方形封装。l l80518051的的4040个引脚可分为:个引脚可分为:l l电源电源引脚引脚2 2根根l l时钟时钟引脚引脚2 2根根l l控制控制引脚引脚4 4根根l lI/OI/O引脚引脚3232根根l l由由于于805
40、18051单单片片机机是是高高性性能能的的单单片片机机,同同时时受受到到引引脚脚数数目目的的限制,所以有部分引脚具有限制,所以有部分引脚具有第二功能第二功能。 认识单片机的引脚MCS-51MCS-51单片机单片机4040脚脚VccVcc, , GNDGND 2 2XTAL1XTAL1, , XTAL2XTAL2 2 2RESETRESET 1 1EAEA/Vpp /Vpp 1 1ALEALE/PROG /PROG 1 1PSENPSEN 1 1P0.0P0.0P0.7 P0.7 8 8 P1.0P1.0P1.7 P1.7 8 8 P2.0P2.0P2.7 P2.7 8 8 P3.0P3.0P3
41、.7 P3.7 8 88051引脚的功能描述l lRST/VRST/VPDPD(9(9脚脚) ):复位信号:复位信号/ /备用电源输入引脚。备用电源输入引脚。 当当RSTRST引脚保持两个机器周期的高电平后,就可以使引脚保持两个机器周期的高电平后,就可以使80518051完成复位操作。该引脚的第二功能是完成复位操作。该引脚的第二功能是V VPDPD,即备,即备用电源的输入端,具有掉电保护功能用电源的输入端,具有掉电保护功能。l lALE/PROGALE/PROG (30 (30脚脚) ):地址锁存允许信号输出:地址锁存允许信号输出/ /编程脉冲编程脉冲输入引脚。当输入引脚。当CPUCPU访问片
42、外存储器时,访问片外存储器时,ALEALE输出信号输出信号控制锁存控制锁存P0P0口输出的低口输出的低8 8位地址,从而实现位地址,从而实现P0P0口数据口数据与低位地址的分时复用与低位地址的分时复用。 该引脚的第二功能该引脚的第二功能PROGPROG是对是对87518751内部内部4KB EPROM4KB EPROM编程写入时,作为编程脉冲的输入端编程写入时,作为编程脉冲的输入端。8051引脚的功能描述l l EA/VEA/VPPPP(31(31脚脚) ):外部程序存储器地址允许输入端:外部程序存储器地址允许输入端/ /编程编程电压输入端。电压输入端。 当当EAEA接高电平时,接高电平时,C
43、PUCPU执行片内执行片内ROMROM指令,但当指令,但当PCPC值超过值超过0FFFH0FFFH时,将自动转去执行时,将自动转去执行片外片外ROMROM指令;当指令;当EAEA接低电平时,接低电平时,CPUCPU只执行片外只执行片外ROMROM指令。对于指令。对于80318031,由于其无片内,由于其无片内ROMROM,故其,故其EAEA必须接低电平。必须接低电平。 该引脚的第二功能该引脚的第二功能V VPPPP是对是对87518751片内片内EPROMEPROM编程写编程写入时,作为入时,作为21V21V编程电压的输入端编程电压的输入端。l lPSENPSEN(29(29脚脚) ):片外:
44、片外ROMROM读选通信号端。读选通信号端。 在读片在读片外外ROMROM时,时,PSENPSEN有效,为低电平,以实现对有效,为低电平,以实现对片外片外ROMROM的读操作。的读操作。 8051引脚的功能描述l lI/OI/O引脚引脚(4(48=328=32根根) ) l lP0.0P0.0P0.7P0.7 ( (39393232脚脚) ):P0P0口的口的8 8位双向位双向I/OI/O口线。口线。 P0P0口即可作地址口即可作地址/ /数据总线使用,又可作通用的数据总线使用,又可作通用的I/OI/O口使用。口使用。当当CPUCPU访问片外存储器时,访问片外存储器时,P0P0口分时先作低口分
45、时先作低8 8位地址总线,后位地址总线,后作双向数据总线,此时,作双向数据总线,此时,P0P0口就不能再作口就不能再作I/OI/O口使用了口使用了。l lP1.0P1.0P1.7P1.7 ( (1 18 8脚脚) ):P1P1口的口的8 8位准双向位准双向I/OI/O口线。口线。 P1P1口作为通用的口作为通用的I/OI/O口使用口使用。l lP2.0P2.0P2.7P2.7 ( (21212828脚脚) ):P2P2口的口的8 8位准双向位准双向I/OI/O口线。口线。 P2P2口即可作为通用的口即可作为通用的I/OI/O口使用,也可作为片外存储器的高口使用,也可作为片外存储器的高8 8位地
46、址总线,与位地址总线,与P0P0口配合,组成口配合,组成1616位片外存储器单元地址位片外存储器单元地址。l lP3.0P3.0P3.7P3.7 (10(101717脚脚) ):P3P3口的口的8 8位准双向位准双向I/OI/O口线。口线。 P3P3口除了作为通用的口除了作为通用的I/OI/O口使用之外,每个引脚还具有第二口使用之外,每个引脚还具有第二功能。功能。 单片机的引脚(电源端)lVcc, GNDVcc, GND: : 正电源端与接地端正电源端与接地端(+5V/3.3V/2.7V)+5V/3.3V/2.7V)不同的单片机可以允许不同不同的单片机可以允许不同的工作电压,不同的单片机表现出
47、的功耗也不的工作电压,不同的单片机表现出的功耗也不同。同。单片机的引脚(晶振端)lVcc, GND: Vcc, GND: 正电源端与接地端正电源端与接地端(+5V/3.3V/2.7V)+5V/3.3V/2.7V)不同的单片机可以允许不同不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不的工作电压,不同的单片机表现出的功耗也不同。同。XTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端单片机的引脚(晶振端)lVcc, GND:Vcc, GND:正电源端与接地端正电源端与接地端 (+5V/3.3V/2.7V)(+5V/3.3V/2
48、.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入片内振荡电路输入/ /输出端输出端151545pf45pfx2x21 112MHz12MHz(MCS-51MCS-51) 0 024MHz24MHz(Atmel-89CAtmel-89C)XTAL1XTAL1XTAL2XTAL2也可以由也可以由 XTAL1XTAL1端接入外部时钟,端接入外部时钟,此时应将此时应将 XTAL2XTAL2接地:接地:XTAL2XTAL2XTAL1XTAL1外部时钟外部时钟通常通常外接外接一个晶振一个晶振两个电容两个电容单片机的引脚(晶振端)lVcc, GND:Vcc, GND:正电源
49、端与接地端(正电源端与接地端(+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端CPUCPU总是按照一定的时钟节拍与时序工作:总是按照一定的时钟节拍与时序工作:振荡周期振荡周期/ /时钟周期:时钟周期: TcTc= =晶振频率晶振频率foscfosc(或外加频率)的倒数(或外加频率)的倒数状态周期:状态周期:TsTs= =2 2个时钟周期个时钟周期( (TcTc) )(很少用到此概念)(很少用到此概念)机器周期:机器周期:TmTm= =6 6个状态周期个状态周期( (TsTs)=)=
50、1212个振荡周期个振荡周期( (TcTc) )指令周期指令周期: : Ti:Ti:执行一条指令所需的机器周期执行一条指令所需的机器周期( (TmTm) )数数牢牢记住牢牢记住: 振荡周期振荡周期 = = 晶振频率晶振频率foscfosc的倒数;的倒数; 1 1个机器周期个机器周期 = 12= 12个振荡周期;个振荡周期; 1 1个指令周期个指令周期 = 1= 1、2 2、4 4个机器周期个机器周期单片机的引脚(复位端)lVcc, GND: Vcc, GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内
51、振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端(正脉冲有效,宽度复位端(正脉冲有效,宽度 8 mS8 mS)复位使单片机进入某种确定的复位使单片机进入某种确定的初始状态初始状态: PCPC值归零(值归零(0000H0000H);); 各个各个SFRSFR被赋予初始值(见书上被赋予初始值(见书上 ):): P0P0P3 = 0FFHP3 = 0FFH,Acc = 0Acc = 0,B = 0B = 0,TH0=0TH0=0,TL0=0TL0=0,TH1=0TH1=0,TL0=0TL0=0,SP=7SP=7,PSW=0 PSW=0 退出处于节电工作方式的停顿状态、
52、退出一切退出处于节电工作方式的停顿状态、退出一切程序进程、退出程序的死循环,程序进程、退出程序的死循环,从头开始从头开始。单片机的引脚(复位端)lVcc, GND: Vcc, GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端(正脉冲有效,宽度复位端(正脉冲有效,宽度 8 mS8 mS)PC与SFR复位状态表寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL
53、000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H单片机的引脚(复位端)+5V10uF10KVccRSTGND上电复位上电复位10uF10KVccRSTGND手动手动&上电复位上电复位1KlVcc, GND: Vcc, GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效
54、,宽度(正脉冲有效,宽度 8 mS8 mS)+5V单片机的引脚(EA端)lVcc, GND: Vcc, GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 mS8 mS)lEA/Vpp: EA/Vpp: 寻址外部寻址外部ROMROM控制端控制端/ /编程电源输入端。编程电源输入端。 低有效低有效,片内,片内无无ROMROM时时必须必须接地接地; 片内片内有有ROMROM时时应
55、当应当接高电平接高电平; 对片内对片内ROMROM编程时编程正电源加到此端。编程时编程正电源加到此端。单片机的引脚(ALE端)lVcc, GND: Vcc, GND: 电源端电源端 (+5V/3.3V/2.7V)+5V/3.3V/2.7V)lXTAL1, XTAL2: XTAL1, XTAL2: 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESET: RESET: 复位端复位端 (正脉冲有效,宽度(正脉冲有效,宽度 8 mS8 mS)lEA/Vpp: EA/Vpp: 寻址外部寻址外部ROMROM控制端控制端/ /编程电源输入端。编程电源输入端。lALE/PROG: ALE/PROG:
56、地址锁存允许地址锁存允许/ /编程脉冲输入端。编程脉冲输入端。 P0P0口寻址外部低口寻址外部低8 8位地址位地址时时接外部锁存器接外部锁存器 G G端;端; ALEALE端端平时会输出周期正脉冲平时会输出周期正脉冲:f f fosc/6fosc/6 ; 对片内对片内ROMROM编程时编程脉冲由此端加入。编程时编程脉冲由此端加入。 单片机的引脚(PSEN端)lPSENPSEN:寻址外部程序存储器时选通外部寻址外部程序存储器时选通外部EPROMEPROM的的 读控制端读控制端(OEOE)低有效。低有效。单片机单片机锁存器锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8
57、QOEA8-A12A0-A7D0-D7GEAOECEEPROM单片机的引脚(PSEN端)lPSENPSEN:寻址外部程序存储器时选通外部寻址外部程序存储器时选通外部EPROMEPROM的的 读控制端读控制端(OEOE)低有效。低有效。单片机的I/O引脚结构众多功能各异的I/O引脚源于它结构的不同单片机的引脚(P1口)lP1.0P1.0P1.7: P1.7: 准双向准双向I/OI/O口口(内置内置了上拉电阻)了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线V
58、cc引脚引脚P1.X内部上拉电阻内部上拉电阻21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输出出数据数据 = 1 时时110截截止止=1单片机的引脚(P1口)lP1.0P1.0P1.7: P1.7: 准双向准双向I/OI/O口口(内置内置了上拉电阻)了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输出出数据数据 = 0 时时001=
59、0导导通通单片机的引脚(P1口)lP1.0P1.0P1.7: P1.7: 准双向准双向I/OI/O口(口(内置内置了上拉电阻了上拉电阻) 输出时一切照常,输出时一切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。21DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输入入数据时,要先对其写数据时,要先对其写“1”110截截止止单片机的引脚单片机的引脚(P1P1口)口)lP1.0P1.0P1.7: P1.7: 准双向准双向I/OI/O口(口(内置内置了上拉电阻了上拉电阻) 输出时一切照常,输出时一
60、切照常,仅在作仅在作输入口输入口用时要先对其用时要先对其 写写“1 1”。简单测控实例原理图P1.3作输入端口光路通畅,光路通畅,R亮亮 2K 光路阻断,光路阻断,R暗暗 400K R亮亮 250K JOB3: CLR P1.1 ;亮绿灯REDO: SETB P1.3 ;P1.3作输入口必先置1CHECK:JNB P1.3,CHECK ;检测通道是否被阻断?LOOP: ;有入侵者,报警!AJMP REDO ;再跳回去检测任务三:红外防盗报警P1.3口用于输入状态检测的语句: R亮250K ,红外线光路阻断时,P1.3端高电平单片机的引脚(P0口)lP0.0P0.0P0.7: P0.7: 双向双
61、向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时寻址外部程序存储器时分时分时作为作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口复用口;不接外部程序存储器不接外部程序存储器时可时可作为作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34Vcc21DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34控制控制=0 时时,此脚作,此脚作输入口输入
62、口(事先必须对它写(事先必须对它写“1”)00100截截止止截截止止=0Vcc单片机的引脚(P0口)lP0.0P0.0P0.7: P0.7: 双向双向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器寻址外部程序存储器时分时作为时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚
63、作地址时,此脚作地址/数据数据复用口复用口:(1)输出地址输出地址/数据数据 =0 时时1011=0导导通通截截止止=0Vcc单片机的引脚(P0口)lP0.0P0.0P0.7: P0.7: 双向双向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制
64、控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口:(2)输出地址输出地址/数据数据 =1 时时1100=1截截止止导导通通=1Vcc单片机的引脚(P0口)lP0.0P0.0P0.7: P0.7: 双向双向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁
65、存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口: (3)输入数据时,输入指令将使引脚与内部总线直通输入数据时,输入指令将使引脚与内部总线直通Vcc单片机的引脚(P0口)lP0.0P0.0P0.7: P0.7: 双向双向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时分时作为寻址外部程序存储器时分时作为双向双向8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口;不接外部程序存储器复用口;不接外部程序存储器时可作为时可作为8 8位位准双向准双向I/OI/O口口使用。
66、使用。单片机的引脚(P2口)lP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外不接外部程序存储器时可部程序存储器时可作为作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制引脚引脚 P2.X3内部上拉电阻内部上拉电阻Vcc21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制 引脚引脚P2.X控制控制=0
67、时,此脚作通用时,此脚作通用输出口输出口: 输出输出=1时时110截截止止3内部上拉电阻内部上拉电阻11Vcc=1=0单片机的引脚(P2口)lP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制 引脚引脚P2.X控制控制=0时,此脚作通用时,此脚作通用输出口输出口
68、:输出输出=0时时001导导通通3内部上拉电阻内部上拉电阻00Vcc=0=0单片机的引脚单片机的引脚(P2P2口)口)lP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X控制控制=1 时,此脚作时,此脚作高高8位地址位地址A8A15输出口:
69、输出口:当当输出输出 =1 时时10截截止止3内部上拉电阻内部上拉电阻1=1Vcc=1单片机的引脚(P2口)lP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X01导导通通3内部上拉电阻内部上拉电阻0=0Vcc=0控制控制=1 时,此脚作时
70、,此脚作高高8位地址位地址A8A15输出口:输出口:当当输出输出 =0 时时单片机的引脚单片机的引脚(P2P2口)口)lP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外;不接外部程序存储器时可作为部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。单片机的引脚(P3口)lP3.0P3.0P3.7: P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时
71、它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc第二功能输入第二功能输入421DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出(WRWR,RDRD,TxDTxD)引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc4第二功能输出时,内部自动第二功能输出时,内部自动 D=1D=1111反相器反相器单片机的引脚(P3口)lP3.0P3.0P3.7: P3.7: 双功能口双功能口(内置了上
72、拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线此端自动此端自动1 1引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc 第二功能输入第二功能输入(RxDRxD,T0T0,T1T1,INT0INT0,INT1INT1)4第二功能输入时,信号经第二功能输入时,信号经缓冲器缓冲器4 4 直接进入内总线直接进入内总线1 11 11 10 0截截止止单片机的引脚(P3口)lP3.0P3.0P3.7:
73、 P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功。在不使用它的第二功能时它就是普通的能时它就是普通的通用准双向通用准双向I/OI/O口口。P3口第二功能表引引 脚脚第第 二二 功功 能能 P3.0P3.0RxD: RxD: 串行口接收数据输入端串行口接收数据输入端P3.1P3.1TxD:TxD: 串行口发送数据输出端串行口发送数据输出端P3.2P3.2INT0:INT0: 外部中断申请输入端外部中断申请输入端 0 0P3.3P3.3INT1:INT1: 外部中断申请输入端外部中断申请输入端 1 1P3.4P3.4T
74、0:T0: 外部计数脉冲输入端外部计数脉冲输入端 0 0P3.5P3.5T1:T1: 外部计数脉冲输入端外部计数脉冲输入端 1 1P3.6P3.6WR:WR: 写外设控制信号输出端写外设控制信号输出端P3.7P3.7RD:RD: 读外设控制信号输出端读外设控制信号输出端51单片机的8个特殊引脚lVcc, GNDVcc, GND: : 电源端电源端lXTAL1, XTAL2XTAL1, XTAL2: : 片内振荡电路输入、输出端片内振荡电路输入、输出端lRESETRESET: : 复位端复位端 正脉冲有效(正脉冲有效(宽度宽度 8 mS8 mS)lEAEA/Vpp/Vpp: : 寻址外部寻址外部
75、ROMROM控制端控制端。低有效。低有效 片内有片内有ROMROM时应当接高电平。时应当接高电平。lALEALE/PROG/PROG: : 地址锁存允许地址锁存允许控制端控制端。lPSENPSEN:选通外部:选通外部ROMROM的读的读(OE)(OE)控制端控制端。 低有效低有效 小结小结51单片机的4个8位的I/O口P0.0P0.0P0.7:P0.7:8 8位数据口位数据口和和输出低输出低8 8位地址位地址复用口复用口 ( (复用时是复用时是双向口双向口;不复用时也是;不复用时也是准双向口准双向口) )P1.0P1.0P1.7: P1.7: 通用通用I/OI/O口口(准双向口)(准双向口)P
76、2.0P2.0P2.7:P2.7: 输出高输出高8 8位地址位地址(用于寻址时是(用于寻址时是输出口;输出口;不寻址时是不寻址时是准双向口准双向口)P3.0P3.0P3.7: P3.7: 具有特定的第二功能具有特定的第二功能(准双向口)(准双向口)注意:注意:在不外扩在不外扩ROM/RAMROM/RAM时,时,P0P0P3P3均可作通用均可作通用I/OI/O口使用,而且口使用,而且都是都是准双向准双向I/OI/O口口( (例如例如: :AT89C51AT89C51) )! 小结小结时钟电路l l1 CPU时序 l l2 时钟电路 1 CPU时序l lCPUCPU时时序序就就是是CPUCPU在在
77、执执行行指指令令时时所所需需控控制制信信号号的的时时间间顺序。顺序。l l单单片片机机的的时时序序定定时时单单位位从从小小到到大大依依次次为为:时时钟钟周周期期、状态周期状态周期、机器周期机器周期和和指令周期指令周期。 l lMCS-51MCS-51单单片片机机共共有有111111条条指指令令,按按照照指指令令字字节节数数和和机机器器周周期期数数可可分分为为六六类类,即即单单字字节节单单周周期期指指令令、单单字字节节双双周周期期指指令令、单单字字节节四四周周期期指指令令、双双字字节节单单周周期指令、双字节双周期指令和三字节双周期指令。期指令、双字节双周期指令和三字节双周期指令。 典型指令的取指
78、、执行时序 l时钟周期为单片机提供定时信号的振荡源的周期或外部输入时钟信号的周期,也称为振荡周期 。l状态周期(或状态S)是振荡周期的两倍,它分为P1节拍和P2节拍。l一条指令的执行过程分作几个基本操作,完成一个基本操作所需的时间称作机器周期。l执行一条指令所需的时间称为指令周期。 CPUCPU总是按照一定的时钟节拍与时序工作:总是按照一定的时钟节拍与时序工作:振荡周期振荡周期/ /时钟周期:时钟周期: TcTc= =晶振频率晶振频率foscfosc(或外加频率)的倒数(或外加频率)的倒数状态周期:状态周期:TsTs= =2 2个时钟周期个时钟周期( (TcTc) )(很少用到此概念)(很少用
79、到此概念)机器周期:机器周期:TmTm= =6 6个状态周期个状态周期( (TsTs)=)=1212个振荡周期个振荡周期( (TcTc) )指令周期指令周期: : Ti:Ti:执行一条指令所需的机器周期执行一条指令所需的机器周期( (TmTm) )数数牢牢记住牢牢记住: 振荡周期振荡周期 = = 晶振频率晶振频率foscfosc的倒数;的倒数; 1 1个机器周期个机器周期 = 12= 12个振荡周期;个振荡周期; 1 1个指令周期个指令周期 = 1= 1、2 2、4 4个机器周期个机器周期2 时钟电路 l l80518051单单片片机机的的时时钟钟信信号号通通常常由由两两种种方方式式产产生生:
80、一一是是内部振荡方式内部振荡方式,二是,二是外部时钟方式外部时钟方式。 (a) (a) 内部方式时钟电路内部方式时钟电路 (b) (b) 外部方式时钟电路外部方式时钟电路2 时钟电路1. 内部振荡方式 在8051单片机内部有一个高增益的反相放大器,用于构成振荡器,反相放大器的输入端为XTAL1,输出端为XTAL2。l l内部振荡方式是在XTAL1和XTAL2引脚两端跨接石英晶体振荡器和两个电容构成稳定的自激振荡电路。l l电容C1和C2通常取30pF,对振荡频率有微调作用。晶振频率范围是1.2MHz12MHz。2 时钟电路2. 外部时钟方式 外部时钟方式是把外部已有的时钟信号引入到单片机内。l
81、 l8051:外部时钟由XTAL2输入,直接送入内部时钟电路,XTAL1接地;l l80C51:外部时钟由XTAL1输入,XTAL2悬空。l l外部时钟信号为高电平持续时间要大于20ns,且频率低于12MHz的方波。 2.5 复 位 电 路 l l2.5.1 复位功能 l l2.5.2 复位电路 2.5.1 复位功能 l l复位是单片机的复位是单片机的初始化操作初始化操作。l l复位功能是把复位功能是把PCPC初始化为初始化为0000H0000H,使,使CPUCPU从从0000H0000H单单元开始执行程序;复位操作同时还对其他一些元开始执行程序;复位操作同时还对其他一些寄存寄存器器有影响,但
82、有影响,但内部内部RAMRAM的数据是不变的。的数据是不变的。 l l除了进入系统的正常初始化之外,当由于除了进入系统的正常初始化之外,当由于程序运行程序运行出错出错或或操作错误操作错误使系统处于死锁状态时,为摆脱困使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。境,也需要按复位键重新启动。部分特殊功能寄存器的复位状态 说明:表中符号说明:表中符号 状为随机态。状为随机态。寄存器 复位状态寄存器 复位状态PC 0000H A00H B 00H PSW 00H SP 07H DPTR 0000H P0P3 0FFH IP 00000B IE 000000B TMOD 00H TCON
83、00H TL0,TL1 00H TH0,TH1 00H SCON 00H SBUF 不定 PCON 00000B 2.5.2 复位电路 l l单片机的复位引脚单片机的复位引脚RSTRST出现出现2 2个机器周期个机器周期以上的高电平时,以上的高电平时,单片机就执行复位操作。单片机就执行复位操作。 l l常见的复位操作有上电自动复位和按键手动复位两种方式常见的复位操作有上电自动复位和按键手动复位两种方式 。l l上电自动复位上电自动复位是通过外部复位电路的电容充电来实现的。是通过外部复位电路的电容充电来实现的。l l按键手动复位按键手动复位是通过复位端经电阻与电源是通过复位端经电阻与电源V VC
84、CCC接通而实现的,接通而实现的,它兼备上电复位功能。它兼备上电复位功能。 (a) (a) 上电自动复位上电自动复位 (b) (b) 按键手动复位按键手动复位 存储器、堆栈、SFR数据存储器数据存储器RAMRAM(Random Access MemoryRandom Access Memory)程序存储器程序存储器ROMROM(Read Only MemoryRead Only Memory)闪速存储器闪速存储器Flash MemoryFlash MemoryEPROMEPROMErasible Programmable ROMErasible Programmable ROMEEPROM/E
85、EEPROM/E2 2PROMPROMElectrical Erasable Electrical Erasable Programmable ROM Programmable ROM静态存储器静态存储器 SRAMSRAMStatic RAMStatic RAM (动态存储器(动态存储器 DRAMDRAMDynamic RAMDynamic RAM)按字节寻址:每个字节按字节寻址:每个字节(8(8个位个位) )占一个地址占一个地址按位寻址:有的存储器每一个位就有一个地址按位寻址:有的存储器每一个位就有一个地址单片机的存储器几个有关的概念:89C51单片机存储器配置l片内片内RAMRAM 128
86、 128字节(字节(00H00H7FH7FH);); 片内片内RAMRAM前前3232个单元是个单元是工作寄存器区工作寄存器区(00H(00H1FH)1FH) 片内片内RAMRAM有有128128个可个可按位寻址按位寻址的位,占的位,占1616个单元。个单元。 位地址编号为:位地址编号为:00H00H7FH7FH,分布在,分布在20H20H2FH2FH单元单元l片内片内2121个特殊功能寄存器个特殊功能寄存器( (SFRSFR) )中:地址号能被中:地址号能被 8 8整除的整除的 SFRSFR中的各位中的各位也可也可按位寻址按位寻址l可寻址片外可寻址片外RAMRAM 64K 64K字节字节 (
87、0000H0000HFFFFHFFFFH)l可寻址片外可寻址片外ROMROM 64K 64K字节字节 (0000H0000HFFFFHFFFFH)l片内片内 Flash Flash ROMROM 4K 4K字节字节 (000H000HFFFHFFFH)存储器配置(片内RAM)l片内片内RAMRAM 128128字节字节(00H00H7FH7FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SFR分布在分布在80H-FFH其中其中92个位个位可位寻址
88、可位寻址80H80HFFHFFH所有的所有的RAMRAM区区( (包括包括位位寻址区、工作寄存器寻址区、工作寄存器区)都可以用于存放区)都可以用于存放数据,故也称为数据,故也称为数据数据缓存寄存器缓存寄存器89C51 128128字节字节l片内片内RAMRAM前前3232个单元是个单元是工作寄存器区工作寄存器区 (00H(00H1FH)1FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区存储器配置(片内RAM)00H00H20H20H2FH2FH7
89、FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工工作作寄寄存存器器区区00FH10H17H18Hl片内片内RAMRAM前前3232个单元是个单元是工作寄存器区工作寄存器区 (00H(00H1FH)1FH)存储器配置(片内RAM)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFF
90、H52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区l片内片内RAMRAM中有中有128128个可按位寻址的位。个可按位寻址的位。 位地址位地址: :00H00H7FH 7FH 分布在分布在: :20H20H2FH2FH单元单元存储器配置(片内RAM)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区27H22H21H20H26H24H25H23H28H2FH单元地址单元地址07 06 05 04 03 02
91、 01 000F 0E 0D 0C 0B 0A 09 0817 16 15 14 13 12 11 101F 1E 1D 1C 1B 1A 19 1827 26 25 24 23 22 21 202F 2E 2D 2C 2B 2A 29 2837 36 35 34 33 32 31 303F 3E 3D 3C 3B 3A 39 3847 46 45 44 43 42 41 407F 7E 7D 7C 7B 7A 79 78位地址位地址总共总共128个可个可按位按位寻址寻址的位的位l片内片内RAMRAM中有中有128128个可按位寻址的位。个可按位寻址的位。 位地址位地址: :00H00H7FH
92、 7FH 分布在分布在: :20H20H2FH2FH单元单元存储器配置(片内RAM)l可寻址片外可寻址片外RAM 64KRAM 64K字节字节 (0000H0000HFFFFHFFFFH););l可寻址片外可寻址片外ROM 64KROM 64K字节字节 (0000H0000HFFFFHFFFFH););l片内片内 Flash ROM 4KFlash ROM 4K字节字节 ( 000H000H FFFH FFFH););FFFFH0000H可寻址可寻址片外片外RAMRAM 64K字节字节FFFFH0000H可寻址可寻址片外片外ROMROM 64K字节字节FFFH000H可寻址可寻址片内片内 Fl
93、ash Flash ROMROM4K 字节字节89C5189C517FH00H片内片内 RAMRAM 128字节字节FFH80H存储器配置(片内RAM)堆栈: 在在片内片内RAMRAM中,常常要指定一个专门的区域来中,常常要指定一个专门的区域来存放某些存放某些特别的特别的数据数据, ,它遵循它遵循顺序存取顺序存取和和后进后进先出先出(LIFO/FILO(LIFO/FILO)的原则的原则, ,这个这个RAMRAM区区叫叫堆栈堆栈。功用功用:1 1)子程序调用)子程序调用和和中断服务中断服务时时CPUCPU自动将当前自动将当前PCPC 值值压栈保存,返回时自动将压栈保存,返回时自动将PCPC值弹栈
94、。值弹栈。2 2)保护现场)保护现场/ /恢复现场恢复现场3 3)数据传输)数据传输00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区 SP栈顶栈顶下一个进栈的下一个进栈的数据将存在此数据将存在此数据数据进栈进栈已经进栈的数已经进栈的数据存放在此据存放在此初始初始 SP复位后复位后 SP=07HSP=07H,数据进栈时:数据进栈时:首先首先SP+1SP+1指向指向08H08H单元,第一个放进堆栈单元,第一个放进堆栈的数据将放进的数据将放进08H08H单元
95、,然后单元,然后SPSP再自再自动增动增 1 1,仍指着栈顶,仍指着栈顶堆栈区由特殊功能寄存器堆栈区由特殊功能寄存器堆栈指针堆栈指针SPSP管理管理 堆栈区可以安排在堆栈区可以安排在 RAMRAM区任意位置,一般不安排在区任意位置,一般不安排在工作寄存器区和可按位寻址的工作寄存器区和可按位寻址的RAMRAM区,通常区,通常放在放在RAMRAM区的区的靠后靠后的位置。的位置。从堆栈取出数据时从堆栈取出数据时:取出的数据是取出的数据是最近放进去的一个数据,也就是当最近放进去的一个数据,也就是当前栈顶的数据。然后前栈顶的数据。然后SPSP再自动减再自动减1 1,仍指着栈顶,仍指着栈顶00H00H20
96、H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区 SP栈顶栈顶当前要出栈的数据当前要出栈的数据数据数据出栈出栈SP-1指向下一个指向下一个将要出栈的数据将要出栈的数据初始初始 SP堆栈区由特殊功能寄存器堆栈指针SP管理 堆栈区可以安排在堆栈区可以安排在 RAMRAM区任意位置,一般不安排在区任意位置,一般不安排在工作寄存器区和可按位寻址的工作寄存器区和可按位寻址的RAMRAM区,通常区,通常放在放在RAMRAM区的区的靠后靠后的位置。的位置。从堆栈取出数据时从堆栈取出
97、数据时:取出的数据是取出的数据是最近放进去的一个数据,也就是当最近放进去的一个数据,也就是当前栈顶的数据。然后前栈顶的数据。然后SPSP再自动减再自动减1 1,仍指着栈顶,仍指着栈顶00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SP-1 指向新的栈指向新的栈顶顶,也就是下一个也就是下一个将要出栈的数据将要出栈的数据数据数据出栈出栈初始初始 SP堆栈区由特殊功能寄存器堆栈指针SP管理 堆栈区可以安排在堆栈区可以安排在 RAMRAM区任意位置,一般不安排
98、在区任意位置,一般不安排在工作寄存器区和可按位寻址的工作寄存器区和可按位寻址的RAMRAM区,通常区,通常放在放在RAMRAM区的区的靠后靠后的位置。的位置。89C51特殊功能寄存器(SFR)特殊功能寄存器特殊功能寄存器SFRSFR(专用寄存器)(专用寄存器)专用于专用于控制、选择、管理、存放控制、选择、管理、存放单片机内部各部分单片机内部各部分的工作的工作方式、条件、状态、结果方式、条件、状态、结果的寄存器的寄存器。不同的不同的SFRSFR管理不同的硬件模块,负责不同的功能管理不同的硬件模块,负责不同的功能各司其职各司其职换言之:要让单片机实现预订的功能,必须有相应换言之:要让单片机实现预订
99、的功能,必须有相应的硬件和软件,的硬件和软件,而软件中最重要的一项工作就是对而软件中最重要的一项工作就是对SFRSFR写命令(要求)写命令(要求)。程序计数器程序计数器PCPC(Program CounterProgram Counter)PCPC 不是不是一个特殊功能寄存器一个特殊功能寄存器SFRSFR,但其作,但其作 用又用又十分重要和特殊十分重要和特殊!特点:特点:它是它是1616位位的按机器周期的按机器周期自动增自动增1 1计数器计数器一切一切分支分支/ /跳转跳转/ /调用调用/ /中断中断/ /复位复位 等操作的等操作的本质本质就是就是: :改变改变 PC PC 值值总指向下一条指
100、令所在首地址总指向下一条指令所在首地址( (当前当前PCPC值值) )特殊功能寄存器(PC)89C5189C51有有2121个个SFR(89C52SFR(89C52有有2626个个) ) 已知的已知的P0P0、P1P1、P2P2、P3P3等四个等四个8 8位位I/OI/O口口分别由名分别由名为为P0P0、P1P1、P2P2、P3P3四个四个SFRSFR代表。代表。堆栈指针寄存器堆栈指针寄存器 SPSP(Stack Pointer): Stack Pointer): 总是指向总是指向栈顶栈顶, ,压栈时先压栈时先 (SP)+1 (SP)+1 然后数据进栈;弹栈时数然后数据进栈;弹栈时数据先出栈据
101、先出栈 然后然后(SP)-1(SP)-1。累加器累加器 A:A:一个被众多指令用得最频繁的特殊功能一个被众多指令用得最频繁的特殊功能寄存器寄存器( (如:运算、数据传输如:运算、数据传输) )。副累加器副累加器 B B: :一个经常与一个经常与 A A配合在一起使用的特配合在一起使用的特殊功能寄存器殊功能寄存器( (如:乘法、除法如:乘法、除法) ),此外,它也经,此外,它也经常当作普通寄存器使用。常当作普通寄存器使用。特殊功能寄存器(P0P3,SP,A,B)程序状态字寄存器程序状态字寄存器 PSWPSW:CYACF0RS0OVPRS1PSW.7PSW.0CYCY(PSW.7)(PSW.7)进
102、位进位/ /借位标志位借位标志位。若。若A A在运算过程中在运算过程中发生了进位或借位,则发生了进位或借位,则CY=1CY=1;否则;否则=0=0。它也是。它也是布布尔处理器尔处理器的的位累加器位累加器,可用于布尔操作。,可用于布尔操作。ACAC(PSW.6)(PSW.6)半进位半进位/ /借位标志位。借位标志位。若若A A在运算过程在运算过程中,中,D3D3位向位向D4D4位发生了进位或借位,则位发生了进位或借位,则CY=1,CY=1,否否则则=0=0。机器在执行。机器在执行“DA ADA A”指令时指令时自动自动要判断要判断这一位,我们可以暂时不关心它。这一位,我们可以暂时不关心它。F0
103、F0 (PSW.5)(PSW.5)可由用户定义的标志位。可由用户定义的标志位。PSW.6 PSW.5特殊功能寄存器(PSW)程序状态字寄存器程序状态字寄存器 PSWPSW(续)(续):CYACF0RS0OVPRS1PSW.7PSW.0RS1RS1(PSW.4)(PSW.4)、RS0RS0(PSW.3)(PSW.3)工作寄存器组选择位工作寄存器组选择位。RS1RS1,RS0 = 0 1 RS0 = 0 1 则选择了工作寄存器组则选择了工作寄存器组 1 1 区区R0R0R7R7分别分别代表代表08H 08H 0FH0FH单元。单元。RS1RS1,RS0 = 1 0 RS0 = 1 0 则选择了工作
104、寄存器组则选择了工作寄存器组 2 2 区区 R0R0R7R7分别分别代表代表10H 10H 17H17H单元。单元。RS1RS1,RS0 = 1 1 RS0 = 1 1 则选择了工作寄存器组则选择了工作寄存器组 3 3 区区R0R0R7R7分别分别代表代表18H 18H 1FH1FH单元。单元。PSW.4 PSW.3RS1RS1,RS0 = 0 0 RS0 = 0 0 则选择了工作寄存器组则选择了工作寄存器组 0 0 区区R0R0R7R7分别分别代表代表08H 08H 0FH0FH单元。单元。l片内片内RAMRAM前前3232个单元个单元(00H(00H1FH)1FH)是工作寄存器是工作寄存器
105、区区 ( (由由PSWPSW中的中的RS1,RS0RS1,RS0决定决定) )00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区R0R2R1R3R4R5R6R707H02H01H00H06H04H05H03H08H1FH工作寄存器区工作寄存器区3工作寄存器区工作寄存器区2工作寄存器区工作寄存器区1工工作作寄寄存存器器区区0 程序状态字寄存器程序状态字寄存器 PSWPSW(续)(续):CYACF0RS0OVPRS1PSW.7PSW.0OV OV (PSW.
106、2)(PSW.2)溢出标志位。溢出标志位。 OV=1OV=1时特指累加器在进行带符号数时特指累加器在进行带符号数(-128(-128+127)+127)运算时出错(超出范围);运算时出错(超出范围);OV=0OV=0时未出错。时未出错。PSW.1 PSW.1 未定义未定义。P P (PSW.0)(PSW.0)奇偶标志位。奇偶标志位。 P=1P=1表示累加器中表示累加器中“1 1”的个数的个数为奇数为奇数 P=0P=0表示累加器中表示累加器中“1 1”的个数的个数为偶数为偶数 CPUCPU随时监视着随时监视着A A中的中的“1 1”的个数的个数, ,并反映在并反映在PSWPSW中中PSW.2PS
107、W.1PC与SFR复位状态表寄存器寄存器复位状态复位状态寄存器寄存器复位状态复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H 回顾89C51单片机存储器配置l片内片内RAMRAM 128 128字节(字节(00H00H7FH7FH);); 片内片内RAMRAM前前3232个单元是工作寄存器区个单元是工作寄存器区(00H(00H1FH)1FH) 片内片内RAMRAM
108、有有128128个可按位寻址的位,占个可按位寻址的位,占1616个单元。个单元。 位地址编号为:位地址编号为:00H00H7FH7FH 分布在:分布在:20H20H2FH2FH单元单元l片内片内2121个特殊功能寄存器个特殊功能寄存器(SFR)(SFR)中:地址号能被中:地址号能被 8 8整除的整除的 SFRSFR中的各位中的各位也可也可按位寻址按位寻址l可寻址片外可寻址片外RAMRAM 64K 64K字节字节 (0000H0000HFFFFHFFFFH)l可寻址片外可寻址片外ROMROM 64K 64K字节字节 (0000H0000HFFFFHFFFFH)l片内片内 Flash Flash
109、ROMROM 4K 4K字节字节 (000H000HFFFHFFFH) 小结存储器配置(片内RAM)l l片内片内片内片内RAMRAMRAMRAM 128128128128字节字节字节字节(00H00H00H00H7FH7FH7FH7FH)00H00H20H20H2FH2FH7FH7FH1FH1FH30H30H80H80HFFHFFH52子系列才有子系列才有的的RAM区区普通普通RAM区区位寻址区位寻址区工作寄存器区工作寄存器区SFR分布在分布在80H-FFH其中其中92个位个位可位寻址可位寻址80H80HFFHFFH所有的所有的RAMRAM区区( (包括包括位寻址位寻址区、工作寄存器区)都可
110、区、工作寄存器区)都可以用于存放数据,故也称以用于存放数据,故也称为为数据缓存寄存器数据缓存寄存器128128字节字节 小结单片机存储器配置(片外RAM/ROM) l可寻址片外可寻址片外RAM 64KRAM 64K字节字节 (0000H0000HFFFFHFFFFH););l可寻址片外可寻址片外ROM 64KROM 64K字节字节 (0000H0000HFFFFHFFFFH););l片内片内 Flash ROM 4KFlash ROM 4K字节字节 (000H000HFFFHFFFH););FFFFH0000H可寻址可寻址片外片外RAMRAM 64K字节字节FFFFH0000H可寻址可寻址片外片外ROMROM 64K字节字节FFFH000H可寻址可寻址片内片内 Flash Flash ROMROM 4K字节字节89C5189C517FH00H片内片内 RAMRAM 128字节字节FFH80H 小结