LPC2114有4个外部中断,分别为EINT0、EINT1、EINT2、EINT3,具有4个相关得寄存器。外部中断输入可以用于将处理器从掉电模式唤醒。
EXTINT是外部中断标志寄存器 。当一个管脚选择使用外部中断功能时,对应在EXTMODE和EXTPOLAR寄存器中得位选择得电平或边沿将置位EXTINT寄存器的中断标志。这样来向VIC提出中断请求,如果管脚中断使能,则产生中断。低4位与外部中断引脚EINT3、EINT2、EINT1、EINT0对应,为1时表示外部中断有效。可以通过软件对其相应位写入1清零标志位。电平激活方式下,该方式只有在管脚处于无效状态时才有效。一旦EINT0 ~EINT3中的一位被置位并开始执行相应代码时,该位必须清零。否则EINT刚触发得事件以后将不会被识别。
电平激活方式下,如果管脚的EINT功能被选用且管脚处于有效状态时,该位置位;边沿激活方式下,如果管脚的EINT功能被选用且管脚上出现所选边沿时,该位置位。
EXTWAKE是中断唤醒寄存器。EXTWAKE寄存器中的使能位允许外部中断和其他源将处理器从掉电模式中唤醒。相应的EINTn功能必须映射到管脚才能实现掉电唤醒。这样做的好处是允许外部中断输入将处理器从掉电唤醒,但不产生中断;或者在掉电模式下使能中断而不会将处理器唤醒。[3:0]=EXTWAKE3~EXTWAKE0,为1时允许唤醒。
EXTMODE是外部中断模式寄存器。该寄存器中的位用来选择EINTn的引脚是电平还是边沿激活。只有选择用作EINT功能,并且已通过VICIntEnable寄存器使能得管脚才能产生外部中断功能的中断。[3:0]=EXTMODE3~XTMODE0,为0时使用电平激活,为1时使用边沿激活。
EXTPOLAR是外部中断极性寄存器。在电平激活方式下,EXTPOLAR寄存器的位选择相应管脚是高电平还是低电平有效。在边沿激活方式下,选择是上升沿还是下降沿有效。[3:0]= EXTPOLAR3~EXTPOLAR1,为1时外部中断是高电平或上升沿有效;为0时外部中断是低电平或下降沿有效。
关键字:LPC21xx系列 外部中断 寄存器
引用地址:
LPC21xx系列外部中断寄存器
推荐阅读最新更新时间:2024-03-16 14:29
使用Code Composer Studio开发MSP430 - GPIO外部中断
假设设计一个简单的数字手表,它的功能只是显示时间,假如您想更改其时区。你会怎么做?您只需按下一个按钮即可切换到菜单,该菜单使您可以更改时区。在这里,系统无法预测您的外部中断对其计时过程的影响,也无法要求您等待,因为它正忙于增加手表的秒数。这时就该用到中断功能了。 中断不必总是外部的。它也可以是内部的。嵌入式中断中的大多数时间也可以促进CPU的两个外设之间的通信。考虑到预设的计时器被重置,并且当时间达到计时器寄存器中的值时触发中断。中断处理程序可用于启动其他外设,如DMA。 在本篇文章中,我们使用了MSP430上的外部中断来切换不同的LED。当使用按钮通过状态改变给出外部中断时,控制权被转移(抢占)到ISR。要了解诸如MSP
[单片机]
STM8S---外部中断应用之长按键识别
STM8常用中断指令 开总中断 _asm(“rim”); 禁止中断 _asm(“sim”); 进入停机模式 _asm(“halt”); 中断返回 _asm(“iret”); 等待中断 _asm(“wfi”); 软件中断 _asm(“trap”); STM8S常用中断映射 如使用中断函数时,可以通过在上图中查找相对应的中断向量号,而中断函数的名字可以自定义 /* BASIC INTERRUPT VECTOR TABLE FOR STM8 devices * Copyright (c) 2007 STMicroelectronics */ typedef vo
[单片机]
MSP430功耗相关寄存器
当系统时钟发生器基本功能建立之后,CPU内状态寄存器SR的SCG1,SCG0,CPUOFF,OSCOFF位是重要的低功耗控制位。只要任意中断被响应,上述控制位就被压入堆栈保存,中断处理之后,又可恢复先前的工作方式。在中断处理子程序执行期间,通过间接访问堆栈数据,可以操作这些控制位;这样允许程序在中断返回(RETI) 后,以另一种功耗方式继续运行。 各控制位的作用如下: SCG1: 复位,使能SMCLK;置位,禁止SMCLK。 SCG0:复位,激活直流发生器,只有SCG0置位,并且DCOCLK没有被用作MCLK或SMCLK时,直流发生器才能被禁止。 OSCOFF:复位,激活LFXT1,只有当OSCOFF被置位并且LFXT1
[单片机]
X9241数字电位器的原理及在DSP中的应用
1 X9241 概述 X9241是Xicor公司生产的一种集成数字电位器。它在单一芯片上集成了4个10kΩ数字电位器,每个电位器的滑动端共有64个离散的调节节点,并有4个8bit的E 2 PROM数据寄存器以及一个滑刷控制寄存器(WCR)。用户可以通过相应指令使电位器的WCR(滑刷控制寄存器)与某个数据寄存器相关联,也可以直接控制WCR以达到改变电位器滑动端位置的目地。X9241芯片具有I 2 C总线接口,可以实现寄存器映射、改变滑刷位置以及进行电位器级联等操作。X9241采用20引脚双列直插封装,其引脚排列如图1所示。其中VWi(i=0~3)为四个独立的10kΩ电位器的滑动端;VLi(i=0~3)分别为四个电位器的两
[嵌入式]
51单片机外部中断产生条件
最近在做单片机外部中断实验的时候以为忘记产生中断的条件,于是查找了大学时代的教材和一些关于单片机的书籍,结果发现里面都没有相关的介绍。接着我有在AT89S52的中英文手册中查找了相关内容也没有找到相关的说明。最后不得已百度了一下,找到了答案如下: 5个中断源的符号、名称及产生的条件如下。 INT0:外部中断0,由P3.2端口线引入,低电平或下降沿引起。 INT1:外部中断1,由P3.3端口线引入,低电平或下降沿引起。 T0:定时器/计数器0中断,由T0计满回零引起。 T1:定时器/计数器l中断,由T1计满回零引起。 TI/RI:串行I/O中断,串行端口完成一帧字符发送/接收后引起。
[单片机]
S3C2410外部中断
S3C2410有24个外部中断引脚:EINT0~EINT23,但是对于EINT0~EINT3这4个外部中断而言,使用比较简单;对于其它20个而言,使用稍稍复杂一些。 首先,来看S3C2410的中断控制器,有6个中断裁决器分为2级,第1级5个,第2级1个;第1级的5个裁决器管理32级中断源,在这32级中断源中有2个保留,24级是给内部中断源的,对于24个外部中断只给了6个中断级:EINT0、EINT1、EINT2、EINT3、EINT4~7、EINT8~23,EINT4~EINT7共享一个中断级,EINT8~EINT23共享一个中断级。 中断控制器中主要的相关寄存器有:INTMSK、SRCPND、PRIORITY、INTPND,还有
[单片机]
Atmega32简单的串口通信
最近因为做东西,又重新写了一下AVR,在这整理一下 串口通信是这个是比较常用的部分,Atmega32只有一个串口,USART 基本串口编程只需要写两部分,串口的初始化与串口数据接收 串口初始化: 设置波特率,波特率可以通过设置波特率发生寄存器UBRR来确定, UBRR为两字节16位的寄存器,可分为UBRRH和UBRRH,计算公式: UBRRH= (F_CPU/BAUD/16 -1)/256 UBRRL =(F_CPU/BAUD/16 -1)%256 串口的使能,通过写USART控制和状态寄存器B-USARTB,接收使能、发送使能、接收中断使能(可根据需要进行使能)。 使能语句:UCSRB |=(1 R
[单片机]
高性能32位移位寄存器单元的设计
1 引言 本文给出了一种可用于32位以上CPU执行单元的移位寄存器电路,并针对CISC指令集INTEL X86进行了优化(由于RISC指令集中移位类指令实现比较简单,故没有在文中讨论);采用指令预处理的技术和通过冗余位,能很方便的实现带进位标志 CF移位和设置CF位,并使得每条移位指令的平均执行速度为两个指令周期。它有效地提高了CPU对移位类指令的执行性能,并且作为一个基本的内核单元能很方便地移植到不同指令集(RISC或 CISC)的CPU设计之中。 2 32位CPU中执行单元总体结构 我们所设计的32位CPU的执行部分采用双总线结构,数据总线(Abus,Bbus)的宽度是32位。由于移位类指令如果用ALU进行
[工业控制]