《片机基础知识》PPT课件.ppt
第一章 单片机基础知识1.1 单片机的特点1.2 8051的内部结构1.3 8051的系统扩展1.4 8051指令系统1.5 实用程序设计1.1 单片机的特点一、什么是单片机?单片机:单片机:单片机:单片机:SCM Single Chip Microcontroller SCM Single Chip Microcontroller MCU Microcontroller Unit MCU Microcontroller Unit 将将将将CPUCPU、ROMROM、RAMRAM、定时器、定时器、定时器、定时器/计数器、计数器、计数器、计数器、I/OI/O接接接接口等微型计算机部件集成在一块集成电路芯片上口等微型计算机部件集成在一块集成电路芯片上口等微型计算机部件集成在一块集成电路芯片上口等微型计算机部件集成在一块集成电路芯片上特点:特点:特点:特点:体积小、价格低、性能强大、速度快、用途广、体积小、价格低、性能强大、速度快、用途广、体积小、价格低、性能强大、速度快、用途广、体积小、价格低、性能强大、速度快、用途广、灵活性强、可靠性高灵活性强、可靠性高灵活性强、可靠性高灵活性强、可靠性高 1.1 单片机的特点二、单片机的发展历程 单片机自从单片机自从单片机自从单片机自从20202020世纪世纪世纪世纪70707070年代问世以来,以其鲜明的特点得到迅猛的发年代问世以来,以其鲜明的特点得到迅猛的发年代问世以来,以其鲜明的特点得到迅猛的发年代问世以来,以其鲜明的特点得到迅猛的发展。展。展。展。单单单单片片片片机机机机的的的的初初初初级级级级阶阶阶阶段段段段:1976197619761976年年年年IntelIntelIntelIntel公公公公司司司司推推推推出出出出了了了了8 8 8 8位位位位的的的的MCS-48MCS-48MCS-48MCS-48系系系系列列列列的的的的单单单单片机。片机。片机。片机。单单单单片片片片机机机机的的的的发发发发展展展展阶阶阶阶段段段段:80808080年年年年代代代代初初初初,Intel,Intel,Intel,Intel公公公公司司司司推推推推出出出出了了了了8 8 8 8位位位位的的的的MCS-51MCS-51MCS-51MCS-51系系系系列列列列的单片机,的单片机,的单片机,的单片机,motorolamotorolamotorolamotorola的的的的68686868系列,系列,系列,系列,ZilogZilogZilogZilog的的的的Z8Z8Z8Z8系列等。系列等。系列等。系列等。高高高高性性性性能能能能单单单单片片片片机机机机发发发发展展展展阶阶阶阶段段段段:16161616位位位位单单单单片片片片机机机机,芯芯芯芯片片片片内内内内部部部部也也也也增增增增加加加加了了了了其其其其他他他他的的的的性性性性能能能能。如如如如IntelIntelIntelIntel的的的的MCS-96MCS-96MCS-96MCS-96系系系系列列列列单单单单片片片片机机机机,在在在在单单单单片片片片机机机机内内内内部部部部集集集集成成成成了了了了A/DA/DA/DA/D转转转转换换换换器器器器、PWMPWMPWMPWM输出。输出。输出。输出。在在在在未未未未来来来来,应应应应各各各各种种种种电电电电子子子子产产产产品品品品对对对对单单单单片片片片机机机机的的的的要要要要求求求求,单单单单片片片片机机机机将将将将会会会会向向向向多多多多功功功功能能能能、高性能、高速度、低电压、低功耗、大容量存储器的方向发展高性能、高速度、低电压、低功耗、大容量存储器的方向发展高性能、高速度、低电压、低功耗、大容量存储器的方向发展高性能、高速度、低电压、低功耗、大容量存储器的方向发展。1.1 单片机的特点三、MCS-51单片机及其兼容产品 IntelIntelIntelIntel公司推出了公司推出了公司推出了公司推出了8 8 8 8位的位的位的位的MCS-51MCS-51MCS-51MCS-51系列单片机后,在系列单片机后,在系列单片机后,在系列单片机后,在工业控制方面得到了极大的应用。之后,工业控制方面得到了极大的应用。之后,工业控制方面得到了极大的应用。之后,工业控制方面得到了极大的应用。之后,IntelIntelIntelIntel开放开放开放开放了了了了51515151单片机内核技术,单片机内核技术,单片机内核技术,单片机内核技术,PhilipsPhilipsPhilipsPhilips、AtmelAtmelAtmelAtmel、ADIADIADIADI等公司等公司等公司等公司相继推出了基于相继推出了基于相继推出了基于相继推出了基于51515151内核的单片机内核的单片机内核的单片机内核的单片机.IntelIntelIntelIntel公司主要产品公司主要产品公司主要产品公司主要产品 AtmelAtmelAtmelAtmel公司主要产品公司主要产品公司主要产品公司主要产品 PhilipsPhilipsPhilipsPhilips公司主要产品公司主要产品公司主要产品公司主要产品IntelIntel公司主要单片机产品公司主要单片机产品型号型号型号型号工作电工作电工作电工作电压压压压(V)(V)(V)(V)主频主频主频主频OTP OTP OTP OTP ROM(B)ROM(B)ROM(B)ROM(B)RAMRAMRAMRAM(B B B B)UARTUARTUARTUART(个个个个)定时器定时器定时器定时器(个个个个)I/OI/OI/OI/O口线口线口线口线(条条条条)80318031803180315 5 5 512MHz12MHz12MHz12MHz1281281281281 1 1 12 2 2 23232323280518051805180515 5 5 512MHz12MHz12MHz12MHz4K4K4K4K1281281281281 1 1 12 2 2 23232323287518751875187515 5 5 512MHz12MHz12MHz12MHz1281281281281 1 1 12 2 2 23232323280528052805280525 5 5 512MHz12MHz12MHz12MHz8K8K8K8K2562562562561 1 1 13 3 3 332323232Atmel公司主要单片机产品公司主要单片机产品型号型号型号型号工作电工作电工作电工作电压压压压(V)(V)(V)(V)主频主频主频主频FlashFlashFlashFlashROM(B)ROM(B)ROM(B)ROM(B)RAMRAMRAMRAM(B)(B)(B)(B)UARTUARTUARTUART(个个个个)定时器定时器定时器定时器(个个个个)I/OI/OI/OI/O口线口线口线口线(条条条条)AT89C2051AT89C2051AT89C2051AT89C20513-53-53-53-524MHz24MHz24MHz24MHz2K2K2K2K1281281281281 1 1 12 2 2 215151515AT89C51AT89C51AT89C51AT89C515 5 5 533MHz33MHz33MHz33MHz4K4K4K4K1281281281281 1 1 12 2 2 232323232AT89C52AT89C52AT89C52AT89C525 5 5 533MHz33MHz33MHz33MHz8K8K8K8K2562562562561 1 1 13 3 3 332323232AT89C53AT89C53AT89C53AT89C535 5 5 524MHz24MHz24MHz24MHz12K12K12K12K2562562562561 1 1 13 3 3 332323232 Philips公司主要单片机产品公司主要单片机产品型号型号型号型号工作电压工作电压工作电压工作电压(V V V V)主频主频主频主频ROM(B)ROM(B)ROM(B)ROM(B)RAMRAMRAMRAM(B)(B)(B)(B)UARTUARTUARTUART(个个个个)定时定时定时定时(个个个个)I/OI/OI/OI/O口线口线口线口线(条条条条)P87C52P87C52P87C52P87C524.5-5.54.5-5.54.5-5.54.5-5.533MHz33MHz33MHz33MHz8K(OTP)8K(OTP)8K(OTP)8K(OTP)2562562562561 1 1 13 3 3 332323232P87LPC762P87LPC762P87LPC762P87LPC7624.5-5.54.5-5.54.5-5.54.5-5.516MHz16MHz16MHz16MHz16K(OTP)16K(OTP)16K(OTP)16K(OTP)5125125125121 1 1 12 2 2 218(18(18(18(带带带带I I I I2 2 2 2C C C C接接接接口口口口)P87LPC767P87LPC767P87LPC767P87LPC7674.5-5.54.5-5.54.5-5.54.5-5.520MHz20MHz20MHz20MHz4K(OTP)4K(OTP)4K(OTP)4K(OTP)1281281281281 1 1 12 2 2 218(18(18(18(带带带带I I I I2 2 2 2C C C C接接接接口口口口)P89C660P89C660P89C660P89C6604.5-5.54.5-5.54.5-5.54.5-5.520MHz20MHz20MHz20MHz16K(Flash)16K(Flash)16K(Flash)16K(Flash)5125125125121 1 1 13 3 3 332(32(32(32(带带带带I I I I2 2 2 2C C C C接接接接口口口口)1.1 单片机的特点四、单片机应用领域 1.1.1.1.在智能仪器仪表上的应用在智能仪器仪表上的应用在智能仪器仪表上的应用在智能仪器仪表上的应用 2.2.2.2.在工业控制中的应用在工业控制中的应用在工业控制中的应用在工业控制中的应用 3.3.3.3.在家用电器中的应用在家用电器中的应用在家用电器中的应用在家用电器中的应用 4.4.4.4.在计算机网络和通信领域中的应用在计算机网络和通信领域中的应用在计算机网络和通信领域中的应用在计算机网络和通信领域中的应用 5.5.5.5.单片机在医用设备领域中的应用单片机在医用设备领域中的应用单片机在医用设备领域中的应用单片机在医用设备领域中的应用 6.6.6.6.在各种大型电器中的模块化应用在各种大型电器中的模块化应用在各种大型电器中的模块化应用在各种大型电器中的模块化应用 7.7.7.7.单片机在汽车设备领域中的应用单片机在汽车设备领域中的应用单片机在汽车设备领域中的应用单片机在汽车设备领域中的应用 1.2 8051的内部结构串串串 可以划分为可以划分为CPU、存储器、并行口、串行口、定、存储器、并行口、串行口、定时器时器/计数器和中断逻辑几部分。计数器和中断逻辑几部分。80518051单片机的基本结构单片机的基本结构单片机的基本结构单片机的基本结构ACCTMPALUPSWSP控控制制中中断断、定定时时、串串行行口口的的特特殊殊功功能寄存器能寄存器工作工作寄存器寄存器ACC内部总线内部总线I/O口锁存口锁存/驱动驱动器器P0 P1 P2 P3DPTRRAMROMPC定定时时与与控控制制指指令令寄寄存存器器PSENALEEARST单片机的内部结构框图单片机的内部结构框图单片机的内部结构框图单片机的内部结构框图1.2.1 中央处理器CPU1)1)运算器运算器运算器运算器 2)2)3)3)运运运运算算算算器器器器是是是是用用用用于于于于对对对对数数数数据据据据进进进进行行行行算算算算术术术术运运运运算算算算和和和和逻逻逻逻辑辑辑辑操操操操作作作作的的的的执执执执行行行行部部部部件件件件,以以以以算算算算术术术术逻逻逻逻辑辑辑辑单单单单元元元元(ALUALU)为为为为核核核核心心心心,包包包包括括括括累累累累加加加加器器器器(ACCACC)、程程程程序序序序状状状状态态态态字字字字(PSWPSW)、暂暂暂暂存存存存器器器器、B B寄寄寄寄存存存存器器器器等等等等部部部部件件件件和和和和BCDBCDBCDBCD码码码码调调调调整整整整电电电电路路路路。在在在在进进进进行行行行位位位位操操操操作作作作时时时时,以以以以PSWPSW中中中中的的的的进进进进位位位位标标标标志志志志位位位位C C作作作作为为为为位位位位操操操操作作作作累累累累加加加加器器器器,整整整整个个个个位位位位操操操操作作作作系系系系统统统统构构构构成一台布尔成一台布尔成一台布尔成一台布尔处理机。处理机。处理机。处理机。vv主要功能主要功能主要功能主要功能:算术运算、逻辑运算、移位功能、位数据操作算术运算、逻辑运算、移位功能、位数据操作算术运算、逻辑运算、移位功能、位数据操作算术运算、逻辑运算、移位功能、位数据操作 累加器累加器累加器累加器ACCACC ACCACC是是是是8 8位寄存器,在进行算术、逻辑运算时,运算器的一个输入多位寄存器,在进行算术、逻辑运算时,运算器的一个输入多位寄存器,在进行算术、逻辑运算时,运算器的一个输入多位寄存器,在进行算术、逻辑运算时,运算器的一个输入多为为为为ACCACC的输入,而运算结果大多数也要送到的输入,而运算结果大多数也要送到的输入,而运算结果大多数也要送到的输入,而运算结果大多数也要送到ACCACC中。助记符为中。助记符为中。助记符为中。助记符为ACC ACC 或或或或A A。B B寄存器寄存器寄存器寄存器 在进行乘法、除法运算时作为在进行乘法、除法运算时作为在进行乘法、除法运算时作为在进行乘法、除法运算时作为ALUALU的输入之一,与的输入之一,与的输入之一,与的输入之一,与ACCACC配合完成运算,配合完成运算,配合完成运算,配合完成运算,并存放运算结果。并存放运算结果。并存放运算结果。并存放运算结果。CYCYCYCY(C C C C):):):):进位和借位标志,当指令执行中有进位和借位进位和借位标志,当指令执行中有进位和借位进位和借位标志,当指令执行中有进位和借位进位和借位标志,当指令执行中有进位和借位 产生时,产生时,产生时,产生时,CYCYCYCY为为为为1 1 1 1,反之为,反之为,反之为,反之为0 0 0 0。ACACACAC:辅助进位、借位标志(高半字节对低半字节的进位和辅助进位、借位标志(高半字节对低半字节的进位和辅助进位、借位标志(高半字节对低半字节的进位和辅助进位、借位标志(高半字节对低半字节的进位和借位),有进位和借位产生时,借位),有进位和借位产生时,借位),有进位和借位产生时,借位),有进位和借位产生时,ACACACAC为为为为1 1 1 1,反之为,反之为,反之为,反之为0 0 0 0。F0:F0:F0:F0:用户标志位,由用户自定义。用户标志位,由用户自定义。用户标志位,由用户自定义。用户标志位,由用户自定义。RS1RS1RS1RS1和和和和RS0RS0RS0RS0:工作寄存器选择标志位。工作寄存器选择标志位。工作寄存器选择标志位。工作寄存器选择标志位。OVOVOVOV:溢出标志位。溢出标志位。溢出标志位。溢出标志位。P P P P:奇偶校验位,当奇偶校验位,当奇偶校验位,当奇偶校验位,当A A A A中中中中1 1 1 1的个数为偶数时的个数为偶数时的个数为偶数时的个数为偶数时P=0P=0P=0P=0,反之为,反之为,反之为,反之为1 1 1 1。位序位序D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0位标志位标志CYCYACACF0F0RS1RS1RS0RS0OVOV/P PPSWPSW(程序状态字,(程序状态字,8 8位):存放指令执行后的有位):存放指令执行后的有关状态。关状态。2)2)控制器控制器 包包包包括括括括定定定定时时时时控控控控制制制制逻逻逻逻辑辑辑辑、程程程程序序序序计计计计数数数数器器器器PCPCPCPC、数数数数据据据据指指指指针针针针DPTRDPTRDPTRDPTR、堆栈指针堆栈指针堆栈指针堆栈指针SPSPSPSP、指令寄存器、指令寄存器、指令寄存器、指令寄存器IRIRIRIR、指令译码器、指令译码器、指令译码器、指令译码器IDIDIDID等。等。等。等。v主主主主要要要要功功功功能能能能:对对对对逐逐逐逐条条条条指指指指令令令令进进进进行行行行译译译译码码码码,并并并并通通通通过过过过定定定定时时时时和和和和控控控控制制制制电电电电路路路路在在在在规规规规定定定定的的的的时时时时刻刻刻刻发发发发出出出出各各各各种种种种操操操操作作作作所所所所需需需需的的的的内内内内部部部部和和和和外外外外部部部部控控控控制制制制信信信信号号号号,协协协协调调调调单单单单片片片片机机机机内内内内部部部部各各各各部部部部分分分分的的的的工工工工作作作作以以以以及及及及协协协协调单片机和外围芯片的工作调单片机和外围芯片的工作调单片机和外围芯片的工作调单片机和外围芯片的工作,完成指令规定的操作,完成指令规定的操作,完成指令规定的操作,完成指令规定的操作。8051的时钟 1 1、内部方式:、内部方式:MCS-51MCS-51单单单单片片片片机机机机片片片片内内内内有有有有一一一一个个个个用用用用于于于于构构构构成成成成振振振振荡荡荡荡器器器器的的的的高高高高增增增增益益益益反反反反相相相相放放放放大大大大器器器器,引引引引脚脚脚脚XTAL1XTAL1和和和和XTAL2XTAL2分分分分别别别别是是是是此此此此放放放放大大大大器器器器的的的的输输输输入入入入端端端端和和和和输输输输出出出出端端端端。把把把把放放放放大大大大器器器器与与与与作作作作为为为为反反反反馈馈馈馈元元元元件件件件的的的的晶晶晶晶体体体体振振振振荡荡荡荡器器器器或或或或陶陶陶陶瓷瓷瓷瓷谐谐谐谐振振振振器器器器连连连连接接接接,就就就就构构构构成成成成了了了了内内内内部部部部自自自自激激激激振振振振荡荡荡荡器并产生振荡时钟脉冲。器并产生振荡时钟脉冲。器并产生振荡时钟脉冲。器并产生振荡时钟脉冲。单片机时钟电路用来产生单片机时钟电路用来产生CPU的操作时序的操作时序通常有两种形式:通常有两种形式:在电路中,电容通常取在电路中,电容通常取在电路中,电容通常取在电路中,电容通常取30pF30pF,晶振的取值通常为:,晶振的取值通常为:,晶振的取值通常为:,晶振的取值通常为:1MHZ-1MHZ-33MHZ33MHZ(不同型号的单片机的上限频率可能有差别)。(不同型号的单片机的上限频率可能有差别)。(不同型号的单片机的上限频率可能有差别)。(不同型号的单片机的上限频率可能有差别)。2 2、外部方式:、外部方式:外部振荡方式就是把外部已有的时钟信号引入单片机内。外部振荡方式就是把外部已有的时钟信号引入单片机内。振荡周期、时钟周期、机器周期和指令周期振荡周期、时钟周期、机器周期和指令周期1.1.振荡周期振荡周期振荡周期振荡周期 为单片机提供时钟信号的振荡源的周期。为单片机提供时钟信号的振荡源的周期。为单片机提供时钟信号的振荡源的周期。为单片机提供时钟信号的振荡源的周期。单片机在工作时,由内单片机在工作时,由内单片机在工作时,由内单片机在工作时,由内部振荡器产生或由外部直接输入的送到内部控制逻辑单元的时间信号部振荡器产生或由外部直接输入的送到内部控制逻辑单元的时间信号部振荡器产生或由外部直接输入的送到内部控制逻辑单元的时间信号部振荡器产生或由外部直接输入的送到内部控制逻辑单元的时间信号的周期。其大小是时钟信号频率(的周期。其大小是时钟信号频率(的周期。其大小是时钟信号频率(的周期。其大小是时钟信号频率(foscfoscfoscfosc)的倒数。)的倒数。)的倒数。)的倒数。2.2.2.2.2.2.时钟周期时钟周期时钟周期时钟周期 由由由由2 2 2 2个振荡周期组成(个振荡周期组成(个振荡周期组成(个振荡周期组成(1 1 1 1个时钟周期个时钟周期个时钟周期个时钟周期=2=2=2=2个振荡周期)个振荡周期)个振荡周期)个振荡周期)3.3.机器周期机器周期机器周期机器周期4.4.通常将完成一个基本操作所需的时间称为机器周期。通常将完成一个基本操作所需的时间称为机器周期。通常将完成一个基本操作所需的时间称为机器周期。通常将完成一个基本操作所需的时间称为机器周期。由由由由12121212个个个个振荡周期或振荡周期或振荡周期或振荡周期或6 6 6 6个时钟周期组成(个时钟周期组成(个时钟周期组成(个时钟周期组成(1 1 1 1个机器周期个机器周期个机器周期个机器周期=12=12=12=12个振荡周期)。个振荡周期)。个振荡周期)。个振荡周期)。5.5.5.5.6.6.4.4.指令周期指令周期指令周期指令周期7.7.是指是指是指是指CPUCPU执行一条指令所需要的时间。一个指令周期通常含有执行一条指令所需要的时间。一个指令周期通常含有执行一条指令所需要的时间。一个指令周期通常含有执行一条指令所需要的时间。一个指令周期通常含有1 14 4个机器周期。个机器周期。个机器周期。个机器周期。P1P2S1P1P2S2P1P2S3P1P2S4P1P2S5P1P2S6机器周期机器周期时钟时钟周期周期振荡周期振荡周期单片机各种周期的关系图单片机各种周期的关系图v1 1个机器周期个机器周期=6=6个时钟周期个时钟周期=12=12个振荡周期个振荡周期指令部件数据地址指针数据地址指针数据地址指针数据地址指针DPTRDPTRDPTRDPTR(16(16(16(16位)位)位)位):存放程序存储器的地址或外部数据存放程序存储器的地址或外部数据存放程序存储器的地址或外部数据存放程序存储器的地址或外部数据存储器的地址。可分存储器的地址。可分存储器的地址。可分存储器的地址。可分DPHDPHDPHDPH和和和和DPLDPLDPLDPL两个独立两个独立两个独立两个独立8 8 8 8位寄存器使用。位寄存器使用。位寄存器使用。位寄存器使用。访问范围:访问范围:访问范围:访问范围:0000-0FFFFH0000-0FFFFH0000-0FFFFH0000-0FFFFH。程序计数器程序计数器程序计数器程序计数器PCPCPCPC(16161616位):指向下一条执行的指令地址执行指令位):指向下一条执行的指令地址执行指令位):指向下一条执行的指令地址执行指令位):指向下一条执行的指令地址执行指令后自动加一,常将后自动加一,常将后自动加一,常将后自动加一,常将PCPCPCPC值设置成程序第一条指令的内存地址。值设置成程序第一条指令的内存地址。值设置成程序第一条指令的内存地址。值设置成程序第一条指令的内存地址。访问范围:访问范围:访问范围:访问范围:0000-0FFFFH0000-0FFFFH0000-0FFFFH0000-0FFFFH。指令寄存器指令寄存器指令寄存器指令寄存器IRIRIRIR:存放当前执行的指令。存放当前执行的指令。存放当前执行的指令。存放当前执行的指令。指令译码器指令译码器指令译码器指令译码器IDIDIDID:解释指令,产生相应解释指令,产生相应解释指令,产生相应解释指令,产生相应 的控制信号。的控制信号。的控制信号。的控制信号。SPSP+1栈底栈底入栈入栈出栈出栈SP堆栈指针堆栈指针SPSP(8位):专门存放堆栈位):专门存放堆栈 的栈顶位置。遵循的栈顶位置。遵循“先进后出先进后出”的的 原则。原则。1.2.2 存储器组织存储器结构特点存储器结构特点存储器结构特点存储器结构特点:(哈佛结构单片机):(哈佛结构单片机):(哈佛结构单片机):(哈佛结构单片机)ROMROMROMROM和和和和RAMRAMRAMRAM分开,分开,分开,分开,有各自的寻址方式和寻址机构。有各自的寻址方式和寻址机构。有各自的寻址方式和寻址机构。有各自的寻址方式和寻址机构。MCS-51MCS-51MCS-51MCS-51系列的单片机有系列的单片机有系列的单片机有系列的单片机有4 4 4 4个独立的存储空间:个独立的存储空间:个独立的存储空间:个独立的存储空间:片内程序存储器片内程序存储器片内程序存储器片内程序存储器4K4K4K4K(0000-0FFFH0000-0FFFH0000-0FFFH0000-0FFFH););););片外程序存储器片外程序存储器片外程序存储器片外程序存储器64K64K64K64K(0000-0FFFFH0000-0FFFFH0000-0FFFFH0000-0FFFFH););););片内数据存储器片内数据存储器片内数据存储器片内数据存储器256B256B256B256B(00-0FFH00-0FFH00-0FFH00-0FFH););););片外数据存储器片外数据存储器片外数据存储器片外数据存储器64K64K64K64K(0000-0FFFFH0000-0FFFFH0000-0FFFFH0000-0FFFFH)。)。)。)。v注:注:注:注:MCS-51MCS-51MCS-51MCS-51系列单片机各型号芯片在各个存储器系列单片机各型号芯片在各个存储器系列单片机各型号芯片在各个存储器系列单片机各型号芯片在各个存储器空间的物理单元个数可能是不同的。空间的物理单元个数可能是不同的。空间的物理单元个数可能是不同的。空间的物理单元个数可能是不同的。一、程序存储器 程程程程序序序序存存存存储储储储器器器器用用用用于于于于存存存存放放放放编编编编好好好好的的的的程程程程序序序序或或或或表表表表格格格格常常常常数数数数。MCS-51MCS-51MCS-51MCS-51单单单单片片片片机机机机程程程程序序序序存储器的读取顺序由存储器的读取顺序由存储器的读取顺序由存储器的读取顺序由EAEAEAEA确定。确定。确定。确定。EA=1EA=1EA=1EA=1时时时时,则则则则PCPCPCPC的的的的值值值值在在在在0000H-0FFFH0000H-0FFFH0000H-0FFFH0000H-0FFFH之之之之间间间间,CPUCPUCPUCPU先先先先从从从从片片片片内内内内程程程程序序序序存存存存储储储储器器器器空空空空间间间间取取取取指指指指执执执执行行行行;当当当当PCPCPCPC的的的的值值值值大大大大于于于于0FFFH0FFFH0FFFH0FFFH时时时时才才才才访访访访问问问问外外外外部部部部的的的的程程程程序存储器空间。序存储器空间。序存储器空间。序存储器空间。若若若若EA=0EA=0EA=0EA=0时时时时,则则则则片片片片内内内内程程程程序序序序存存存存储储储储器器器器空空空空间间间间被被被被忽忽忽忽略略略略,CPUCPUCPUCPU只只只只从从从从片片片片外外外外程程程程序序序序存存存存储储储储器器器器空空空空间间间间取取取取指指指指执行。执行。执行。执行。复位后复位后复位后复位后PC=0000HPC=0000HPC=0000HPC=0000H。程程程程序序序序存存存存储储储储器器器器中中中中的的的的某某某某些些些些单单单单元元元元预预预预留留留留给给给给系系系系统专用。统专用。统专用。统专用。外部ROM内部ROM(EA=1)外部ROM(EA=0)0000H0000H0FFFH0FFFH1000HFFFFH程序存储器空间的程序存储器空间的6 6个特殊功能区域个特殊功能区域0000H 0000H:系统的启动单元(系统复位后,单片机从此处开始系统的启动单元(系统复位后,单片机从此处开始系统的启动单元(系统复位后,单片机从此处开始系统的启动单元(系统复位后,单片机从此处开始取指令开始执行)取指令开始执行)取指令开始执行)取指令开始执行)0003H 0003H:外部中断外部中断外部中断外部中断0 0入口地址入口地址入口地址入口地址000BH 000BH:定时器定时器定时器定时器/计数器计数器计数器计数器0 0中断入口地址中断入口地址中断入口地址中断入口地址0013H 0013H:外部中断外部中断外部中断外部中断1 1入口地址入口地址入口地址入口地址001BH 001BH:定时器定时器定时器定时器/计数器计数器计数器计数器1 1中断入口地址中断入口地址中断入口地址中断入口地址0023H 0023H:串行中断入口地址串行中断入口地址串行中断入口地址串行中断入口地址二、数据存储器MCS-51MCS-51单片机的内部数单片机的内部数单片机的内部数单片机的内部数据存储器有以下几个部分:据存储器有以下几个部分:据存储器有以下几个部分:据存储器有以下几个部分:工作寄存器区(工作寄存器区(工作寄存器区(工作寄存器区(00H00H1FH1FH)位寻址区(位寻址区(位寻址区(位寻址区(20H20H2FH2FH)用户区(用户区(用户区(用户区(30H7FH30H7FH)128B128B特殊功能寄存器特殊功能寄存器特殊功能寄存器特殊功能寄存器SFRSFR区(区(区(区(80H0FFH80H0FFH)特特殊殊功功能能寄寄存存器器通用通用RAM区区位寻址区位寻址区00H1FH20H2FH30H7FH80HFFH80H88H90H98HA0HA8HB0HB8HD0HE0HF0H特殊功能寄存器中位寻址外外 部部RAM(I/O口口地址地址)0000HFFFFH内部数据存储器(a)外部数据存储器(b)工作寄工作寄存器区存器区数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。内部内部内部内部RAMRAMRAMRAM的的的的00H-1FH00H-1FH00H-1FH00H-1FH分为分为分为分为4 4 4 4个区(由个区(由个区(由个区(由RS1RS1RS1RS1和和和和RS0RS0RS0RS0的状态决定当的状态决定当的状态决定当的状态决定当前的工作寄存器组别),每个区有前的工作寄存器组别),每个区有前的工作寄存器组别),每个区有前的工作寄存器组别),每个区有8 8 8 8个单元,分别用个单元,分别用个单元,分别用个单元,分别用R0-R0-R0-R0-R7R7R7R7来表示。来表示。来表示。来表示。vv第第第第0 0 0 0组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为00H-07H00H-07H00H-07H00H-07H;vv第第第第1 1 1 1组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为08H-0FH08H-0FH08H-0FH08H-0FH;vv第第第第2 2 2 2组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为10H-17H10H-17H10H-17H10H-17H;vv第第第第3 3 3 3组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为组工作寄存器:地址范围为18H-1FH18H-1FH18H-1FH18H-1FH。举例:举例:举例:举例:如果如果如果如果RS1=0RS1=0RS1=0RS1=0、RS0=0RS0=0RS0=0RS0=0时;则时;则时;则时;则(R0)=00H(R0)=00H(R0)=00H(R0)=00H(使用第使用第使用第使用第0 0 0 0组)组)组)组)如果如果如果如果RS1=0RS1=0RS1=0RS1=0、RS0=1RS0=1RS0=1RS0=1时;则时;则时;则时;则(R0)=08H(R0)=08H(R0)=08H(R0)=08H(使用第使用第使用第使用第1 1 1 1组)组)组)组)如果如果如果如果RS1=1RS1=1RS1=1RS1=1、RS0=0RS0=0RS0=0RS0=0时;则时;则时;则时;则(R0)=10H(R0)=10H(R0)=10H(R0)=10H(使用第使用第使用第使用第2 2 2 2组)组)组)组)如果如果如果如果RS1=1RS1=1RS1=1RS1=1、RS0=1RS0=1RS0=1RS0=1时;则时;则时;则时;则(R0)=18H(R0)=18H(R0)=18H(R0)=18H(使用第使用第使用第使用第3 3 3 3组)组)组)组)工作寄存器区(工作寄存器区(00H1FH)特特特特殊殊殊殊功功功功能能能能寄寄寄寄存存存存器器器器(SFR,SFR,Special Special Function Function RegisterRegister)也也也也称称称称专专专专用用用用寄寄寄寄存存存存器器器器,专专专专用用用用于于于于控控控控制制制制、管管管管理理理理单单单单片片片片机机机机内内内内部部部部算算算算术术术术逻逻逻逻辑辑辑辑部部部部件件件件、并并并并行行行行I/OI/O口口口口、串串串串行行行行I/OI/O口口口口、定定定定时时时时器器器器/计计计计数数数数器器器器、中中中中断断断断系系系系统统统统等等等等功功功功能能能能模模模模块块块块的的的的工工工工作作作作,用用用用户户户户在在在在编编编编程程程程时时时时可可可可以以以以置置置置数数数数设设设设定定定定,不不不不能能能能移移移移作作作作他他他他用用用用。80518051有有有有2121个特殊功能寄存器。见下表个特殊功能寄存器。见下表个特殊功能寄存器。见下表个特殊功能寄存器。见下表 从从从从80H80H开开开开始始始始每每每每8 8个个个个单单单单元元元元有有有有一一一一个个个个可可可可位位位位寻寻寻寻址址址址的的的的专专专专用用用用寄寄寄寄存存存存器器器器,位位位位地地地地址址址址从从从从80H80H开开开开始始始始,也也也也可可可可用用用用“寄寄寄寄存存存存器器器器名名名名.位位位位”来来来来表表表表示示示示,如如如如(0E7H0E7H),(),(),(),(0D4H0D4H或或或或RS1RS1),(),(),(),(80H80H)特殊功能寄存器区特殊功能寄存器区SFR(80H-0FFH)MCSMCS5151单片机的特殊功能寄存器单片机的特殊功能寄存器单片机的特殊功能寄存器单片机的特殊功能寄存器符号符号符号符号地址地址地址地址功能介功能介功能介功能介绍绍绍绍符号符号符号符号地址地址地址地址功能介功能介功能介功能介绍绍绍绍ACCACCE0HE0H累加器累加器SPSP81H81H堆堆栈栈指指针针BBF0HF0HB B寄存器寄存器DPHDPH83H83H数据地址指数据地址指针针(高(高8 8位)位)PSWPSWD0HD0H程序状程序状态态字字DPLDPL82H82H数据地址指数据地址指针针(低(低8 8位)位)IEIEA8HA8H中断允中断允许许控制寄存控制寄存器器SBUFSBUF99H99H串行口串行口锁锁存器存器IPIPB8HB8H中断中断优优先先级级控制寄控制寄存器存器TMODTMOD89H89HT0T0、T1T1定定时时器器/计计数器方数器方式控制寄存器式控制寄存器P0P080H80HP0P0口口锁锁存器存器TCONTCON88H88HT0T0、T1T1定定时时器器/计计数器控数器控制寄存器制寄存器P1P190H90HP1P1口口锁锁存器存器TH1TH18DH8DH定定时时器器/计计数器数器1 1(高(高8 8位)位)P2P2A0HA0HP2P2口口锁锁存器存器TH0TH08CH8CH定定时时器器/计计数器数器1 1(低(低8 8位)位)P3P3B0HB0HP3P3口口锁锁存器存器TL1TL18BH8BH定定时时器器/计计数器数器0 0(高(高8 8位)位)PCONPCON87H87H电电源控制寄存器源控制寄存器TL0TL08AH8AH定定时时器器/计计数器数器0 0(低(低8 8位)位)SCONSCON98H98H串行口控制寄存器串行口控制寄存器1.2.3 片内并行接口 单单单单片片片片机机机机芯芯芯芯片片片片内内内内有有有有一一一一项项项项主主主主要要要要的的的的组组组组成成成成