1、单片机原理及应用单片机原理及应用教学课件教学课件单片机原理及应用单片机原理及应用主讲教师:主讲教师:余水宝余水宝 单片机原理及应用单片机原理及应用教学课件教学课件有关本课程学习的几点建议:本课程是一门实践性、应用性很强的学科本课程是一门实践性、应用性很强的学科仅仅听懂还不够仅仅听懂还不够,重在培养动手能力重在培养动手能力硬件硬件/软件同样重要、不可偏废软件同样重要、不可偏废 硬件是骨架,软件是灵魂硬件是骨架,软件是灵魂本课程的前期基础课程是数字电路与微机原理本课程的前期基础课程是数字电路与微机原理这方面知识掌握得不够好的请自己补上这方面知识掌握得不够好的请自己补上预习、听课、复习、作业、实验环
2、环都重要预习、听课、复习、作业、实验环环都重要用科学的方法学习用科学的方法学习单片机原理及应用单片机原理及应用教学课件教学课件单片机技术的应用遍布国民经济与人民生活的各个领域单片机原理及应用单片机原理及应用教学课件教学课件单片机原理及应用单片机原理及应用教学课件教学课件单片机原理及应用单片机原理及应用教学课件教学课件 典型单片机有MCS-51、MSP430、EM78、PIC、Motorola、AVR等。MCS-51为主流产品,性能如表1.1.1。MSP430为低功耗产品,功能较强,性能如表1.1.2。EM78为低功耗产品,价格较低,性能如表1.1.3。PIC为低电压、低功耗、大电流LCD驱动、
3、低价格产品,性能如表1.1.4。Motorola是世界上最大的单片机生产厂家之一,品种全、选择余地大、新产品多。其特点是噪声低,抗干扰能力强,比较适合于工控领域及恶劣的环境。性能如表1.1.5。AVR为高速、低功耗产品,支持ISP、IAP,I/O口驱动能力较强。性能如表1.1.6。1.1 1.1 典型单片机性能概览典型单片机性能概览 单片机原理及应用单片机原理及应用教学课件教学课件 1.2 MCS-51单片机硬件结构及引脚单片机硬件结构及引脚 MCS-51系列单片机都是以系列单片机都是以Intel公司最早的典型产品公司最早的典型产品8051为核心,增加了一定的功能部件后构成的,因此,本为核心,
4、增加了一定的功能部件后构成的,因此,本章以章以8051为主介绍为主介绍MCS-51系列单片机系列单片机。1.2.1 MCS-511.2.1 MCS-51单片机的内部结构单片机的内部结构 MCS-51MCS-51单片机的组成:单片机的组成:CPU(CPU(进行运算、控制进行运算、控制)、RAM(RAM(数数据存储器据存储器)、ROM(ROM(程序存储器)、程序存储器)、I/OI/O口口(串口、并口)、内串口、并口)、内部总线部总线 和中断系统等。和中断系统等。组成框图如下:组成框图如下:单片机原理及应用单片机原理及应用教学课件教学课件 内部结构如下:内部结构如下:单片机原理及应用单片机原理及应用
5、教学课件教学课件 组成组成:运算器、控制器运算器、控制器。80518051的的CPUCPU包含以下功能部件包含以下功能部件:(1 1)8 8位位CPUCPU。(2 2)布尔代数处理器,具有位寻址能力。)布尔代数处理器,具有位寻址能力。(3 3)128B128B内部内部RAMRAM数据存储器,数据存储器,2121个专用寄存器。个专用寄存器。(4 4)4KB4KB内部掩膜内部掩膜ROMROM程序存储器。程序存储器。(5 5)2 2个个1616位可编程定时器位可编程定时器/计数器。计数器。(6 6)3232个(个(4 48 8位)双向可独立寻址的位)双向可独立寻址的I/OI/O口。口。(7 7)1
6、1个全双工个全双工UARTUART(异步串行通信口)。(异步串行通信口)。(8 8)5 5个中断源、两级中断优先级的中断控制器。个中断源、两级中断优先级的中断控制器。(9 9)时钟电路,外接晶振和电容可产生)时钟电路,外接晶振和电容可产生1.2MHz1.2MHz12 MHz12 MHz的时钟频率。的时钟频率。(1010)外部程序)外部程序/数据存储器寻址空间均为数据存储器寻址空间均为64KB64KB。(1111)111111条指令,大部分为单字节指令。条指令,大部分为单字节指令。(1212)单一)单一+5V+5V电源供电,双列直插电源供电,双列直插4040引脚引脚DIPDIP封装。封装。1.中
7、央处理器(中央处理器(CPU)单片机原理及应用单片机原理及应用教学课件教学课件(1)运算器)运算器组成:组成:8位算术逻辑运算单元位算术逻辑运算单元ALU(Arithmetic Logic Unit)、)、8位累加器位累加器A(Accumulator)、)、8位寄存器位寄存器B、程序状态字、程序状态字寄存器寄存器PSW(Program Status Word)、)、8位暂存寄存器位暂存寄存器TMP1和和TMP2等。等。功能:功能:完成算术运算和逻辑运算。完成算术运算和逻辑运算。(2)控制器)控制器组成:组成:程序计数器程序计数器PC(Program Counter)、指令寄存器)、指令寄存器I
8、R(Instruction Register)、指令译码器)、指令译码器ID(Instruction Decoder)、堆栈指针)、堆栈指针SP、数据指针、数据指针DPTR、定时控制逻、定时控制逻辑和振荡器辑和振荡器OSC等电路。等电路。功能:功能:CPU根据根据PC中的地址将欲执行指令的指令码从存储器中的地址将欲执行指令的指令码从存储器中取出,存放在中取出,存放在IR中,中,ID对对IR中的指令码进行译码,定时中的指令码进行译码,定时控制逻辑在控制逻辑在OSC配合下对配合下对ID译码后的信号进行分时,以产译码后的信号进行分时,以产生执行本条指令所需的全部信号。生执行本条指令所需的全部信号。单
9、片机原理及应用单片机原理及应用教学课件教学课件 MCS-MCS-5151系列单片机配置一览表系列单片机配置一览表系列片内存储器(字节)定时器计数器并行I/O串行I/O中断源片内ROM片内RAM无有ROM有EPROMIntel51子系列803180C31805180C51(4K字节)875187C51(4K字节)128字节2x164x8位15Intel52子系列803280C32805280C52(8K字节)875287C52(8K字节)256字节3x164x8位16ATEML89C系列(常用型)1051(1K)/2051(2K)/4051(4K)(20条引脚DIP封装)1282151589C5
10、1(4K)/89C52(8K)(40条引脚DIP封装)128/2562/33215/6单片机原理及应用单片机原理及应用教学课件教学课件 2.存储器存储器 MCS-51的存储器可分为程序存储器和数据存储器的存储器可分为程序存储器和数据存储器,又又有片内和片外之分。有片内和片外之分。(1 1)程序存储器)程序存储器 一般将只读存储器(一般将只读存储器(ROM)用做程序存储器。可寻址)用做程序存储器。可寻址空间为空间为64KB,用于存放用户程序、数据,用于存放用户程序、数据和表格等信息。和表格等信息。MCS-51单片机按程序单片机按程序存储器可分为内部无存储器可分为内部无ROM型(如型(如8031)
11、和内部有)和内部有ROM型(如型(如8051)两种,)两种,连接时连接时 引脚有区别。程序存引脚有区别。程序存储器结构如右图所示:储器结构如右图所示:EA单片机原理及应用单片机原理及应用教学课件教学课件(2)数据存储器)数据存储器 一般将随机存储器(一般将随机存储器(RAM)用做数据存储器。可寻址空)用做数据存储器。可寻址空间为间为64KB。MCS-51数据存储器可分为片内和片外两部分。数据存储器可分为片内和片外两部分。片外片外RAM:最大范围:最大范围:0000HFFFFH,64KB;用指令;用指令MOVX访问。访问。片内片内RAM:最大范围:最大范围:00HFFH,256B;用指令;用指令
12、MOV访问。又分访问。又分为两部分:低为两部分:低128B(007FH)为真正的为真正的RAM区,高区,高128B(80FFH)为特殊功能寄存器)为特殊功能寄存器(SFR)区。如右图所示。)区。如右图所示。单片机原理及应用单片机原理及应用教学课件教学课件 内部内部RAM的的20H2FH单元为单元为位寻址区,既可作位寻址区,既可作为一般单元用字节为一般单元用字节寻址,也可对它们寻址,也可对它们的位进行寻址。位的位进行寻址。位地址为地址为00H7FH。CPU能直接寻址这能直接寻址这些位(称些位(称MCS-51具有布尔处理功具有布尔处理功能),位地址分配能),位地址分配如右表所示。如右表所示。单片机
13、原理及应用单片机原理及应用教学课件教学课件 3特殊功能寄存器特殊功能寄存器 (SFRSFR)MCS-51有有21个特殊个特殊功能寄存器(也称为专用寄功能寄存器(也称为专用寄存器),包括算术运算寄存存器),包括算术运算寄存器、指针寄存器、器、指针寄存器、I/O口锁口锁存器、定时器存器、定时器/计数器、串行计数器、串行口、中断、状态、控制寄存口、中断、状态、控制寄存器等,它们被离散地分布在器等,它们被离散地分布在内部内部RAM的的80HFFH地址地址单元中(不包括单元中(不包括PC),共,共占据了占据了128个存储单元,构个存储单元,构成了成了SFR存储块。其字节地存储块。其字节地址可被址可被8整
14、除的整除的SFR可位寻可位寻址。址。SFR反映了反映了MCS-51单单片机的运行状态。特殊功能片机的运行状态。特殊功能寄存器分布如右表所示。寄存器分布如右表所示。单片机原理及应用单片机原理及应用教学课件教学课件(2 2)累加器)累加器A A(AccumulatorAccumulator)累加器累加器A是是8位寄存器,又记做位寄存器,又记做ACC,是一个最常用的专用,是一个最常用的专用寄存器。在算术寄存器。在算术/逻辑运算中用于存放操作数或结果。逻辑运算中用于存放操作数或结果。(3 3)寄存器)寄存器B B 寄存器寄存器B 是是8位寄存器,是专门为乘除法指令设计的,也位寄存器,是专门为乘除法指令
15、设计的,也作通用寄存器用。作通用寄存器用。(1 1)程序计数器)程序计数器PCPC(Program CounterProgram Counter)程序计数器程序计数器PC在物理上是独立的,它不属于在物理上是独立的,它不属于SFR存储器块。存储器块。PC是一个是一个16位的计数器,专门用于存放位的计数器,专门用于存放CPU将要执行的指令将要执行的指令 地址(即下一条指令的地址),寻址范围为地址(即下一条指令的地址),寻址范围为64KB,PC有自动有自动 加加1功能,不可寻址,用户无法对它进行读写,但是可以通过功能,不可寻址,用户无法对它进行读写,但是可以通过 转移、调用、返回等指令改变其内容,以
16、控制程序执行的顺序。转移、调用、返回等指令改变其内容,以控制程序执行的顺序。(4 4)工作寄存器)工作寄存器 内部内部RAM的工作寄存器区的工作寄存器区00H1FH共共32个字节被均匀地个字节被均匀地分成四个组(区),每个组(区)有分成四个组(区),每个组(区)有8个寄存器,分别用个寄存器,分别用R0R7表示,称为工作寄存器或通用寄存器,其中,表示,称为工作寄存器或通用寄存器,其中,R0、R1还经常用还经常用于间接寻址的地址指针。在程序中通过程序状态字寄存器于间接寻址的地址指针。在程序中通过程序状态字寄存器(PSW)第)第3、4位设置工作寄存器区。位设置工作寄存器区。(5 5)程序状态字)程序
17、状态字PSW PSW(Program Status WordProgram Status Word)程序状态字程序状态字PSW是是8位寄存器,用于存放程序运行的状态位寄存器,用于存放程序运行的状态信息,信息,PSW中各位状态通常是在指令执行的过程中自动形成的,中各位状态通常是在指令执行的过程中自动形成的,但也可以由用户根据需要采用传送指令加以改变。其定义格式但也可以由用户根据需要采用传送指令加以改变。其定义格式如下页表所示。如下页表所示。单片机原理及应用单片机原理及应用教学课件教学课件 其中:其中:CyCy:进借位标志;进借位标志;ACAC:辅助进借位标志;辅助进借位标志;F F0 0:用户标
18、志;用户标志;RSRS1 1、RSRS0 0:工作寄存器组(区)选择(如下表所示);工作寄存器组(区)选择(如下表所示);OVOV:溢出标志位,有溢出时置溢出标志位,有溢出时置1;P P:奇偶标志位。奇偶标志位。A中有奇数个中有奇数个1时置时置1。单片机原理及应用单片机原理及应用教学课件教学课件(6 6)数据指针)数据指针DPTRDPTR(Data PointerData Pointer)数据指针数据指针DPTR是是16位的专用寄存器,即可作为位的专用寄存器,即可作为16位寄存器位寄存器使用,也可作为两个独立的使用,也可作为两个独立的8位寄存器位寄存器DPH(高(高8位)位)、DPL(低(低8
19、位)使用。位)使用。DPTR主要用作主要用作16位间址寄存器,访问程序存位间址寄存器,访问程序存储器和片外数据寄存器。储器和片外数据寄存器。(7 7)堆栈指针)堆栈指针SPSP(Stack PointerStack Pointer)堆栈是一种数据结构,是内部堆栈是一种数据结构,是内部RAM的一段区域。堆栈存取的一段区域。堆栈存取数据的原则是数据的原则是“后进先出后进先出”。堆栈指针。堆栈指针SP是一个是一个8位寄存器,用位寄存器,用于指示堆栈的栈顶,它决定了堆栈在内部于指示堆栈的栈顶,它决定了堆栈在内部RAM中的物理位置。中的物理位置。MCS-51单片机的堆栈地址向大的方向变化(与微机堆栈地单
20、片机的堆栈地址向大的方向变化(与微机堆栈地址向小的方向变化相反)。系统复位后,址向小的方向变化相反)。系统复位后,SP初值为初值为07H,实际,实际应用中通常根据需要在主程序开始处对堆栈指针应用中通常根据需要在主程序开始处对堆栈指针SP进行初始化,进行初始化,一般设置一般设置SP为为60H。设立堆栈的目的是用于数据的暂存,中断、子程序调用时设立堆栈的目的是用于数据的暂存,中断、子程序调用时断点和现场的保护与恢复。断点和现场的保护与恢复。单片机原理及应用单片机原理及应用教学课件教学课件(8 8)I/OI/O口专用寄存器(口专用寄存器(P0,P1,P2,P3P0,P1,P2,P3)8051片内有片
21、内有4个个8位并行位并行I/O接口接口P0,P1,P2和和P3,在,在SFR中中相应有相应有4个个I/O口寄存器口寄存器P0,P1,P2和和P3。(9 9)定时器)定时器/计数器(计数器(TL0,TH0,TL1TL0,TH0,TL1和和TH1TH1)MCS-51单片机中有两个单片机中有两个16位的定时器位的定时器/计数器计数器T0和和T1,它,它们由们由4个个8位寄存器(位寄存器(TL0,TH0,TL1和和TH1)组成,)组成,2个个16位定位定时器时器/计数器是完全独立的。可以单独对这计数器是完全独立的。可以单独对这4个寄存器进行寻址,个寄存器进行寻址,但不能把但不能把T0和和T1当做当做1
22、6位寄存器来使用。位寄存器来使用。(1010)串行数据缓冲器()串行数据缓冲器(SBUFSBUF)串行数据缓冲器串行数据缓冲器SBUF用于存放需要发送和接收的数据,用于存放需要发送和接收的数据,它由两个独立的寄存器组成(发送缓冲器和接收缓冲器),要它由两个独立的寄存器组成(发送缓冲器和接收缓冲器),要发送和接收的操作其实都是对串行数据缓冲器发送和接收的操作其实都是对串行数据缓冲器SBUF进行的进行的。(1111)其他控制寄存器)其他控制寄存器 除除上述外,还有上述外,还有IP,IE,TCON,SCON和和PCON等几个寄存等几个寄存器,主要用于中断、定时和串行口的控制,器,主要用于中断、定时和
23、串行口的控制,单片机原理及应用单片机原理及应用教学课件教学课件 I/O接口是接口是MCS-51单片机对外部实现控制和信息交换的单片机对外部实现控制和信息交换的必经之路,用于信息传送过程中的速度匹配和增加它的负必经之路,用于信息传送过程中的速度匹配和增加它的负载能力。载能力。8051内部有内部有4个个8位并行接口位并行接口P0,P1,P2,P3,有,有1个全个全双工的可编程串行双工的可编程串行I/O接口。接口。5 5定时器定时器/计数器计数器 8051内部有两个内部有两个16位可编程序的定时器位可编程序的定时器/计数器,均为计数器,均为二进制加二进制加1计数器,分别命名为计数器,分别命名为T0和
24、和T1。T0和和T1均有定时器和计数器两种工作模式。在定时器均有定时器和计数器两种工作模式。在定时器模式下,模式下,T0和和T1的计数脉冲可以由单片机时钟脉冲经的计数脉冲可以由单片机时钟脉冲经12分分频后提供。在计数器模式下,频后提供。在计数器模式下,T0和和T1的计数脉冲可以从的计数脉冲可以从P3.4和和P3.5引脚上输入。对引脚上输入。对T0和和T1的控制由定时器方式选的控制由定时器方式选择寄存器择寄存器TMOD和定时器控制寄存器和定时器控制寄存器TCON完成。完成。4 4I/OI/O接口接口单片机原理及应用单片机原理及应用教学课件教学课件 6 6中断系统中断系统 中断:中断:指指CPU暂
25、停原程序执行,转而为外部设备服务(执行暂停原程序执行,转而为外部设备服务(执行中断服务程序),并在服务完后返回到原程序执行的过程。中断服务程序),并在服务完后返回到原程序执行的过程。中断系统:中断系统:指能够处理上述中断过程所需要的硬件电路。指能够处理上述中断过程所需要的硬件电路。中断源:中断源:指能产生中断请求信号的源泉。指能产生中断请求信号的源泉。8051可处理可处理5个中断源(个中断源(2个外部,个外部,3个内部)发出的中个内部)发出的中断请求,并可对其进行优先权处理。外部中断的请求信号可以断请求,并可对其进行优先权处理。外部中断的请求信号可以从从P3.2,P3.3(即(即 和和 )引脚
26、上输入,有电平或边沿)引脚上输入,有电平或边沿两种触发方式;内部中断源有两种触发方式;内部中断源有3个,个,2个定时器个定时器/计数器中断源计数器中断源和和1个串行口中断源。个串行口中断源。8051的中断系统主要由中断允许控制器的中断系统主要由中断允许控制器IE和中断优先级和中断优先级控制器控制器IP等电路组成。等电路组成。0INT1INT单片机原理及应用单片机原理及应用教学课件教学课件 1.2.2 MCS-511.2.2 MCS-51单片机外部引脚单片机外部引脚 1 1电源线电源线 GNDGND:接地引脚。接地引脚。V VCCCC:正电源引脚。接正电源引脚。接5V5V电源。电源。MCS-51
27、MCS-51系列单片机中,各类单片机都是相互兼容的,系列单片机中,各类单片机都是相互兼容的,只是引脚功能略有差异。只是引脚功能略有差异。80518051单片机有单片机有4040个引脚,分为端个引脚,分为端口线、电源线和控制线三类。口线、电源线和控制线三类。2 2端口线端口线 P0P0P3P3口:口:4 48=328=32条。条。(1 1)P0P0口(口(P0.0P0.0P0.7 P0.7)8 8位双向三态位双向三态I/OI/O口,可作为外部扩展时的口,可作为外部扩展时的数据总线数据总线/低低8 8位地址总线的分时复用口。又可位地址总线的分时复用口。又可作为通用作为通用I/OI/O口,每个引脚可
28、驱动口,每个引脚可驱动8 8个个TTLTTL负载。负载。对对EPROMEPROM型芯片(如型芯片(如87518751)进行编程和校)进行编程和校验时,验时,P0P0口用于输入口用于输入/输出数据。输出数据。单片机原理及应用单片机原理及应用教学课件教学课件(2 2)P1P1口(口(P1.0P1.0P1.7P1.7)8位准双向位准双向I/O口,内部具有上拉电阻,可作为通用口,内部具有上拉电阻,可作为通用I/O口。口。每个引脚可驱动每个引脚可驱动4个个TTL负载。负载。(3 3)P2P2口(口(P2.0P2.0P2.7P2.7)8位准双向位准双向I/O口,内部具有上拉电阻,可作为外部扩展口,内部具有
29、上拉电阻,可作为外部扩展时的高时的高8位地址总线。又可作为通用位地址总线。又可作为通用I/O口,每个引脚可驱动口,每个引脚可驱动4个个TTL负载。负载。对对EPROM型芯片(如型芯片(如8751)进行编程和校验时,用来接收)进行编程和校验时,用来接收高高8位地址。位地址。(4 4)P3P3口(口(P3.0P3.0P3.7 P3.7)8位准双向位准双向I/O口,内部具有上拉电阻。它是双功能复用口,内部具有上拉电阻。它是双功能复用口,作为通用口,作为通用I/O口时,功能与口时,功能与P1口相同,常用第二功能。口相同,常用第二功能。每个引脚可驱动每个引脚可驱动4个个TTL负载。作为第二功能使用时,各
30、位的负载。作为第二功能使用时,各位的作用如下页表所示。作用如下页表所示。单片机原理及应用单片机原理及应用教学课件教学课件 3 3控制线控制线(1 1)RST/VRST/VPDPD RST/VPD引脚是复位信号引脚是复位信号/备用电源线引脚。当备用电源线引脚。当8051通电时,在通电时,在RST引脚上出现引脚上出现24个时钟周期以上的高电平,个时钟周期以上的高电平,系统即初始复位。系统即初始复位。单片机原理及应用单片机原理及应用教学课件教学课件(2)ALE/地址锁存允许地址锁存允许/编程引脚。当访问外部程序存储器时,编程引脚。当访问外部程序存储器时,ALE的输出用的输出用于锁存地址的低位字节,以
31、便于锁存地址的低位字节,以便P0口实现地址口实现地址/数据复用。当不访问外部程数据复用。当不访问外部程序存储器时,序存储器时,ALE端将输出一个端将输出一个1/6时钟频率的正脉冲信号。时钟频率的正脉冲信号。ALE/是复用引脚,其第二功能是对是复用引脚,其第二功能是对EPROM型芯片(如型芯片(如8751)进行编程和校验时,此引脚传送)进行编程和校验时,此引脚传送52ms宽的负脉冲选通信号,程序宽的负脉冲选通信号,程序计数器计数器PC的的16位地址数据将出现在位地址数据将出现在P0和和P2口上,外部程序存储器则把指口上,外部程序存储器则把指令码放到令码放到P0口上,由口上,由CPU读入并执行。读
32、入并执行。(3 3)/V/VPPPP 允许访问片外程序存储器允许访问片外程序存储器/编程电源引脚。对于片内无程序存储器的编程电源引脚。对于片内无程序存储器的MCS-51MCS-51单片机(如单片机(如80318031),),必须接地。片内有程序存储器的必须接地。片内有程序存储器的MCS-51MCS-51单单片机(如片机(如80518051),),必须接高电平。必须接高电平。/V/VPPPP是复用引脚,其第二功能是片内是复用引脚,其第二功能是片内EPROMEPROM编程编程/校验时的电源线,校验时的电源线,在编程时,在编程时,V VPPPP脚需加上脚需加上21V21V的编程电压。的编程电压。PR
33、OGPROGEAEAEAEA单片机原理及应用单片机原理及应用教学课件教学课件(4 4)XTAL1XTAL1和和XTAL2XTAL2 XTAL1脚为片内振荡电路的输入端,脚为片内振荡电路的输入端,XTAL2脚为片内振荡脚为片内振荡电路的输出端。电路的输出端。8051的时钟有两种方式,一种是片内时钟振的时钟有两种方式,一种是片内时钟振荡方式,但需在荡方式,但需在XTAL1和和XTAL2脚外接石英晶体(频率为脚外接石英晶体(频率为1.212MHz)和振荡电容,振荡电容的值一般取)和振荡电容,振荡电容的值一般取1030pF,典型值为典型值为30pF;另外一种是外部时钟方式,即将;另外一种是外部时钟方式
34、,即将XTAL1接地,接地,外部时钟信号从外部时钟信号从XTAL2脚输入,如下图所脚输入,如下图所示示。PSEN 片外片外ROM选通线。在执行选通线。在执行访问片外访问片外ROM的指令的指令MOVC时,时,8051自动在自动在 引脚产引脚产生一个负脉冲,用于对片外生一个负脉冲,用于对片外ROM的选通。其他情况下,的选通。其他情况下,该引脚均为高电平封锁状态。该引脚均为高电平封锁状态。(5)PSEN单片机原理及应用单片机原理及应用教学课件教学课件 1.3 MCS-51单片机的工作方式单片机的工作方式 MCS-51系列单片机的工作方式可分为:复位方式、系列单片机的工作方式可分为:复位方式、程序执行
35、方式、单片执行方式、掉电保护方式、节电工作程序执行方式、单片执行方式、掉电保护方式、节电工作方式和方式和EPROM编程编程/校验方式。校验方式。1.3.1 1.3.1 复位方式复位方式 系统开始运行和重新启动靠复位电路来实现,这种工作系统开始运行和重新启动靠复位电路来实现,这种工作方式为复位方式。方式为复位方式。单片机在开机时都需要复位,以便单片机在开机时都需要复位,以便CPU及其他功能部及其他功能部件都处于一种确定的初始状态,并从这个状态开始工作。件都处于一种确定的初始状态,并从这个状态开始工作。MCS-51单片机在单片机在RST引脚产生两个机器周期(即引脚产生两个机器周期(即24个时钟周期
36、)以上的高电平即可实现复位。个时钟周期)以上的高电平即可实现复位。单片机原理及应用单片机原理及应用教学课件教学课件 复位电路有两种:上电自动复位和上电复位电路有两种:上电自动复位和上电/按键手动复位,按键手动复位,如下图所示如下图所示。单片机原理及应用单片机原理及应用教学课件教学课件 复位后,复位后,80518051的各特殊功能寄存器的初始状态如下表所示。的各特殊功能寄存器的初始状态如下表所示。单片机原理及应用单片机原理及应用教学课件教学课件 1.3.2 程序执行方式程序执行方式 程序执行方式是单片机基本工作方式,可分为连续程序执行方式是单片机基本工作方式,可分为连续执行工作方式和单步执行工作
37、方式。执行工作方式和单步执行工作方式。1 1连续执行工作方式连续执行工作方式 这是所有单片机都需要的一种方式。单片机复位后,这是所有单片机都需要的一种方式。单片机复位后,PCPC值为值为0000H0000H,因此单片机复位后立即转到,因此单片机复位后立即转到0000H0000H处执行处执行程序。单片机按照程序事先编排的任务,自动连续地执程序。单片机按照程序事先编排的任务,自动连续地执行下去。行下去。2 2单步执行工作方式单步执行工作方式 这是用户调试程序的一种工作方式,在单片机开发这是用户调试程序的一种工作方式,在单片机开发系统上有一专用的单步按键(或软件调试环境)。按一系统上有一专用的单步按
38、键(或软件调试环境)。按一次,单片机就执行一条指令(仅仅执行一条),这样就次,单片机就执行一条指令(仅仅执行一条),这样就可以逐条检查程序,发现问题进行修改。可以逐条检查程序,发现问题进行修改。单步执行方式是利用单片机外部中断功能实现的。单步执行方式是利用单片机外部中断功能实现的。单片机原理及应用单片机原理及应用教学课件教学课件 节电工作方式是一种低功耗的工作方式,可分为空闲(等节电工作方式是一种低功耗的工作方式,可分为空闲(等待)方式和掉电(停机)方式。是针对待)方式和掉电(停机)方式。是针对CHMOS类芯片而设计类芯片而设计的,的,HMOS型单片机不能工作在节电方式,但它有一种掉电型单片机
39、不能工作在节电方式,但它有一种掉电保护功能。保护功能。1 1HMOSHMOS单片机的掉电保护单片机的掉电保护 当当VCC突然掉电时,单片机通过中断将必须保护的数据送突然掉电时,单片机通过中断将必须保护的数据送入内部入内部RAM,备用电源,备用电源VPD可以维持内部可以维持内部RAM中的数据不丢中的数据不丢失。失。2 2CHMOSCHMOS单片机的节电方式单片机的节电方式 CHMOS型单片机是一种低功耗器件,正常工作时电流为型单片机是一种低功耗器件,正常工作时电流为1122mA,空闲状态时为,空闲状态时为1.75mA,掉电方式为,掉电方式为550 A。因此,因此,CHMOS型单片机特别适用于低功
40、耗应用场合,它的空型单片机特别适用于低功耗应用场合,它的空闲方式和掉电方式都是由电源控制寄存器闲方式和掉电方式都是由电源控制寄存器PCON中相应的位中相应的位来控制。来控制。1.3.3 节电方式节电方式 单片机原理及应用单片机原理及应用教学课件教学课件(1 1)电源控制寄存器)电源控制寄存器PCONPCON PCON PCON各位的定义如下表所示。各位的定义如下表所示。IDLIDL:空闲方式控制位,该位为1时,单片机进入空闲待机工 作方式,此时耗电甚微。PDPD:掉电方式控制位,为1时,单片机进入掉电工作方式。当IDL、PD同时为1,则进入掉电工作方式,同时为0,则工作在正常运行状态。GF0,
41、GF1GF0,GF1:通用标志位,描述中断是来自正常运行还是来自 空闲方式,用户可通过指令设定它们的状态。SMOD:为串行口波特率倍率控制位,用于串行通信。单片机原理及应用单片机原理及应用教学课件教学课件(2)空闲工作方式)空闲工作方式 将将IDL位置为位置为1(用指令(用指令MOV PCON,#01H),则进入空闲工作方式,其内部控),则进入空闲工作方式,其内部控制电路如右图所示。此时,制电路如右图所示。此时,CPU进入空闲进入空闲待机状态,中断系统、串行口、定时器待机状态,中断系统、串行口、定时器/计计数器,仍有时钟信号,仍继续工作。数器,仍有时钟信号,仍继续工作。退出空闲状态有两种方法:
42、一是中断退出空闲状态有两种方法:一是中断退出,二是硬件复位退出退出,二是硬件复位退出。(3 3)掉电工作方式)掉电工作方式 将将PD置为置为1(用指令(用指令MOV PCON,#02H),可使单片机进入掉电工作),可使单片机进入掉电工作方式。此时振荡器停振,只有片内的方式。此时振荡器停振,只有片内的RAM和和SFR中的数据保持不变,而包中的数据保持不变,而包括中断系统在内的全部电路都将处于停止工作状态。退出掉电工作方式,括中断系统在内的全部电路都将处于停止工作状态。退出掉电工作方式,只能采用硬件复位的方法。只能采用硬件复位的方法。欲使欲使8051从掉电方式退出后继续执行掉电前的程序,则必须在掉
43、电前从掉电方式退出后继续执行掉电前的程序,则必须在掉电前预先把预先把SFR中的内容保存到片内中的内容保存到片内RAM中,并在掉电方式退出后恢复中,并在掉电方式退出后恢复SFR掉掉电前的内容。电前的内容。单片机原理及应用单片机原理及应用教学课件教学课件 1.4 1.4 单片机的时序单片机的时序 时序:时序:CPUCPU在执行指令时所需控制信号的时间顺序称为时序。在执行指令时所需控制信号的时间顺序称为时序。时序是用定时单位来描述的,时序是用定时单位来描述的,MCS-51MCS-51的时序单位有四个,分别的时序单位有四个,分别是时钟周期(节拍)、状态、机器周期和指令周期。是时钟周期(节拍)、状态、机
44、器周期和指令周期。1.4.1 MCS-51的时序单位的时序单位 1.1.时钟周期:时钟周期:又称为振荡周期、节拍(用又称为振荡周期、节拍(用P P表示),定义为单表示),定义为单片机提供时钟信号的振荡源(片机提供时钟信号的振荡源(OSCOSC)的周期。它是时序中的最小)的周期。它是时序中的最小单位。单位。2 2.状态(用状态(用S S表示):表示):单片机振荡脉冲经过二分频后即得到整单片机振荡脉冲经过二分频后即得到整个单片机工作系统的状态。一个状态有两个节拍,前半周期对个单片机工作系统的状态。一个状态有两个节拍,前半周期对应的节拍定义为应的节拍定义为P1P1,后半周期对应的节拍定义为,后半周期
45、对应的节拍定义为P2P2。单片机原理及应用单片机原理及应用教学课件教学课件 3.3.机器周期:机器周期:通常将完成一个基本操作所需的时间称为机器通常将完成一个基本操作所需的时间称为机器周期。周期。MCS-51MCS-51中规定一个机器周期包含中规定一个机器周期包含1212个时钟周期,即个时钟周期,即有有6 6个状态,分别表示为个状态,分别表示为S1S1S6S6。若晶振为若晶振为6MHz6MHz,则机器周期为,则机器周期为2s2s,若晶振为,若晶振为12MHz12MHz,则机器周期为则机器周期为1s1s。4.4.指令周期:指令周期:执行一条指令所需要的时间称为指令周期。它执行一条指令所需要的时间
46、称为指令周期。它是时序中的最大单位。一个指令周期通常含有是时序中的最大单位。一个指令周期通常含有1 14 4个机器个机器周期。指令所包含的机器周期数决定了指令的运算速度,周期。指令所包含的机器周期数决定了指令的运算速度,机器周期数越少的指令,其执行速度越快。机器周期数越少的指令,其执行速度越快。以机器周期为单位,指令可分为单周期、双周期和四以机器周期为单位,指令可分为单周期、双周期和四周期指令。周期指令。单片机原理及应用单片机原理及应用教学课件教学课件 1.4.2 MCS-51指令的取指指令的取指/执行时序执行时序 指令的集合称为程序,执行程序的过程就是执行指令的指令的集合称为程序,执行程序的
47、过程就是执行指令的过程。单片机执行任何一条指令时都可以分为取指阶段和执过程。单片机执行任何一条指令时都可以分为取指阶段和执行阶段。在取指阶段,行阶段。在取指阶段,CPU从程序存储器中取出指令操作码,从程序存储器中取出指令操作码,送指令寄存器,再经指令译码器译码,产生一系列控制信号,送指令寄存器,再经指令译码器译码,产生一系列控制信号,完成本指令规定的操作。完成本指令规定的操作。单周期和双周期指令的取指时序图如下页图所示。单周期和双周期指令的取指时序图如下页图所示。ALE信号是用于锁存低信号是用于锁存低8位地址的选通信号,每出现一次位地址的选通信号,每出现一次该信号,单片机即进行一次读指令操作。
48、当指令为多字节或该信号,单片机即进行一次读指令操作。当指令为多字节或多周期指令时,只有第一个多周期指令时,只有第一个ALE信号进行读指令操作,其余信号进行读指令操作,其余的的ALE信号为无效操作(或读操作数操作)。信号为无效操作(或读操作数操作)。单片机原理及应用单片机原理及应用教学课件教学课件 单片机原理及应用单片机原理及应用教学课件教学课件 1.4.3 访问片外访问片外ROM/RAM指令的时序指令的时序1外部程序存储器读时序外部程序存储器读时序 从外部程序存储器读取指令,必须有两个信号进行控制:从外部程序存储器读取指令,必须有两个信号进行控制:ALE信号和信号和 信号(外部信号(外部ROM
49、读选通脉冲)。读选通脉冲)。PSEN单片机原理及应用单片机原理及应用教学课件教学课件 2外部数据存储器读时序外部数据存储器读时序 第一个机器周期是取指周期,是从第一个机器周期是取指周期,是从ROM中读取指令数据,第二个中读取指令数据,第二个机器周期才开始读取外部数据存储器机器周期才开始读取外部数据存储器RAM中的内容。有三个信号进行中的内容。有三个信号进行控制:控制:ALE信号、信号、信号(外部信号(外部ROM读选通脉冲)和读选通脉冲)和 信号(外信号(外部部RAM读选通脉冲)。读选通脉冲)。RDPSEN单片机原理及应用单片机原理及应用教学课件教学课件 作业与练习:作业与练习:1.1 1.21.4 1.61.7 1.111.16 1.17