找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5219|回复: 2
打印 上一主题 下一主题
收起左侧

[原创] 如何比较深的理解单片机中断?

[复制链接]
跳转到指定楼层
楼主
ID:24590 发表于 2010-6-20 07:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

我在学习单片机中断的时候,看到那些程序时,就是不知道那些程序是怎么运行的,他们的步骤是怎么样的,我不清楚,盼你来帮我解释一下,谢谢!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:23004 发表于 2010-6-20 10:45 | 只看该作者

首先,你要知道中断都有哪些?它们的入口地址是什么

外部中断0,定时器0,外部中断1,定时器1,串口中断。

这些中断定时器都有优先级的,他们的优先级是:0,1,2,3,4(对应上一句)

入口地址分别为:0003H,000BH,0013H,001BH,0023H

 

其次,你要知道中断是如何产生的?

比如说,外部中断0,它的外部接口就是P3.2,当P3.2口有低电平或者下降沿触发的时候,外部中断0就产生了。具体要用电平触发还是边沿触发,这就要设置TCON。

 

再次,你要知道中断产生后,跑哪里去了?

当中断产生后,如外部中断0产生了,单片机检测到后,就会跳到相应的外部中断0的处理子函数去处理这个中断,没有这个子函数则表示不处理。C语言写的外部中断0的模式如:ext0_intrupt()interrupt 0   {}

而汇编的模式则如:ORG 0000H

                         AJMP MAIN          ;跳到主程序

                         ORG 0003H         ;定义外部中断0服务程序入口地址

                         AJMP OUTINT0     ;跳到外部中断0处理函数

                         ...

              MAIN:  ...

 

              OUTINT0: ...                   ;外部中断0处理函数

                             RETI

 

                         END

回复

使用道具 举报

板凳
ID:25058 发表于 2010-9-13 20:14 | 只看该作者

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表