单片机c语言ad8035,MCS51单片机讲义C语言编程,清华大学出版社第四章

资料

本文由残荷听雨1988贡献

doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。

MCS- 系列单片机 单片机的 第四章 MCS-51 系列单片机的中断系统

中断系统是为使 CPU 具有对单片机外部或内部随机发生的事件的实时处理 而设置的。MCS-51 片内的中断系统能大大提高 MCS-51 单片机处理外部或内部的 能力。    4.1 中断的概念

单片机处理外部或内部事件有两种方式:程序查询方式和中断方式。程序查 询方式是单片机对外部或内部事件的处理时,CPU 不断查询是否有事件发生。采 用程序查询方式,CPU 不能在做别的事,而是大部分时间处于等待状态。单片机 都具有实时处理功能,能对外部或内部发生的事件做出及时的处理,这靠中断技 术实现。 中断方式是当 CPU 正在处理某件事情(如正在执行主程序)的时候,外部或 内部发生的某一事件(如计数器的计数溢出等)请求 CPU 迅速去处理,于是 CPU 暂时中止当前的工作,转去处理所发生的事件。中断服务处理程序处理完该事件 后,再回到原来被中止的地方,继续原来的工作。 处理事件的过 主 求 程, 称为 CPU 的中断 请 程 断 中 中 响应过程。 对事件的 序 应 断 响 整个处理过程, 称为 服 N 务 N+1 中断服务或中断处 返 程 继 回 理。 如图 4.1 中断过 主 序 续 程 序 程。 执    行 主 程 序

图 4.1 中断过程 实现这种功能的部件称为中断系统,产生中断请求的来源称为中断源。中断 源向 CPU 提出的处理请求称为中断请求或中断申请。CPU 暂时中止执行的程序, 转向执行中断服务程序, 除了硬件会自动把断点地址 (16 位程序计数器 PC 的值) 压入堆栈之外,用户还得注意保护有关的工作寄存器、累加器、标志位等信息, 称为保护现场。最后执行中断服务程序后,恢复有关的工作寄存器、累加器、标 志位等信息,称为恢复现场。最后执行中断返回指令,从堆栈中自动弹出断点地 址到 PC,继续执行被中断的程序,称为中断返回。 中断方式完全消除了 CPU 在程序查询方式中的等待现象,大大地提高了 CPU 的工作效率。

MCS4.2 MCS-51 中断系统的结构

MCS-51单片机的中断系统有5个中断请求源,具有两个中断优先级,可实现 两级中断服务程序嵌套。用户可以用软件来屏蔽所有的中断请求,也可以用软件 使CPU接收中断请求;每一个中断源可以用软件独立地控制为开中断或关中断状 态;每一个中断源的中断级别均可用软件设置。

4.2.1 中断源

MCS-5l 提供五个中断请求源,其中两个为外部中断源,由 INT0,INT1 引脚 输入;两个片内的定时器/计数器溢出中断请求;串行口产生的中断请求(TI 或 RI)。它们相对应的入口地址见表 4.1。 表 4.1 MCS-51 中断源及其入口地址 五个中断源 入口地址 外部中断0(/INT0) 0003H T0溢出中断 000BH 外部中断1(/INT1) 0013H T1溢出中断 001BH 串口中断 0023H 这些中断请求源分别由 MCS-51 的特殊功能寄存器 TCON 和 SCON 的相应位锁 存。 TCON 为定时器/计数器的控制寄存器,字节地址为 88H,TCON 也锁存外部中 断请求标志。其格式如下表 4.2: 表 4.2 TCON 中的中断请求标志位 位 D7 D6 D5 D4 D3 D2 D1 D0 TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 位地址 8FH 8EH 8DH 8CH 8BH 8AH 89H 88H 各位的功能如下: IT0:选择外部中断请求 INT0 为边沿触发方式或电平触发方式的控制位。当 IT0 为 0 时,为电平触发方式,INT0 低电平有效;当 IT0 为 l 时,1NT0 为边沿 触发方式,INT0 输人脚上的电平从高到低的负跳变有效。INT0 由软件置“1”或 清“0”。 IE0:外部中断 INT0 的中断申请标志位。当 IT0=0 即电平触发方式时,每 个机器周期的 S5P2 采样 INTO, INT0 为低电平, 被置 若 IE0 “1” 否则被清 , “0” ; 当 IT0=1,即 INT0 程控为边沿触发方式时,当第一个机器周期采样到为低电平 时,则 IE0 被置“l”,IE0 为 1 表示外部中断 0 正在向 CPU 申请中断。当 CPU 响应中断,转向中断服务程序时,IE0 由硬件清“0”。 ITl:选择外部中断请求 1 为边沿触发方式或电平触发方式的控制位,其意 义和 IT0 类似。 IEl:外部中断 1 的中断申请标志位,其意义和 IE0 类似。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值