首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >了解中断/中断处理程序

了解中断/中断处理程序
EN

Stack Overflow用户
提问于 2011-03-22 08:40:43
回答 1查看 1.8K关注 0票数 2

我知道什么是中断,只是不知道它是如何工作的,也不知道它是如何实现的。我正在使用PIC16F886,并将交换机连接到TRISB上的第5位。这样,我意识到在中断发生之前,我需要做一些设置。RB0-3为LEDS,RB4-7为中断/开关。

这样,我就知道我需要通过设置位GIE,INTF来使能INTCON中的中断,并且我相信是RBIE而不是INTE,因为RB0正在被发光二极管使用?但我不确定。

我主要关心的是:中断是如何触发的?还有,像org 0x04这样的东西。这在中断中的意义是什么?这些都是我想不到的重要细节,但没有它们我就无法继续。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2011-03-22 09:02:17

快速查看datasheet,0x4是中断向量。因此,当中断发生时,您应该将想要跳转到的代码的地址放在0x4,就像您已经将重置时想要跳转到的代码的地址放在0x0一样。

如果设置了RBIE位并在IOCB中设置了相关位,则PORTB输入的任何更改都会触发中断。您需要读取或写入PORTB (实际上,您可能希望读取它,并检查位5的值以确保是开关发生了变化),或者清除RBIF以结束中断。

所以:如果你已经启用了相关的中断,那么当你的开关的值被检测到已经改变时,它就会被触发。此时,CPU跳转到从0x4开始的地址。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5385441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档