单片机原理与接口技术ppt---第7章 MCS-51 中断系统
合集下载
单片机原理及接口技术(C51编程)第7章 定时器计数器

30
图7-14 由外部计数输入信号控制LED的闪烁
(3)设置IE寄存器 本例由于采用T1中断,因此需将IE寄存器的EA、ET1位置1。
(4)启动和停止定时器T1 将寄存器TCON中TR1=1,则启动T1计数;TR1=0,则停止T1计数。
参考程序如下:
#include <reg51.h> void Delay(unsigned int i)
7.4 定时器/计数器的编程和应用 4种工作方式中,方式0与方式1基本相同,只是计数位数不同。方
式0为13位,方式1为16位。由于方式0是为兼容MCS-48而设,计数初 值计算复杂,所以在实际应用中,一般不用方式0,常采用方式1。
7.4.1 P1口控制8只LED每0.5s闪亮一次 【例7-1】在AT89S51的P1口上接有8只LED,原理电路见图7-
当TMOD的低2位为11时,T0被选为方式3,各引脚与T0的逻辑关系 见图7-8。
T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态控制位 C/T* 、GATE、TR0 ,而TH0被固定为一个8位定时器(不能作为外部 计数模式),并使用定时器T1的状态控制位TR1,同时占用定时器T1的 中断请求源TF1。
13。采用T0方式1的定时中断方式,使P1口外接的8只LED每0.5s闪亮 一次。
23
图7-13 方式1定时中断控制LED闪亮
24
(1)设置TMOD寄存器 T0工作在方式1,应使TMOD寄存器的M1、M0=01;应设置C/T*=0,为定
时器模式;对T0的运行控制仅由TR0来控制,应使相应的GATE位为0。定时 器T1不使用,各相关位均设为0。所以,TMOD寄存器应初始化为0x01。 (2)计算定时器T0的计数初值
图7-14 由外部计数输入信号控制LED的闪烁
(3)设置IE寄存器 本例由于采用T1中断,因此需将IE寄存器的EA、ET1位置1。
(4)启动和停止定时器T1 将寄存器TCON中TR1=1,则启动T1计数;TR1=0,则停止T1计数。
参考程序如下:
#include <reg51.h> void Delay(unsigned int i)
7.4 定时器/计数器的编程和应用 4种工作方式中,方式0与方式1基本相同,只是计数位数不同。方
式0为13位,方式1为16位。由于方式0是为兼容MCS-48而设,计数初 值计算复杂,所以在实际应用中,一般不用方式0,常采用方式1。
7.4.1 P1口控制8只LED每0.5s闪亮一次 【例7-1】在AT89S51的P1口上接有8只LED,原理电路见图7-
当TMOD的低2位为11时,T0被选为方式3,各引脚与T0的逻辑关系 见图7-8。
T0分为两个独立的8位计数器TL0和TH0,TL0使用T0的状态控制位 C/T* 、GATE、TR0 ,而TH0被固定为一个8位定时器(不能作为外部 计数模式),并使用定时器T1的状态控制位TR1,同时占用定时器T1的 中断请求源TF1。
13。采用T0方式1的定时中断方式,使P1口外接的8只LED每0.5s闪亮 一次。
23
图7-13 方式1定时中断控制LED闪亮
24
(1)设置TMOD寄存器 T0工作在方式1,应使TMOD寄存器的M1、M0=01;应设置C/T*=0,为定
时器模式;对T0的运行控制仅由TR0来控制,应使相应的GATE位为0。定时 器T1不使用,各相关位均设为0。所以,TMOD寄存器应初始化为0x01。 (2)计算定时器T0的计数初值
MCS-51系列单片机的中断系统

单片机原理与接口技术
大连理工大学出版社
第5章 中断
当断不断必受其乱
第5章 中断系统
5.1 概述 MCS-51系列单片机的中断系统 5.2 MCS-51系列单片机的中断系统 5.3 中断程序设计方法
第5 章
中断系统
中断控制是单片机最重要的技术之一, 实时控制及人机交互等应用都是通过中 断实现的。 本章主要介绍中断的基本概念、MCS-51 系列单片机单片机的中断机制及其简单 应用。
5.2.2中断控制 5.2.2中断控制
1.中断允许 MCS-51系列单片机中断系统通过中断允许控制 寄存器IE实现开中断和关中断的功能。 (1)IE寄存器 IE寄存器由一个中断允许总控制位和各中断源 的中断允许控制位构成,从而进行两级中断允 许控制。IE寄存器的各位定义如下:
5.2.2中断控制 IE寄存器
5.2.2中断控制 IE寄存器
EX1(IE.2)——外中断1的中断允许控 制位。中断总允许时,EX1=0,禁止外中 断1中断;EX1=1,允许外中断1中断。 ET1(IE.3)——定时器T1的中断允许控 制位。中断总允许时,EX1=0,禁止T1中 断;ET1=1,允许T1中断。
5.2.2中断控制 5.2.2中断控制 IE寄存器
5.2.1中断源和中断标志
当MCS-51系列单片机的外中断源以脉冲方式触 发时,负脉冲有效。CPU在一个机器周期采样到 INT0(或者 INT1 )引脚上为高电平,在接下 来的一个机器周期采样到INT0(或者INT1)引 脚上是低电平,即出现了下降沿的跳变(负脉 冲)时,就认为是外中断0(或者外中断1)的 一个有效的中断请求信号。因为两次检测的间 隔时间为一个机器周期,负脉冲对应的高低电 平持续时间都应至少维持一个机器周期,从而 保证CPU能够检测到电平的跳变。
大连理工大学出版社
第5章 中断
当断不断必受其乱
第5章 中断系统
5.1 概述 MCS-51系列单片机的中断系统 5.2 MCS-51系列单片机的中断系统 5.3 中断程序设计方法
第5 章
中断系统
中断控制是单片机最重要的技术之一, 实时控制及人机交互等应用都是通过中 断实现的。 本章主要介绍中断的基本概念、MCS-51 系列单片机单片机的中断机制及其简单 应用。
5.2.2中断控制 5.2.2中断控制
1.中断允许 MCS-51系列单片机中断系统通过中断允许控制 寄存器IE实现开中断和关中断的功能。 (1)IE寄存器 IE寄存器由一个中断允许总控制位和各中断源 的中断允许控制位构成,从而进行两级中断允 许控制。IE寄存器的各位定义如下:
5.2.2中断控制 IE寄存器
5.2.2中断控制 IE寄存器
EX1(IE.2)——外中断1的中断允许控 制位。中断总允许时,EX1=0,禁止外中 断1中断;EX1=1,允许外中断1中断。 ET1(IE.3)——定时器T1的中断允许控 制位。中断总允许时,EX1=0,禁止T1中 断;ET1=1,允许T1中断。
5.2.2中断控制 5.2.2中断控制 IE寄存器
5.2.1中断源和中断标志
当MCS-51系列单片机的外中断源以脉冲方式触 发时,负脉冲有效。CPU在一个机器周期采样到 INT0(或者 INT1 )引脚上为高电平,在接下 来的一个机器周期采样到INT0(或者INT1)引 脚上是低电平,即出现了下降沿的跳变(负脉 冲)时,就认为是外中断0(或者外中断1)的 一个有效的中断请求信号。因为两次检测的间 隔时间为一个机器周期,负脉冲对应的高低电 平持续时间都应至少维持一个机器周期,从而 保证CPU能够检测到电平的跳变。
图文51单片机超详细教程PPT(绝对值)

51单片机概述
单片机定义与发展
定义
单片机(Microcontroller Unit,MCU)是一种集成电路芯片,将微处理器、 存储器、I/O接口等集成在一个芯片上,构成完整的计算机系统。
发展历程
从20世纪70年代的第一代4位单片机,到80年代的8位单片机,再到90年代以 后的16位、32位高性能单片机,单片机的性能和功能不断提升。
电源电路
采用稳定的直流电源供电,设计过流 过压保护电路。
输入/输出电路
根据具体需求设计相应的输入/输出电 路,如模拟量输入电路、数字量输入/ 输出电路等。
硬件电路设计思路及关键器件选型建议
• 通信接口电路:根据所选的无线通信模块设计相应的通信接口 电路,如Wi-Fi模块接口电路、蓝牙模块接口电路等。
06
串行通信原理及实现方法
串行通信基本概念和协议
串行通信定义
01
串行通信是一种异步通信协议,数据在传输过程中按位依次进
行。
串行通信协议
02
包括起始位、数据位、校验位和停止位,确保数据传输的准确
性和可靠性。
波特率与数据传输速率
03
波特率指每秒传输的位数,数据传输速率指每秒传输的字节数。
51单片机串行接口结构特点
PUSH和POP指令
用于将程序存储器中的数据传送到 累加器A中。
MOVC指令
用于将外部RAM中的数据传送到 累加器A中,或将累加器A中的数 据传送到外部RAM中。
MOVX指令
用于将数据压入堆栈或从堆栈中弹 出数据。
算术运算类指令详解
ADD和ADDC指令
用于将两个字节的数据相加,结果 存放在累加器A中。其中ADDC指 令还考虑进位标志位C的状态。
单片机定义与发展
定义
单片机(Microcontroller Unit,MCU)是一种集成电路芯片,将微处理器、 存储器、I/O接口等集成在一个芯片上,构成完整的计算机系统。
发展历程
从20世纪70年代的第一代4位单片机,到80年代的8位单片机,再到90年代以 后的16位、32位高性能单片机,单片机的性能和功能不断提升。
电源电路
采用稳定的直流电源供电,设计过流 过压保护电路。
输入/输出电路
根据具体需求设计相应的输入/输出电 路,如模拟量输入电路、数字量输入/ 输出电路等。
硬件电路设计思路及关键器件选型建议
• 通信接口电路:根据所选的无线通信模块设计相应的通信接口 电路,如Wi-Fi模块接口电路、蓝牙模块接口电路等。
06
串行通信原理及实现方法
串行通信基本概念和协议
串行通信定义
01
串行通信是一种异步通信协议,数据在传输过程中按位依次进
行。
串行通信协议
02
包括起始位、数据位、校验位和停止位,确保数据传输的准确
性和可靠性。
波特率与数据传输速率
03
波特率指每秒传输的位数,数据传输速率指每秒传输的字节数。
51单片机串行接口结构特点
PUSH和POP指令
用于将程序存储器中的数据传送到 累加器A中。
MOVC指令
用于将外部RAM中的数据传送到 累加器A中,或将累加器A中的数 据传送到外部RAM中。
MOVX指令
用于将数据压入堆栈或从堆栈中弹 出数据。
算术运算类指令详解
ADD和ADDC指令
用于将两个字节的数据相加,结果 存放在累加器A中。其中ADDC指 令还考虑进位标志位C的状态。
单片机原理及接口技术 ppt课件

单片机原理及接口技术 PPT课件
五、中断服务
• 对事件的整个处理过程,称为中断 服务(或中断处理)。
单片机原理及接口技术 PPT课件
六、中断返回
• 中断处理完毕,在返回到原来被中止的 地方,称为中断返回
单片机原理及接口技术 PPT课件
七、中断方式的特点
• 1、中断方式消除了CPU在查询方式中的等待现象, 大大提高了CPU的工作效率。
②ES—串行口中断允许位。
ES=0,禁止串行口中断;
ES=1,允许串行口中断。
③ET1—定时器/计数器T1的溢出中断允许位。
ET1=0,禁止T1中断;
ET1=1,允许T1中断。
④EX1—外部中断1的溢出中断允许位。
EX1=0,禁止外部中断1中断; EX1=1,允许外部中断1中断。
⑤ET0—定时器/计数器T0的溢出中断允许位。
单片机原理及接口技术 PPT课件
1、89C51/S51的中断优先级
• 89C51/S51有两个中断优先级。 • 每个中断请求源均可编程为高优先级中断或低优先级
中断。 • 中断系统中有两个不可寻址的“优先级生效”触发器,
分别指出CPU正在执行的高、低优先级的中断服务程 序。当其为1时则分别屏蔽所有的中断请求。
单片机原理及接口技术 PPT课件
一、89C51/S51中断系统的五个中断源
1、INT0——外部中断0请求,低电平有效。通过P3.2引脚输入。 2、INT1——外部中断1请求,低电平有效。通过P3.3引脚输入。 3、T0——定时器/计数器0溢出中断请求。 4、T1——定时器/计数器1溢出中断请求。 5、TX/RX——串行口中断请求。当串行口完成一帧数据的发送或 接收时,便请求中断。
• 因此,CPU可以使多个外设同时工作,并 分时为各外设提供服务,从而提高了CPU 的利用率和输入和输出的速度。
五、中断服务
• 对事件的整个处理过程,称为中断 服务(或中断处理)。
单片机原理及接口技术 PPT课件
六、中断返回
• 中断处理完毕,在返回到原来被中止的 地方,称为中断返回
单片机原理及接口技术 PPT课件
七、中断方式的特点
• 1、中断方式消除了CPU在查询方式中的等待现象, 大大提高了CPU的工作效率。
②ES—串行口中断允许位。
ES=0,禁止串行口中断;
ES=1,允许串行口中断。
③ET1—定时器/计数器T1的溢出中断允许位。
ET1=0,禁止T1中断;
ET1=1,允许T1中断。
④EX1—外部中断1的溢出中断允许位。
EX1=0,禁止外部中断1中断; EX1=1,允许外部中断1中断。
⑤ET0—定时器/计数器T0的溢出中断允许位。
单片机原理及接口技术 PPT课件
1、89C51/S51的中断优先级
• 89C51/S51有两个中断优先级。 • 每个中断请求源均可编程为高优先级中断或低优先级
中断。 • 中断系统中有两个不可寻址的“优先级生效”触发器,
分别指出CPU正在执行的高、低优先级的中断服务程 序。当其为1时则分别屏蔽所有的中断请求。
单片机原理及接口技术 PPT课件
一、89C51/S51中断系统的五个中断源
1、INT0——外部中断0请求,低电平有效。通过P3.2引脚输入。 2、INT1——外部中断1请求,低电平有效。通过P3.3引脚输入。 3、T0——定时器/计数器0溢出中断请求。 4、T1——定时器/计数器1溢出中断请求。 5、TX/RX——串行口中断请求。当串行口完成一帧数据的发送或 接收时,便请求中断。
• 因此,CPU可以使多个外设同时工作,并 分时为各外设提供服务,从而提高了CPU 的利用率和输入和输出的速度。
《单片机原理与接口技术》第7章 串行接口

D7 PCON SMOD D6 D5 D4 D3 GF0 D2 GF1 D1 PD D0 IDL
PCON寄存器的D7位为SMOD,称为波特率倍增位。即当SMOD=1时,波 特率加倍; 当SMOD=0时,波特率不加倍。 通过软件可设置SMOD=0或SMOD=1。因为PCON无位寻址功能,所以, 要想改变SMOD的值,可通过相应指令来完成: ANL ORL MOV PCON,#7FH PCON,#80H PCON,#00H ;使SMOD=0 ;使SMOD=1 ;使SMOD=0
高等职业教育 计算机类课程规划教材
大连理工大学出版社
第7章
7.1 7.2 7.3 7.4
串行接口
串行通信的基本概念 MCS-51 单片机串行接口及控制寄存器 MCSMCSMCS-51 单片机串行口的工作方式 串行口的应用
7.1 串行通信的基本概念
7.1.1 数据通信的概念 计算机的CPU与外部设备之间、计算机与计算机之间的信息交换称 为数据通信。 1.并行通信 1.并行通信 并行通信是数据的各位同时进行传送(发送或接收)的通信方式。 其优点是数据传送速度快; 缺点是数据有多少位,就需要多少根传送线。 2.串行通信 2.串行通信 串行通信是数据的各位一位一位顺序传送的通信方式。
7.3
7.3.1 方式0 方式0
MCS-51单片机串行口的工作方式 MCS-51单片机串行口的工作方式
串行口工作于方式0下,串行口为8位同步移位寄存器输入/输出口, 其波特率固定为fosc/12。
数据由RXD(P3.0)端输入或输出,同步移位脉冲由TXD(P3.1)端 输出,发送、接收的是 8位数据。不设起始位和停止位,低位在前,高 位在后。其帧格式为:
起始0 D0 D1 D2 D3 D4 D5 D6 D7 TB8/RB8 停止1
PCON寄存器的D7位为SMOD,称为波特率倍增位。即当SMOD=1时,波 特率加倍; 当SMOD=0时,波特率不加倍。 通过软件可设置SMOD=0或SMOD=1。因为PCON无位寻址功能,所以, 要想改变SMOD的值,可通过相应指令来完成: ANL ORL MOV PCON,#7FH PCON,#80H PCON,#00H ;使SMOD=0 ;使SMOD=1 ;使SMOD=0
高等职业教育 计算机类课程规划教材
大连理工大学出版社
第7章
7.1 7.2 7.3 7.4
串行接口
串行通信的基本概念 MCS-51 单片机串行接口及控制寄存器 MCSMCSMCS-51 单片机串行口的工作方式 串行口的应用
7.1 串行通信的基本概念
7.1.1 数据通信的概念 计算机的CPU与外部设备之间、计算机与计算机之间的信息交换称 为数据通信。 1.并行通信 1.并行通信 并行通信是数据的各位同时进行传送(发送或接收)的通信方式。 其优点是数据传送速度快; 缺点是数据有多少位,就需要多少根传送线。 2.串行通信 2.串行通信 串行通信是数据的各位一位一位顺序传送的通信方式。
7.3
7.3.1 方式0 方式0
MCS-51单片机串行口的工作方式 MCS-51单片机串行口的工作方式
串行口工作于方式0下,串行口为8位同步移位寄存器输入/输出口, 其波特率固定为fosc/12。
数据由RXD(P3.0)端输入或输出,同步移位脉冲由TXD(P3.1)端 输出,发送、接收的是 8位数据。不设起始位和停止位,低位在前,高 位在后。其帧格式为:
起始0 D0 D1 D2 D3 D4 D5 D6 D7 TB8/RB8 停止1
《单片机原理与技术》课件第7章-中断

1.定时器/计数器控制寄存器TCON
位7
位6
位5
位4
位3
位2
位1
位0
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
IT0:外部中断INT0触发方式选择 位。可由用户用软件选择。 • IT0=1:设定外部中断引脚信号为下降 沿触发方式。 •
IT1:外部中断INT1触发方式选择 位,其功能类似于IT0。 • IE0:外部中断INT0触发有效标志 位。 • IE1:外部中断INT1触发有效标志 位,其功能类似于IE0。 •
•
定时器0与定时器1标志为TF0与TF1, 在定时器溢出周期的S5P2设置。然后其值 在下一周期由电路查询。然而,定时器2标 志TF2是在S2P2设置且在定时器溢出的同 一周期内被查询。 Nhomakorabea•
若请求有效且响应的条件正确,至请 求的服务例程的硬件子例程调用将是下一 条要执行的指令。CALL自己需要两个周期。 因此,在外部中断请求的激活与服务例程 的第一条指令的执行开始之间,至少需要3 个完整的机器周期。图7-9所示为中断响应 时序。
图7-4 中断响应、服务及返回流程图
7.3 80C51中的中断结构
7.3.1 中断启用
图7-5 MCS-51中断源
图7-6 80C51中的IE(中断启用)寄存器
7.3.2
中断优先权
图7-7 80C51中的IP(中断优先级)寄存器
7.3.3
•
中断如何处理
在操作中,所有中断标志在每个机器 周期的S5P2期间被采样。在下一个机器周 期期间查询采样。若找到一启用的中断的 标志已设置,中断系统生成一LCALL至在 程序存储器中的适当单元,至中断服务例 程的LCALL的生成,由以下3个条件中的任 一个阻断:
单片机原理及接口技术 第七章
7.6.2 中断返回
在中断服务子程序的最后要安排 一条中断返回指令IRET,执行该指令, 系统自动将堆栈内保存的 IP/EIP和CS 值弹出,从而恢复主程序断点处的地 址值,同时还自动恢复标志寄存器FR 或EFR的内容,使CPU转到被中断的程 序中继续执行。
7.6.4 中断请求的撤除
①若ITO (ITl) =0,外中断为电平触发方式。单片机在每一个机器周期的S5P2期间采样中断输入信号INTO (INT1)的状态,若为低电平,即可使TCON寄存器中的中断请求标志位IEO (IEl)置位,若满足响应条件就能得 以及时响应。由于外中断源在每个机器周期被采样一次,所以输入的低电平至少必须保持12个振荡周期,以保 证能被采样到。而一旦CPU响应中断,进入中断服务程序时,IEO (IEl)会被CPU自动删除,但由于中断系统没有 对外的中断应答信号,即中断响应后没有信号输出去通知外设结束中断申请,所以,设计人员如果没有措施来 撤除低电平信号,则在下一个机器周期CPU检测外中断申请时又会发现有低电平信号而将IEO (IEl)重新置位。
外部中断是由外部原因引起的,共有两个中断源,及外部中断0和外部中断1,相应的中断 请求信号输入端是INT0和INT1。 外部中断INT0和INT1有两种触发方式,即电触发方式和脉冲触发方式。
7.4.2 定时中断类
定时中断发生在单片机的内部,也有两个中断源,即为定时/计数器0溢出中断和定时/计 数器1溢出中断。
7.4 中断源类型
中断源,中断是指由于某种事件的发生(硬件或者软件的),计算机暂停执行当前的程序, 转而执行另一程序,以处理发生的事件,处理完毕后又返回原程序继续作业的过程。中断是 处理器一种工作状态的描述。我们把引起中断的原因,或者能够发出中断请求信号的来源统 称为中断源。
单片机结构(共46张PPT)
MCS-51单片机的结构原理
8051是MCS-51系列单片机的典型产品, 我们以这一代表性的机型进行系统的讲 解。
➢ 内部结构
➢ 外部引脚 ➢ 工作时序
➢ 实例分析
第1页,共46页。
典型单片机结构
T0 T1
时钟电路 ROM
内部总线 CPU
RAM
定时/计数器
并行接口
串行接口
中断系统
中央处理器 数据存储器(RAM)
输入输出引脚
P1.0
➢ P0:P0.1~P0.7
P1.1
➢ 漏极开路双向I/O
P1.2 P1.3
➢ 一般为数据总线口
P1.4
➢ P1:P1.1~P1.7
P1.5 P1.6
➢ 拟双向I/O通道
➢ P2:P2.1~P2.7
P1.7 RST
RXD/P3.0
➢ 拟双向I/O通道
TXD/P3.1 INT0/P3.2
P3口的第二功能表
I/O口
第二功能
注释
2个定时器T0、T1溢3,.0 然后从中间往两R头X逐D 个灭,周而复始 为1时:负边沿触发中断请求;
串行口数据接收端
分别由8位寄存器TH0、TL0 和 TH1、TL1组成。
else return(0);
28
14
27
15
26
16
25
17
24
18
23
19
22
20
21
第10页,共46页。
V CC P0.0/AD 0 P0.1/AD 1 P0.2/AD 2 P0.3/AD 3 P0.4/AD 4 P0.5/AD 5 P0.6/AD 6 P0.7/AD 7 EA/V PP ALE/PROG PSEN P2.7/A 15 P2.6/A 14 P2.5/A 13 P2.4/A 12 P2.3/A 11 P2.2/A 10 P2.1/A 9 P2.0/A 8
8051是MCS-51系列单片机的典型产品, 我们以这一代表性的机型进行系统的讲 解。
➢ 内部结构
➢ 外部引脚 ➢ 工作时序
➢ 实例分析
第1页,共46页。
典型单片机结构
T0 T1
时钟电路 ROM
内部总线 CPU
RAM
定时/计数器
并行接口
串行接口
中断系统
中央处理器 数据存储器(RAM)
输入输出引脚
P1.0
➢ P0:P0.1~P0.7
P1.1
➢ 漏极开路双向I/O
P1.2 P1.3
➢ 一般为数据总线口
P1.4
➢ P1:P1.1~P1.7
P1.5 P1.6
➢ 拟双向I/O通道
➢ P2:P2.1~P2.7
P1.7 RST
RXD/P3.0
➢ 拟双向I/O通道
TXD/P3.1 INT0/P3.2
P3口的第二功能表
I/O口
第二功能
注释
2个定时器T0、T1溢3,.0 然后从中间往两R头X逐D 个灭,周而复始 为1时:负边沿触发中断请求;
串行口数据接收端
分别由8位寄存器TH0、TL0 和 TH1、TL1组成。
else return(0);
28
14
27
15
26
16
25
17
24
18
23
19
22
20
21
第10页,共46页。
V CC P0.0/AD 0 P0.1/AD 1 P0.2/AD 2 P0.3/AD 3 P0.4/AD 4 P0.5/AD 5 P0.6/AD 6 P0.7/AD 7 EA/V PP ALE/PROG PSEN P2.7/A 15 P2.6/A 14 P2.5/A 13 P2.4/A 12 P2.3/A 11 P2.2/A 10 P2.1/A 9 P2.0/A 8
51单片机教程PPT课件
§2-1 MCS-51单片机的组成与结构
8位中央处理单元(CPU) 128B/256B的数据存储器RAM 4KB/8KB的片内ROM/EPROM 4个8位并行I/O口P0-P3 2个定时器/计数器 5个中断源 1个全双工的UART(通用异步 接收、发送器) 片内振荡与时钟产生电路
1、中央处理单元 CPU(8位) 用于数据处理、位操作(位测试、置位、复位)
“微控制器”的称谓更能反应单片机的本质。
1.2.2 单片机产品近况
◆ 80C51系列单片机产品繁多,主流地位已 经形成,近年来推出的与80C51兼容的主要产 品有:
﹡ATMEL公司融入Flash存储器技术的AT89系列; ﹡Philips公司的80C51、80C552系列;
* 深圳宏晶科技有限公司的 STC89C/S系列 ;
◆性能完善提高阶段
1980年,Intel公司推出了MCS-51系列单片 机:8位CPU、4K字节ROM、128字节RAM、 4个8位并口、1个全双工串行口、2个16位定 时/计数器。寻址范围64K,并有控制功能较 强的布尔处理器。☺
特点是:结构体系完善,性能已大大提高, 面向控制的特点进一步突出。现在,MCS-51 已成为公认的单片机经典机种 。
51单片机原理及应用
• 第一讲 • 第二讲 • 第三讲 • 第四讲 • 第五讲
单片机结构及原理 中断系统 定时/计数器 串口通信 工具软件介绍、流水灯实验
51单片机原理及应用
• 什么是单片机 • 单片机能做什么
◆单片机
在一片集成电路芯片上集成微处理器、存 储器、I/O接口电路,从而构成了单芯片微 型计算机,即单片机。
◆微控制器化阶段 1982年,Intel推出MCS-96系列单片机。 芯片内集成:16位CPU、8K字节ROM、232 字节RAM、5个8位并口、1个全双工串行口、2 个16位定时/计数器。寻址范围64K。片上还有8 路10位ADC、1路PWM输出及高速I/O部件等。
单片机原理及接口技术 第3版课件(梅丽凤)第7章
MOV TH1,#0D8H;赋初值 MOV TL1,#0F0H MOV IE,#88H ;CPU开中断,TT1开中断 SETB TR1 ;启动T1工作 MOV 60H,#100;赋毫秒计数初值 MOV 61H,#60 ;赋秒计数初值 CLR 4FH ;清标志位 TT:JNB 4FH,TT ;等1min时间到 CLR 4FH ;1min到,清标志位 CPL P1.0 ;输出反相 AJMP TT ;反复循环 END
ORG 0030H ;主程序初始化 START:MOV SP,#60H ;置堆栈指针 SETB IT0 ;置边沿触发方式 MOV IP,#01H ;置为高优先级 MOV IE,#81H ;CPU开中断、开中断 MOV 30H,#00H ;里程计数器单元清0 MOV 31H,#00H MOV 32H,#00H LJMP MAIN ;转主程序执行,并等待中断 ORG 0100H ;中断程序,中断一次,里程加2 m INT:PUSH ACC ;保护现场 PUSH PSW MOV A,30H ;读里程计数器低8位 ADD A,#02 ;低8位计数器加2m(运转一圈) MOV 30H,A ;回存
【例7-3】 出租车计价器的计程方法是:车轮 每运转一圈产生一个负脉冲,从外中断 (P3.2)引脚输入,行使里程为轮胎周长× 运转圈数。假设轮胎周长为2m,试编程实时 计算出租车行使里程(单位:米),数据存 放到32H、31H、30H单元中。 编程: ORG 0000H ;上电、复位入口地址 L JMP START ;转向主程序初始化 ORG 0003H ;中断入口地址 LJMP INT ;转向中断服务程序
图7-4 中断处理过程流程图
7.3.4 中断请求的撤除
响应某中断请求后,其中断请求标志位应及时清除,否则 会引起另一次中断。各标志位清除方法不一样。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7. 4. 3 中断返回
在中断服务子程序的最后必须用“RETI”指令 RETI指令作用有二: 1、子程序返回; 2、清除中断服务标志,即给“优先级生效”触发 器清0。
MCS51对中断请求的撤除
• 一旦中断得到响应 CPU必须把它的响应标志位复位成0, 否则会重复响应。 • 1 对于定时器中断 ,得到响应后TE0 TF1自动清零 ,用 户不用干涉。 • 2 对于串行中断 ,不能自动撤除 ,用户在串行响应程序 中 CLR TI ; CLR RI • 3 外部中断 对于负边沿触发模式,IE0 和IE1 是靠2次检验触发电平状 态, CPU响应中断后自动复位IE0和IE1 对于低电平触发, 需要另外加外电路 和在中断服务程序开 始时用软件撤除
7. 3 8051中断系统结构及中断控制
7. 3. 0 8051中断系统结构
8051单片机中断系统的组成: 由五个中断源、分成两个优先级、四个中断控制寄存器 构成。
1、五个中断源: 2个外部、2个定时器/计数器、1个串行通信中断(见 书) 2、四个中断控制寄存器(标志、允许、优先级): 中断控制寄存器IE、中断优先级寄存器IP、定时器/计 数器控制寄存器TCON(6位)、串行通信寄存器SCON (2位),控制中断类型、中断的允许与禁止、中断的优 先级
7.4 中断处理过程
7. 4. 2 中断处理 一、含有中断服务程序的程序结构
ORG 0000H START:LJMP MAIN LJMP INTEX0 ORG 000BH LJMP INTT0 ORG 0013H LJMP INTEX1 ORG 001BH LJMP INTT1 ORG 0023H LJMP INTS ORG 0030H MAIN: …… : INTEX0: …… : : INTT0: …… : : INTEX1: …… : : INTT1: …… : : INTS: …… : :
优先级的要点
• 51单片机的中断可嵌套,但一般至多支持二级嵌套。 • 51单片机的默认(此时的IP寄存器不做设置)中断优先 级为: 外部中断0 > 定时/计数器0 > 外部中断1 > 定时/计 数器1 > 串行中断; 但这种优先级只是逻辑上的优先级, 当同时有几种中断到达时,高优先级中断会先得到服务。 这种优先级实际上是中断同时到达的情况下,谁先得到服 务的优先级,而不是可提供中断嵌套能力的优先级。这种 优先级被称为逻辑优先级。 例如:当计数器0中断和外部 中断1(优先级 计数器0中断>外部中断1)同时到达时, 会进入计时器0的中断服务函数;但是在外部中断1的中断 服务函数正在服务的情况下,这时候任何中断都是打断不 了它的,包括逻辑优先级比它高的外部中断0计数器0中断。
7. 3 8051中断系统结构及中断控制
• MCS-51中断系统的两级嵌套
7. 3 8051中断系统结构及中断控制
例7-2 假设某单片机系统片外中断为高优先级,片 内中断为低优先级。试设置IP的值。 法一:用字节操作指令 MOV IP,#05H 或 MOV 0B8H,#05H 法二:用位操作指令 SETB PX0 SETB PX1 CLR PS CLR PT0 CLR PT1
7. 3 8051中断系统结构及中断控制
IE1:外部中断1的中断请求标志,外部有中断请求 信号时置1,向CPU发出中断请求,响应后自 动清0。 IE0:外部中断0的中断请求标志,含义同IE1 。 IT1:外部中断1的触发方式控制位: IT1=0:低电平触发; IT1=1:下降沿触发。 IT0:外部中断0的触发方式控制位,含义同IT1 。
7. 3 8051中断系统结构及中断控制
2、SCON中的中断标志(2个)
TI:串行口发送中断请求标志,串行口发送完一帧数 据后置1,向CPU发出中断请求,响应后不自动清0, 需软件编程清0。 RI:串行口接收中断请求标志,串行口接收到一帧数 据后置1,向CPU发出中断请求,响应后不自动清0, 需软件编程清0。
• 要实现真正的嵌套形式的优先级,也即高 优先级中断服务可以打断低优先级中断服 务的情况,必须通过设置中断优先级寄存 器IP来实现;这种优先级被称为物理优先级。 例如:设置IP = 0x10,即设置串口中断为 最高优先级,则串口中断可以打断任何其 他的中断服务函数实现嵌套,且只有串口 中断能打断其他中断的服务函数。若串口 中断没有触发,则其他几个中断之间还是 保持逻辑优先级,相互之间无法嵌套
7. 3 8051中断系统结构及中断控制
中断优先级次序: (1)高优先级中断能够打断低优先级中断服务程序实 现中断嵌套。 (2)同级优先级的次序
相同优先级中断不能够打断其中断服务程序实现中断嵌套。
80C51中断优先级的控制原则是: ⑴低优先级中断请求不能打断高优先级的中断服务; 反之,则可以,从而实现中断嵌套; ⑵如果一个中断请求已被响应,则同级的其它中断 响应被禁止; ⑶如果同级的多个中断请求同时出现,则按CPU查 询次序确定哪个中断请求被响应。从高到低依次为, 外部中断0→定时中断0→外部中断1→定时中断1→串 行中断。
中断源 (串行中断)
当串行接口发送了一帧信息,便由硬件置TI=1, 向CPU申请中断。
当串行接口接收了一帧信息,便由硬件置 RI=1,向CPU申请中断。 CPU响应中断后,必须用软件清除TI和RI
7. 3 8051中断系统结构及中断控制
IE
7. 3 8051中断系统结构及中断控制
7. 3. 1 8051中断源 8051有5个中断源: 1、INT0----外部中断0,从P3.2引脚输入; 2、INT1----外部中断1,从P3.3引脚输入; 3、T0----定时器/计数器0溢出中断,内中断; 4、T1----定时器/计数器1溢出中断,内中断; 5、TX/RX----串行口中断,内中断。
7.4 中断处理过程
二、中断服务程序的结构 (四部分) 1、保护现场; 2、处理中断的程序; 3、恢复现场; 4、中断返回:RETI 三、编写中断服务程序应注意 的几点 1、中断程序入口处的处理; 2、程序中可以禁止高级中断; 3、在保护和恢复现场时可 关闭CPU中断,以免造成混 乱。
7.4 中断处理过程
7.4 中断处理过程
• 中断源及其对应的向量地址
7.4 中断处理过程
三、中断响应时间(3~8个机器周期) 1、基本响应时间(3个机器周期) (1)查询中断标志:1个机器周期; (2)转去执行中断服务程序:2个机器周期。 2、额外的处理时间(0 ~5 个机器周期) RETI指令:2个机器周期; MUL或DIV指令:4个机器周期。
7.5 外部中断扩展方法
7. 5. 2 中断加查询扩展外 部中断源 一、电路及工作原理 各个外中断经过“线 或”接入到INT0或INT1上,
高产生中断请求。
P1.0~P1.3用于查询。
7. 3 8051中断系统结构及中断控制
• 二许中断 ,为0时禁止中断。 EA:中断允许总控制位。 EA=0,CPU禁止中断,EA=1,CPU开放中断。 ES:串行口中断允许位 ET1:定时器/计数器1溢出中断允许位 ET0:定时器/计数器0溢出中断允许位 EX1:外部中断1的中断允许位 EX0:外部中断0的中断允许位
第7章 MCS-51 中断系统
• • • • • • • 主要内容 1、微机的输入/输出方式 2、中断的概念 3、 8051中断系统结构及中断控制 4、中断处理过程 5、外部中断扩展方法 6、中断程序举例
7.1 微机的输入/输出方式
• • • • 一、无条件传送方式 二、查询传送方式 三、直接存储器存取(DMA)方式 四、中断传送方式
中断源 (内部中断)
80C51单片机芯片内部有两个定时/计数器,当计 数结构发生计数溢出时,即表明定时器或计数 器已满,这时就以计数溢出信号作为中断请求, 去置位TF0或TF1,作为单片机接受中断请求 的标志。这种中断请求是在单片机内部发生的, 因此无需在芯片上设置引入端。CPU响应中断 后,由硬件自动清零TF0或TF1。
7.2 中断的概念
中断源在需要时可以向CPU提出“中断请求”。
“中断请求”通常是一种电信号,CPU一旦对 这个电信号进行检测和响应,便可自动转入该 中断源的中断服务程序执行,并在执行完成后 自动返回原程序继续执行。
7.2 中断的概念
中断:CPU挂起正在执行的程序而转去处理特殊的 事件的操作。 采用中断技术可以实现以下功能: • 1、分时操作 • 2、实时处理 • 3、故障处理 作用 • 1 提高CPU工作效率 • 2 可以提高实时数据的处理时效
7.4 中断处理过程
二、中断响应操作过程 1、查询中断源 (1)将中断请求锁存在各自的中断标志位上:在S5P2期间 进行; (2)查询中断标志:在S6期间进行;按IP和中断优先级排 队 (3)处理中断:在下一个S1期间。 2、置中断处理标志 关闭中断。 3、转入中断服务程序 (1)保护断点:PC值进栈(先送低8位,再送高8位) (2)转去执行中断服务程序:把中断入口地址装入PC并执 行,使用的是LCALL指令。
中断初始化
• 1 开响应中断源的中断 • 2 设定所用中断源的优先级 • 3 如为外部中断,还要设定 低电平触发还 是负边沿触发 • (见书213)
7.5 外部中断扩展方法
8051的外部中断源仅有两个,需要时可以扩展。
7. 5. 1 利用定时器扩展外部中断源 方法: (1)把8051的定时器/计数器做计数器使用; (2)计数初值设为FFFFH(16位计数器); (3)外部中断请求信号从P3.4或P3.5输入。 当外部中断请求信号有效时,使计数器加1而 溢出,向CPU发出中断请求。 • 必须要对定时器进行初始化 思考:为什么要初值 设置成FFFFH
7.4 中断处理过程
中断处理过程分为三个阶段:响应、处理、返回。 7. 4. 1 中断响应 一、中断响应条件(6条) (1)有中断请求; (2)CPU开放中断,即EA=1; (3)对应的中断源允许中断; (4)无同级或更高级中断正在服务; (5)当前的指令周期已经结束; (6)执行了指令RETI或访问IE、IP后又执行了一 条指令。 CPU在每个机器周期的S5P2期间对个中断源 采样
在中断服务子程序的最后必须用“RETI”指令 RETI指令作用有二: 1、子程序返回; 2、清除中断服务标志,即给“优先级生效”触发 器清0。
MCS51对中断请求的撤除
• 一旦中断得到响应 CPU必须把它的响应标志位复位成0, 否则会重复响应。 • 1 对于定时器中断 ,得到响应后TE0 TF1自动清零 ,用 户不用干涉。 • 2 对于串行中断 ,不能自动撤除 ,用户在串行响应程序 中 CLR TI ; CLR RI • 3 外部中断 对于负边沿触发模式,IE0 和IE1 是靠2次检验触发电平状 态, CPU响应中断后自动复位IE0和IE1 对于低电平触发, 需要另外加外电路 和在中断服务程序开 始时用软件撤除
7. 3 8051中断系统结构及中断控制
7. 3. 0 8051中断系统结构
8051单片机中断系统的组成: 由五个中断源、分成两个优先级、四个中断控制寄存器 构成。
1、五个中断源: 2个外部、2个定时器/计数器、1个串行通信中断(见 书) 2、四个中断控制寄存器(标志、允许、优先级): 中断控制寄存器IE、中断优先级寄存器IP、定时器/计 数器控制寄存器TCON(6位)、串行通信寄存器SCON (2位),控制中断类型、中断的允许与禁止、中断的优 先级
7.4 中断处理过程
7. 4. 2 中断处理 一、含有中断服务程序的程序结构
ORG 0000H START:LJMP MAIN LJMP INTEX0 ORG 000BH LJMP INTT0 ORG 0013H LJMP INTEX1 ORG 001BH LJMP INTT1 ORG 0023H LJMP INTS ORG 0030H MAIN: …… : INTEX0: …… : : INTT0: …… : : INTEX1: …… : : INTT1: …… : : INTS: …… : :
优先级的要点
• 51单片机的中断可嵌套,但一般至多支持二级嵌套。 • 51单片机的默认(此时的IP寄存器不做设置)中断优先 级为: 外部中断0 > 定时/计数器0 > 外部中断1 > 定时/计 数器1 > 串行中断; 但这种优先级只是逻辑上的优先级, 当同时有几种中断到达时,高优先级中断会先得到服务。 这种优先级实际上是中断同时到达的情况下,谁先得到服 务的优先级,而不是可提供中断嵌套能力的优先级。这种 优先级被称为逻辑优先级。 例如:当计数器0中断和外部 中断1(优先级 计数器0中断>外部中断1)同时到达时, 会进入计时器0的中断服务函数;但是在外部中断1的中断 服务函数正在服务的情况下,这时候任何中断都是打断不 了它的,包括逻辑优先级比它高的外部中断0计数器0中断。
7. 3 8051中断系统结构及中断控制
• MCS-51中断系统的两级嵌套
7. 3 8051中断系统结构及中断控制
例7-2 假设某单片机系统片外中断为高优先级,片 内中断为低优先级。试设置IP的值。 法一:用字节操作指令 MOV IP,#05H 或 MOV 0B8H,#05H 法二:用位操作指令 SETB PX0 SETB PX1 CLR PS CLR PT0 CLR PT1
7. 3 8051中断系统结构及中断控制
IE1:外部中断1的中断请求标志,外部有中断请求 信号时置1,向CPU发出中断请求,响应后自 动清0。 IE0:外部中断0的中断请求标志,含义同IE1 。 IT1:外部中断1的触发方式控制位: IT1=0:低电平触发; IT1=1:下降沿触发。 IT0:外部中断0的触发方式控制位,含义同IT1 。
7. 3 8051中断系统结构及中断控制
2、SCON中的中断标志(2个)
TI:串行口发送中断请求标志,串行口发送完一帧数 据后置1,向CPU发出中断请求,响应后不自动清0, 需软件编程清0。 RI:串行口接收中断请求标志,串行口接收到一帧数 据后置1,向CPU发出中断请求,响应后不自动清0, 需软件编程清0。
• 要实现真正的嵌套形式的优先级,也即高 优先级中断服务可以打断低优先级中断服 务的情况,必须通过设置中断优先级寄存 器IP来实现;这种优先级被称为物理优先级。 例如:设置IP = 0x10,即设置串口中断为 最高优先级,则串口中断可以打断任何其 他的中断服务函数实现嵌套,且只有串口 中断能打断其他中断的服务函数。若串口 中断没有触发,则其他几个中断之间还是 保持逻辑优先级,相互之间无法嵌套
7. 3 8051中断系统结构及中断控制
中断优先级次序: (1)高优先级中断能够打断低优先级中断服务程序实 现中断嵌套。 (2)同级优先级的次序
相同优先级中断不能够打断其中断服务程序实现中断嵌套。
80C51中断优先级的控制原则是: ⑴低优先级中断请求不能打断高优先级的中断服务; 反之,则可以,从而实现中断嵌套; ⑵如果一个中断请求已被响应,则同级的其它中断 响应被禁止; ⑶如果同级的多个中断请求同时出现,则按CPU查 询次序确定哪个中断请求被响应。从高到低依次为, 外部中断0→定时中断0→外部中断1→定时中断1→串 行中断。
中断源 (串行中断)
当串行接口发送了一帧信息,便由硬件置TI=1, 向CPU申请中断。
当串行接口接收了一帧信息,便由硬件置 RI=1,向CPU申请中断。 CPU响应中断后,必须用软件清除TI和RI
7. 3 8051中断系统结构及中断控制
IE
7. 3 8051中断系统结构及中断控制
7. 3. 1 8051中断源 8051有5个中断源: 1、INT0----外部中断0,从P3.2引脚输入; 2、INT1----外部中断1,从P3.3引脚输入; 3、T0----定时器/计数器0溢出中断,内中断; 4、T1----定时器/计数器1溢出中断,内中断; 5、TX/RX----串行口中断,内中断。
7.4 中断处理过程
二、中断服务程序的结构 (四部分) 1、保护现场; 2、处理中断的程序; 3、恢复现场; 4、中断返回:RETI 三、编写中断服务程序应注意 的几点 1、中断程序入口处的处理; 2、程序中可以禁止高级中断; 3、在保护和恢复现场时可 关闭CPU中断,以免造成混 乱。
7.4 中断处理过程
7.4 中断处理过程
• 中断源及其对应的向量地址
7.4 中断处理过程
三、中断响应时间(3~8个机器周期) 1、基本响应时间(3个机器周期) (1)查询中断标志:1个机器周期; (2)转去执行中断服务程序:2个机器周期。 2、额外的处理时间(0 ~5 个机器周期) RETI指令:2个机器周期; MUL或DIV指令:4个机器周期。
7.5 外部中断扩展方法
7. 5. 2 中断加查询扩展外 部中断源 一、电路及工作原理 各个外中断经过“线 或”接入到INT0或INT1上,
高产生中断请求。
P1.0~P1.3用于查询。
7. 3 8051中断系统结构及中断控制
• 二许中断 ,为0时禁止中断。 EA:中断允许总控制位。 EA=0,CPU禁止中断,EA=1,CPU开放中断。 ES:串行口中断允许位 ET1:定时器/计数器1溢出中断允许位 ET0:定时器/计数器0溢出中断允许位 EX1:外部中断1的中断允许位 EX0:外部中断0的中断允许位
第7章 MCS-51 中断系统
• • • • • • • 主要内容 1、微机的输入/输出方式 2、中断的概念 3、 8051中断系统结构及中断控制 4、中断处理过程 5、外部中断扩展方法 6、中断程序举例
7.1 微机的输入/输出方式
• • • • 一、无条件传送方式 二、查询传送方式 三、直接存储器存取(DMA)方式 四、中断传送方式
中断源 (内部中断)
80C51单片机芯片内部有两个定时/计数器,当计 数结构发生计数溢出时,即表明定时器或计数 器已满,这时就以计数溢出信号作为中断请求, 去置位TF0或TF1,作为单片机接受中断请求 的标志。这种中断请求是在单片机内部发生的, 因此无需在芯片上设置引入端。CPU响应中断 后,由硬件自动清零TF0或TF1。
7.2 中断的概念
中断源在需要时可以向CPU提出“中断请求”。
“中断请求”通常是一种电信号,CPU一旦对 这个电信号进行检测和响应,便可自动转入该 中断源的中断服务程序执行,并在执行完成后 自动返回原程序继续执行。
7.2 中断的概念
中断:CPU挂起正在执行的程序而转去处理特殊的 事件的操作。 采用中断技术可以实现以下功能: • 1、分时操作 • 2、实时处理 • 3、故障处理 作用 • 1 提高CPU工作效率 • 2 可以提高实时数据的处理时效
7.4 中断处理过程
二、中断响应操作过程 1、查询中断源 (1)将中断请求锁存在各自的中断标志位上:在S5P2期间 进行; (2)查询中断标志:在S6期间进行;按IP和中断优先级排 队 (3)处理中断:在下一个S1期间。 2、置中断处理标志 关闭中断。 3、转入中断服务程序 (1)保护断点:PC值进栈(先送低8位,再送高8位) (2)转去执行中断服务程序:把中断入口地址装入PC并执 行,使用的是LCALL指令。
中断初始化
• 1 开响应中断源的中断 • 2 设定所用中断源的优先级 • 3 如为外部中断,还要设定 低电平触发还 是负边沿触发 • (见书213)
7.5 外部中断扩展方法
8051的外部中断源仅有两个,需要时可以扩展。
7. 5. 1 利用定时器扩展外部中断源 方法: (1)把8051的定时器/计数器做计数器使用; (2)计数初值设为FFFFH(16位计数器); (3)外部中断请求信号从P3.4或P3.5输入。 当外部中断请求信号有效时,使计数器加1而 溢出,向CPU发出中断请求。 • 必须要对定时器进行初始化 思考:为什么要初值 设置成FFFFH
7.4 中断处理过程
中断处理过程分为三个阶段:响应、处理、返回。 7. 4. 1 中断响应 一、中断响应条件(6条) (1)有中断请求; (2)CPU开放中断,即EA=1; (3)对应的中断源允许中断; (4)无同级或更高级中断正在服务; (5)当前的指令周期已经结束; (6)执行了指令RETI或访问IE、IP后又执行了一 条指令。 CPU在每个机器周期的S5P2期间对个中断源 采样