当前位置:文档之家› 单片机中断系统和定时计数器

单片机中断系统和定时计数器


4、中断源向量地址
INT0: 0003H T0: 000BH INT1: 0013H T1: 001BH 串行口:0023H
二、中断处理过程
中断处理过程:中断请求、中断响应、中 断服务和中断返回。
1、中断请求
中断源只有在有请求时,CPU才可能响应它,不 同的中断源产生中断请求的方式是不同的 。外部中断
单片机实用教程
第4章 AT89S51单片机中断 系统和定时/计数器
本章主要内容
1、中断概述 2、外部中断的应用 3、定时/计数器 4、键盘接口
一、中断的概述
1、中断概念 单片机的CPU正在处理某个任务时,遇到其它事件请求
(如定时器溢出),暂时停止目前的任务,转去处理请求的 事件,处理完后再回到原来的地方,继续原来的工作,这一 过程称为“中断”,我们把请求的事件称为中断源。
IE0——外部中断INT0的中断请求标志。 IT1——外部中断INT1的触发方式选择位。功能与IT0
类似。
IE1——外部中断INT1的中断请求标志。功能与IE0类 似。
TF0——定时/计数器T0的中断请求标志。 TF1——定时/计数器T1的中断请求标志。
(2)IE——中断允许控制寄存器
IE
D7
D6
计数器是加法计数器,计满时溢出,并产 生溢出标志(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
(3)M1M0——工作方式选择位。 M1M0=00B,方式0——13位的定时/计数器。 M1M0=01B,方式1——16位的定时/计数器。 M1M0=10B,方式2——8位的定时/计数器,初 值自动重装。 M1M0=11B,方式3——两个8位的定时/计数器, 仅适用于T0。
例:在前面做过的循环彩灯电路的基础上, 现在要求:通过一个按键控制,每按一次 彩灯移一位。
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
产生请求是在外中断的引脚上加低电平或下降沿信号, 而定时/计数器中断请求是在内部的计数单元计满溢出 时产生,串行口中断请求是在完成一次发送或接收时 产生。
2、中断响应 (1)条件
中断源的中断已经被允许 ,中断允许标志和总的 中断允许标志EA都被设置为“1”。
CPU此时没有响应同级或高级中断。 CPU正处于执行某一条指令的最后一个机器周期。 (并且不是对IE、IP进行访问的指令或者是中断返回 指令RETI )
;②(SP)→PC7~0,SP-1→SP。 中断返回时完成的操作:
(1)恢复断点地址。 (2)开放同级中断 。
三、外部中断应用的一般步骤
1、硬件 把中断请求信ຫໍສະໝຸດ 加到单片机的中断引脚上2、软件 中断的初始化 工作方式选择 SETB IT0 开中断 SETB EX0 SETB EA 提供中断入口地址 编写具体的中断服务程序。
位地址 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——中断系统总允许控制位 。
D1 D0 M1 M0
高4位控制T1,低4位控制T0 (1)GATE——门控位。GATE一般情况下设置为 0,此时定时/计数器的运行仅受TR0/TR1控制。 (2)C/T——定时/计数选择位。
C/T=0,为定时方式,对内部的机器周期计数。 C/T=1,为计数方式,对引脚上的脉冲信号计数, 负跳变有效。
(2)响应中断时的操作 保护断点地址。 撤除该中断源的请求标志。 关闭同级中断。 将该中断源的入口地址送给PC,程序将
转到该程序的入口地址处运行。
3、中断服务 中断服务就是中断源
请求CPU做的任务,需要 编程者用指令来实现。
4、中断返回 中断返回和子程序的返回类似,需要执行
一条返回指令RETI RETI ;①(SP)→PC15~8,SP-1→SP。
(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,下降沿触发方式 。
SETB IT0 SETB EX0 SETB EA MAIN: LJMP MAIN INEX0P:MOV P1,A
RL A RETI END
一、定时器概述
两个16位的定时/计数器T0和T1。 它们本质上是计数器。在做计数器使用时
计数引脚上的脉冲信号(下降沿),在做定时 器使用时数内部的机器周期 。
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
相关主题