单片机的定时器中断ppt课件.ppt
单片机的中断系统,中断的定义什么是中断?顾名思义,就是单片机“中断当前的工作”,转而做别的更重要或者更紧急的工作(执行中断服务程序)。那么当前未完成的工作怎么办呢?单片机会在紧要工作完成后,继续做中断前的工作。,如下图所示。对事件的整个处理过程,称为中断处理(或中断服务)。,举个例子: 小强和小明在下象棋。眼看小强快招架不住了,这时小明的GF来了,非要小明陪她逛街买衣服。于是小明同小强商量,先把棋盘封了,等买完衣服后继续战斗。晚上小明和小强回到棋盘前,轻而易举将小强击败。买衣服这段插曲并未改变小明必胜的结局。这就是整个中断过程。我们来看看中断过程是如何发生的:,1、中断请求:小明的GF要他逛街;2、中断响应:小明准备放下棋局陪GF逛街;3、现场保护:先把棋盘封了;4、中断处理:小明陪GF逛街买衣服;5、恢复现场:把棋盘解封;6、 中断返回:继续战斗。,此例中,小明的GF就是“中断源”,如果小明把棋移到密室中下,不让他的GF打扰,就叫“中断屏蔽”。,89c51中断系统的结构,89c51单片机的中断系统有5个中断请求源,两个中断优先级,每一个中断源可以用软件独立地控制为允许中断或关中断状态,每一个中断源的中断级别均可用软件来设置。如下图所示:,51单片机的中断源,响应中断请求的条件 一个中断请求被响应,需满足以下必要条件:(1)IE寄存器中的中断总允许位EA=1。(2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”。(3)该中断源的中断允许位=1,即该中断没有被屏蔽。(4)无同级或更高级中断正在被服务。,1.定时器/计数器的结构及工作原理,加法计数器是计满溢出时才申请中断, 所以在给计数器赋初值时, 不能直接输入所需的计数值, 而应输入的是计数器计数的最大值与这一计数值的差值, 设最大值为 M, 计数值为 N, 初值为 X, 则 X的计算方法如下: 计数状态: X=MN 定时状态: X=M定时时间/Tcy 而 Tcy=12晶振频率,2. 方式和控制寄存器,一、 定时器/计数器的方式寄存器TMOD,T1,T0,TMOD,89H,TMOD各位定义,1. M1M0工作方式控制位,表 1 工作方式选择表,2. C/T 定时器方式或计数器方式选择位 若C/T=1时, 为计数器方式; C/T = 0时, 为定时器方式。 3. GATE 定时器/计数器运行门控标志位 当GATE=1时, 只有INT0 (或INT1)引脚为高电平且TR0(或TR1 )置 1 时, 相应的定时器/计数器才被选通工作, 这时可用于测量在INTx端出现的正脉冲的宽度。若GATE=0, 则只要 TR0 (或 TR1)置 1, 定时器 /计数器就被选通, 而不管 INT0 (或 INT1)的电平是高还是低。, TF0、TF1分别是定时器/计数器T0、 T1 的溢出标志位, 加法计数器计满溢出时置1, 申请中断, 在中断响应后自动复 0。TF产生的中断申请是否被接受, 还需要由中断是否开放来决定。 TR1、TR0 分别是定时器 /计数器T1、 T0 的运行控制位, 通过软件置 1 后, 定时器 /计数器才开始工作, 在系统复位时被清 0。,TCON,88H,二、 定时器/计数器控制寄存器TCON,3. 工作方式,一、 方式1,二、方式 2,方式1的应用 方式 1 与方式 0 基本相同, 只是方式 1 改用了 16 位计数器。 要求定时周期较长时, 13 位计数器不够用, 可改用 16 位计数器。 方式2的应用 方式 2 是定时器自动重装载的操作方式, 在这种方式下, 定时器 0 和 1 的工作是相同的, 它的工作过程与方式 0、 方式 1 基本相同, 只不过在溢出的同时, 将 8 位二进制初值自动重装载, 即在中断服务子程序中, 不需要编程送初值。定时器 T1 工作在方式 2 时, 可直接用作串行口波特率发生器,作业:在定时器T0的中断中,让一位数码管每秒减一循环显示9,8,0,9,,