PIC中档单片机的中断总结_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、pic中档单片机的中断总结对于来说,一次中断的过程大致有下列阶段:为了使得解释形象和直观,本文采纳一些诙谐的语句来比方解释:中断哀求-比方成申请买经济适用房的哀求中断标记-一份申请书本中断使能xxie-本单位领导peie-户口办公室主任gie-银行的管理信贷的科长中断哀求:房子太少,儿子要结婚了,得买房了,可资源和财力有限,不能卖商品房,只好按特别状况处理,写一份申请书(中断标记位if置1);本单位领导xxie看了之后,假如给你盖了一个戳:(即该中断使能位ie=1),那么恭喜你,这份申请书可以提交到更高一级的部门;假如没盖(xxie= 0),那么对不起,先放我这里吧,等我们讨论讨论好后再说。假

2、如你不愉快,要拿回申请书撕掉,呵呵,那么if=0;你的购房哀求之梦破灭;xxie领导将按照户口,将这些哀求书给分类,一类是外地迁来的户口,提交给户口办公室peie主任审查,peie主任假如给你盖了个戳(peie= 1),那么,他将会把申请书提交给银行的gie科长批准,否则就是放在这里再讨论讨论或者你要回归撕毁;一类是本地户口,可挺直提交给银行的gie科长批准,然后你将申请书带到gie科长的办公室。gie科长盖了章之后(gie=1),然后,你就可以拿着申请书去找房地产商要房子了(此时pc指针=0004h),由于gie科长有无数事情要做,所以他每盖了一次戳之后(注重是一次不是一个,由于大概有多个中

3、断同时发生,也就是说有其他地方的人来请gie盖戳),就在办公室门外挂了个牌子:请勿打搅。他自己则歇息去了,直到接到retfie的电话或者有人打他的手机。房地产商预备给房子了,不过你最好得先把各项手续给填好,叫5w押金,另外协议阿,合同阿,都得自己搞定,这叫“庇护现场”。房地产商开头上班了,于是挨个查“申请书”是谁提交的,以便给你支配你预定的房子。这个叫“中断查询”。查到是你的后,然后打电话让你过来,带你去看房子,把钥匙给你。这个交“中断处理”。钥匙交给你之后,房子你是到手了,不过这份申请书就失效了,房地产商将该申请书销毁。这个叫“清除中断标记”。好啦,现在你可以去房地产商自己去要回以前交的押金

4、,身份证啊等等。这个叫“复原现场”。最后,房地产商办完了,让retfie小姐打个电话给gie科长(执行retfie命令),gie科长才起来,把“请勿打搅”的牌子取下,让其他的带着申请书的人进来。固然,假如你的事情还没搞定,gie科长的关系户打了他的手机(你在办事时处理中断时,若有gie被置1),他也会开门取下“请勿打搅” 的牌子,让关系户进来,给他盖好章。这下就对不起了,人家有关系,所以你的事情要马上停下来,先等关系户办完他的事情之后,再给你办你的事情。这个叫“中断嵌套”,要注重gie科长有8个关系户(硬件堆栈的深度为8级)哦。二、需要注重的问题:1. 中断现场的庇护(可以参考以前的帖子,在x

5、ieyubing版主的指点下,有恰当的例子);2. 初次上电复位、电源跌落复位和其他状况下的复位,均使得全局中断位gie和其他中断使能位xxie=0;3. 中断标记位的状态与该中断源是否被屏蔽无关,与全局中断使能位gie也无关。4. 当开放某一中断源时,该中断源就是通过中断标记向cpu申请中断的,无论什么缘由,只要标记位if置1(可以用软件强行置1),均会产生中断哀求。5. 当中断标记位为1,假如该中断被屏蔽或者被禁止了,只要不清除标记位,那么该中断哀求会被埋伏下来,一旦屏蔽解除,立刻产生中断响应。反之,假如在屏蔽/禁止条件解除之前清除了该标记位,那么则无中断哀求。6. 当cpu响应任一中断时

6、,全局中断使能位gie会自动清零;当中断返回时,它有自动置1。假如在中断处理期间,用软件将已经清零的gie位又重新置位,这个时候若再浮现中断哀求,就可以形成了中断嵌套。即:在处理某一中断期间又响应了其他中断哀求,就形成了中断嵌套,此时,前一中断处理过程会被暂停而进入新的中断处理,当新中断处理完毕后,才会继续处理前一个被搁置的中断。此方式可以形成多级嵌套,但不能超过硬件堆栈的深度8级,以免造成堆栈溢出而不能正常返回。7. 假如同时发生多个中断哀求,则中断处理的挨次取决于中断程序中的检查中断源的挨次。8. 若要防止中断哀求被走失:则要注重下面两种状况:假如同一中断源的中断发生间隔时光大于该中断服务

7、的处理时光,则可能浮现中断大事被忽视(体现在中断服务的过程中,标记位被延续发生来两次置位),例如:中断大事发生的时光间隔为30ms,中断服务处理加上跳转推断的时光为50ms,则状况将会如下所示:中断次数-1中断次数-2中断次数-3中断次数-4处理次数-1处理次数-2处理次数-4假如在中断处理一开头就清除if,那么如上图所示,中断大事3、4 在处理次数2的过程中发生来两次,那么即使if清除发生在中断次数3发生之前,也将走失第三次中断。另外,即使中断浮现的时光间隔大于中断服务的时光间隔,假如清除中断标记位的命令支配在中断服务子程序的尾部,就有可能造成走失该中断哀求(即两次中断标记置位的大事只对应一

8、条清除命令和一次中断处理。9. 在举行查表操作时必须禁止cpu响应中断,以避开中断返回时跳转到不希翼的地址上去。三、一个怀疑一个疑问:一些书上提到:假如对寄存器intcon举行“读-改-写”操作的时候,要事先将gie清0,再对intcon举行操作,然后将gie复原为1即bcf intcon,giebsf intcon,xxbsf intcon,gie所提到的理由是:当cpu正在执行一条对intcon寄存器举行“读-改-写”操作的命令时,假如恰好发生了中断哀求,则中断服务程序会被执行两次。这是由于当中断哀求发生后intcon寄存器的gie寄存器会被硬件自动清零(屏蔽全部中断),并且程序转入中断例程入口(0004h)。当gie被清零后,这时假如cpu正在执行一条对intcon“读-改-写”的命令时,则gie位还会被写会操作重新置1,这样就会造成cpu两次进入中断服务程序。该段说明晦涩难懂,按照中断发生过程的时序(picmicro中档单片机系列参考手册的第8-2页):在第n个命令周期里,cpu检测到if标记位为1,则在n+1个周期内将自动使得

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论