中断系统以及外部中断

发布时间:2024-08-02  

一、中断相关的基础概念

        内核与外设之间的主要交互方式有两种:轮询和中断。 轮询的方式貌似公平,但实际工作效率很低,且不能及时响应紧急事件;中断系统使得内核具备了应对突发事件的能力。

        在执行CPU当前程序时,由于系统中出现了某种急需处理的情况,CPU暂停正在执行的程序,转而去执行另外一段特殊程序来处理出现的紧急事务,处理结束后,CPU自动返回到原来暂停的程序中去继续执行。 这种程序在执行过程中由于外界的原因而被中间打断的情况,称为中断。

        两个重要的概念:

        <1> 中断服务函数: 内核响应中断后执行的相应处理程序。

        <2> 中断向量:中断服务程序的入口地址。每个中断源都对应一个固定的入口地址。当内核响应中断请求时,就会暂停当前的程序执行,然后跳转到该入口地址执行代码。

 

二、CC2530的中断系统

        CC2530具有18个中断源,每个中断源都由各自的一系列特殊功能寄存器来进行控制。可以编程设置相关特殊功能寄存器,设置18个中断源的优先级以及使能中断申请响应等。我们常用的中断源有下面几个:

 

三、CC2530的中断处理函数编写方法

        中断服务函数与一般自定义函数不同,有特定的书写格式:

<1> 在每一个中断服务函数之前,都要加上一句起始语句:

        #pragma vector = <中断向量>

        <中断向量>表示接下来要写的中断服务函数是为那个中断源服务的,该 语句有两种写法:

        #pragma  vector = 0x7B    或者    #pragma  vector = P1INT_VECTOR

        前者是中断向量的入口地址,后者是头文件“ioCC2530.h”中的宏定义。

<2> _ _interrupt关键字表示该函数是一个中断服务函数,<函数名称>可以 自定义,函数体不能带有参数,也不能有返回值。

 

四、CC2530的外部中断

        CC2530的P0、P1和P2端口中的每个引脚都具有外部中断输入功能,要使某些引脚具有外部中断功能,需要对IENx寄存器、PxIEN寄存器和PICTL寄存器进行适当的设置。 除了各个中断源都有自己的中断使能开关之外,中断系统还有一个总开关,可以同“EA = 1;”来打开总中断。

        P0、P1和P2端口分别使用P0IF、P1IF和P2IF作为中断标志位,任何一个端口组上的引脚产生外部中断时,都会将对应端口组的中断标志自动置位。注意,外部中断标志必须在中断服务函数中手工清除,否则CPU会反复进入中断。 端口状态标志寄存器P0IFG、P1IGF和P2IFG,分别对应3个端口中各引脚的中断触发状态,当某引脚发生外部中断触发时,对应的标志位会自动置位,这个标志同样需要手工清除。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    计数满时向CPU中断   7、时钟电路fosc   分为内部振荡器、外接振荡电路   8、中断系统   五源中断、两级优先,可编程进行控制。   8051单片机共有几个中断源   有5个中断源,两个外中断......
    申请)。 进入中断→保护现场→中断处理 → 恢复现场 →中断返回 中断方式优点:大大地提高了CPU的工作效率。 5.2 中断系统结构 中断系统结构见图。中断系统有5个中断请求源(简称中断源),2个中断......
    跳转到该入口地址执行代码。   二、CC2530的中断系统         CC2530具有18个中断源,每个中断源都由各自的一系列特殊功能寄存器来进行控制。可以编程设置相关特殊功能寄存器,设置18个中断源的优先级以及使能中断......
    8051单片机中断系统结构及中断控制原理;当几个中断源同时向CPU请求中断时,按所发生的实时事件的轻重缓急排队,优先处理最紧急事件的中断请求,于是单片机规定每个中断源的优先级别。 当CPU正在处理一个中断......
    信号输入等。当这些事件发生时,中断系统会立即跳转到相应的中断服务子程序中进行处理,并在完成后返回主程序继续执行。 51单片机中断系统包括以下几个主要组成部分: (1) 中断源:外部事件发生时产生中断请求信号,被称为中断源......
    都是被屏蔽的。 PRIORITY(IRQ PRIORITY Control Register)寄存器有32位,有效位[20:0],可读写,此寄存器的作用是如果有几个中断源同时触发,按照......
    CPU中断的请求源。微型机的中断系统一般允许多个中断源,当几个中断源同时向 CPU 请求中断,要求为它服务的时候,这就存在CPU 优先响应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,优先处理最紧急事件的中断......
    该如何处理呢? 1)中断优先级 当多个中断源同时提出中断申请时,处理器先处理哪个? 为此提出了中断优先级的概念,给每个中断源赋予不同的优先级,在同一时刻,有多个中断请求时,中断系统按照中断源......
    他们的抢占式优先级和响应优先级都相等,则根据他们在中断表中的排位顺序决定先处理哪一个。每一个中断源都必须定义2个优先级。 有几点需要注意的是: 1)如果......
    LPC824-中断系统NVIC;LPC824的中断系统非常强大,要用好中断,就必须先了解LPC824的整个中断系统。下面来讨论一下NVIC中断系统。 在LPC8xx系列处理器中,有一......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>