单片机中断系统和定时计数器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计数器是加法计数器,计满时溢出,并产 生溢出标志(TF0、TF1) 。
二、与定时器有关的SFR
1.定时/计数器控制寄存器TCON
TCON D7 D6 D5 D4 D3 D2 D1 D0 位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H 位定义 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT1
IE0——外部中断INT0的中断请求标志。 IT1——外部中断INT1的触发方式选择位。功能与IT0
类似。
IE1——外部中断INT1的中断请求标志。功能与IE0类 似。
TF0——定时/计数器T0的中断请求标志。 TF1——定时/计数器T1的中断请求标志。
(2)IE——中断允许控制寄存器
IE
D7
D6
例:在前面做过的循环彩灯电路的基础上, 现在要求:通过一个按键控制,每按一次 彩灯移一位。
360Ω
+5V
最小系统
P3.2
S +5V 10K
按键信号加到外部中断0的引脚P3.2上,当S不 按下时,P3.2引脚为高电平,按下则为低电平,在 按键的过程中P3.2引脚产生中断请求信号
程序如下:
ORG 0000H LJMP SETUP ORG 0003H MOV P1, A RL A RETI ORG 0030H SETUP:MOV A,#0FEH
;②(SP)→PC7~0,SP-1→SP。 中断返回时完成的操作:
(1)恢复断点地址。 (2)开放同级中断 。
三、外部中断应用的一般步骤
1、硬件 把中断请求信号加到单片机的中断引脚上
2、软件 中断的初始化 工作方式选择 SETB IT0 开中断 SETB EX0 SETB EA 提供中断入口地址 编写具体的中断服务程序。
SETB IT0 SETB EX0 SETB EA MAIN: LJMP MAIN INEX0P:MOV P1,A
RL A RETI END
一、定时器概述
两个16位的定时/计数器T0和T1。 它们本质上是计数器。在做计数器使用时
计数引脚上的脉冲信号(下降沿),在做定时 器使用时数内部的机器周期 。
(3)中断优先级控制寄存器
IP
D7
D6
D5
D4
D3
D2
D1
D0
位地址 —
—
— BCH BBH BAH B9H B8H
位定义 —
—
—
PS PT1 PX1 PT0 PX0
PX0——外部中断INT0中断优先级控制位。 PT0——定时/计数器T0优先级控制位。 PX1——外部中断INT1中断优先级控制位。 PT1——定时/计数器T1优先级控制位。 PS——串行口优先级控制位。
2、MCS-51系列单片机的中断系统
3、与中断系统有关的SFR (1)TCON——中断控制寄存器
TCON D7
D6
D5
D4
D3
D2
D1
D0
位地址 8FH
8DH
8BH 8AH 89H 88H
位定义 TF1
TF0
IE1 IT1 IE0 IT0
IT0——外部中断INT0的触发方式选择位。 IT0=0, 低电平触发方式 ;IT0=1,下降沿触发方式 。
4、中断源向量地址
INT0: 0003H T0: 000BH INT1: 0013H T1: 001BH 串行口:0023H
二、中断处理过程
中断处理过程:中断请求、中断响应、中 断服务和中断返回。
1、中断请求
中断源只有在有请求时,CPU才可能响应它,不 同的中断源产生中断请求的方式是不同的 。外部中断
(3)M1M0——工作方式选择位。 M1M0=00B,方式0——13位的定时/计数器。 M1M0=01B,方式1——16位的定时/计数器。 M1M0=10B,方式2——8位的定时/计数器,初 值自动重装。 M1M0=11B,方式3——两个8位的定时/计数器, 仅适用于T0。
单片机实用教程
第4章 AT89S51单片机中断 系统和定时/计数器
本章主要内容
1、中断概述 2、外部中断的应用 3、定时/计数器 4、键盘接口
一、中断的概述
1、中断概念 单片机的CPU正在处理某个任务时,遇到其它事件请求
(如定时器溢出),暂时停止目前的任务,转去处理请求的 事件,处理完后再回到原来的地方,继续原来的工作,这一 过程称为“中断”,我们把请求的事件称为中断源。
(2)响应中断时的操作 保护断点地址。 撤除该中断源的请求标志。 关闭同级中断。 将该中断源的入口地址送给PC,程序将
转到该程序的入口地址处运行。
3、中断服务 中断服务就是中断源
请求CPU做的任务,需要 编程者用指令来实现。
4、中断返回 中断返回和子程序的返回类似,需要执行
一条返回指令RETI RETI ;①(SP)→PC15~8,SP-1→SP。
D1 D0 M1 M0
高4位控制T1,低4位控制T0 (1)GATE——门控位。GATE一般情况下设置为 0,此时定时/计数器的运行仅受TR0/TR1控制。 (2)C/T——定时/计数选择位。
C/T=0,为定时方式,对内部的机器周期计数。 C/T=1,为计数方式,对引脚上的脉冲信号计数, 负跳变有效。
TR0——定时/计数器T0运行控制位。 TR0=1,启动 T0运行(与TMOD中的GATE位有关), TR0=0,T0停止运行。
TR1——定时/计数器T1运行控制位。功能同TR0。
2、定时/计数器工作方式控制寄存器TMOD
TMOD D7 D6 D5 位定义 GATE C/T M1
D4 D3 D2 M0 GATE C/T
位地址 AFH —
位定义 EA
—
D5百度文库
D4
D3
D2
D1
D0
— ACH ABH AAH A9H A8H
—
ES ET1 EX1 ET0 EX0
EX0——外部中断0中断允许控制位。EX0=1, INT0 被允许(开中断),EX0=0,外部中断0被禁止 (关中断)。
ET0——定时/计数器T0中断允许控制位。
EX1——外部中断INT1中断允许控制位。 ET1——定时/计数器T1中断允许控制位。 ES——串行口中断允许控制位。 EA——中断系统总允许控制位 。
产生请求是在外中断的引脚上加低电平或下降沿信号, 而定时/计数器中断请求是在内部的计数单元计满溢出 时产生,串行口中断请求是在完成一次发送或接收时 产生。
2、中断响应 (1)条件
中断源的中断已经被允许 ,中断允许标志和总的 中断允许标志EA都被设置为“1”。
CPU此时没有响应同级或高级中断。 CPU正处于执行某一条指令的最后一个机器周期。 (并且不是对IE、IP进行访问的指令或者是中断返回 指令RETI )
二、与定时器有关的SFR
1.定时/计数器控制寄存器TCON
TCON D7 D6 D5 D4 D3 D2 D1 D0 位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H 位定义 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT1
IE0——外部中断INT0的中断请求标志。 IT1——外部中断INT1的触发方式选择位。功能与IT0
类似。
IE1——外部中断INT1的中断请求标志。功能与IE0类 似。
TF0——定时/计数器T0的中断请求标志。 TF1——定时/计数器T1的中断请求标志。
(2)IE——中断允许控制寄存器
IE
D7
D6
例:在前面做过的循环彩灯电路的基础上, 现在要求:通过一个按键控制,每按一次 彩灯移一位。
360Ω
+5V
最小系统
P3.2
S +5V 10K
按键信号加到外部中断0的引脚P3.2上,当S不 按下时,P3.2引脚为高电平,按下则为低电平,在 按键的过程中P3.2引脚产生中断请求信号
程序如下:
ORG 0000H LJMP SETUP ORG 0003H MOV P1, A RL A RETI ORG 0030H SETUP:MOV A,#0FEH
;②(SP)→PC7~0,SP-1→SP。 中断返回时完成的操作:
(1)恢复断点地址。 (2)开放同级中断 。
三、外部中断应用的一般步骤
1、硬件 把中断请求信号加到单片机的中断引脚上
2、软件 中断的初始化 工作方式选择 SETB IT0 开中断 SETB EX0 SETB EA 提供中断入口地址 编写具体的中断服务程序。
SETB IT0 SETB EX0 SETB EA MAIN: LJMP MAIN INEX0P:MOV P1,A
RL A RETI END
一、定时器概述
两个16位的定时/计数器T0和T1。 它们本质上是计数器。在做计数器使用时
计数引脚上的脉冲信号(下降沿),在做定时 器使用时数内部的机器周期 。
(3)中断优先级控制寄存器
IP
D7
D6
D5
D4
D3
D2
D1
D0
位地址 —
—
— BCH BBH BAH B9H B8H
位定义 —
—
—
PS PT1 PX1 PT0 PX0
PX0——外部中断INT0中断优先级控制位。 PT0——定时/计数器T0优先级控制位。 PX1——外部中断INT1中断优先级控制位。 PT1——定时/计数器T1优先级控制位。 PS——串行口优先级控制位。
2、MCS-51系列单片机的中断系统
3、与中断系统有关的SFR (1)TCON——中断控制寄存器
TCON D7
D6
D5
D4
D3
D2
D1
D0
位地址 8FH
8DH
8BH 8AH 89H 88H
位定义 TF1
TF0
IE1 IT1 IE0 IT0
IT0——外部中断INT0的触发方式选择位。 IT0=0, 低电平触发方式 ;IT0=1,下降沿触发方式 。
4、中断源向量地址
INT0: 0003H T0: 000BH INT1: 0013H T1: 001BH 串行口:0023H
二、中断处理过程
中断处理过程:中断请求、中断响应、中 断服务和中断返回。
1、中断请求
中断源只有在有请求时,CPU才可能响应它,不 同的中断源产生中断请求的方式是不同的 。外部中断
(3)M1M0——工作方式选择位。 M1M0=00B,方式0——13位的定时/计数器。 M1M0=01B,方式1——16位的定时/计数器。 M1M0=10B,方式2——8位的定时/计数器,初 值自动重装。 M1M0=11B,方式3——两个8位的定时/计数器, 仅适用于T0。
单片机实用教程
第4章 AT89S51单片机中断 系统和定时/计数器
本章主要内容
1、中断概述 2、外部中断的应用 3、定时/计数器 4、键盘接口
一、中断的概述
1、中断概念 单片机的CPU正在处理某个任务时,遇到其它事件请求
(如定时器溢出),暂时停止目前的任务,转去处理请求的 事件,处理完后再回到原来的地方,继续原来的工作,这一 过程称为“中断”,我们把请求的事件称为中断源。
(2)响应中断时的操作 保护断点地址。 撤除该中断源的请求标志。 关闭同级中断。 将该中断源的入口地址送给PC,程序将
转到该程序的入口地址处运行。
3、中断服务 中断服务就是中断源
请求CPU做的任务,需要 编程者用指令来实现。
4、中断返回 中断返回和子程序的返回类似,需要执行
一条返回指令RETI RETI ;①(SP)→PC15~8,SP-1→SP。
D1 D0 M1 M0
高4位控制T1,低4位控制T0 (1)GATE——门控位。GATE一般情况下设置为 0,此时定时/计数器的运行仅受TR0/TR1控制。 (2)C/T——定时/计数选择位。
C/T=0,为定时方式,对内部的机器周期计数。 C/T=1,为计数方式,对引脚上的脉冲信号计数, 负跳变有效。
TR0——定时/计数器T0运行控制位。 TR0=1,启动 T0运行(与TMOD中的GATE位有关), TR0=0,T0停止运行。
TR1——定时/计数器T1运行控制位。功能同TR0。
2、定时/计数器工作方式控制寄存器TMOD
TMOD D7 D6 D5 位定义 GATE C/T M1
D4 D3 D2 M0 GATE C/T
位地址 AFH —
位定义 EA
—
D5百度文库
D4
D3
D2
D1
D0
— ACH ABH AAH A9H A8H
—
ES ET1 EX1 ET0 EX0
EX0——外部中断0中断允许控制位。EX0=1, INT0 被允许(开中断),EX0=0,外部中断0被禁止 (关中断)。
ET0——定时/计数器T0中断允许控制位。
EX1——外部中断INT1中断允许控制位。 ET1——定时/计数器T1中断允许控制位。 ES——串行口中断允许控制位。 EA——中断系统总允许控制位 。
产生请求是在外中断的引脚上加低电平或下降沿信号, 而定时/计数器中断请求是在内部的计数单元计满溢出 时产生,串行口中断请求是在完成一次发送或接收时 产生。
2、中断响应 (1)条件
中断源的中断已经被允许 ,中断允许标志和总的 中断允许标志EA都被设置为“1”。
CPU此时没有响应同级或高级中断。 CPU正处于执行某一条指令的最后一个机器周期。 (并且不是对IE、IP进行访问的指令或者是中断返回 指令RETI )