【ARM】2410裸机系列-中断处理

发布者:甜美瞬间最新更新时间:2020-01-23 来源: eefocus关键字:ARM  2410裸机系列  中断处理 手机看文章 扫描二维码
随时随地手机看文章

目的

   为了更好地掌握S3C2410中断的原理及中断程序的编写。

   内容利用S3C2410的外部中断0和外部中断1实现两个按键功能

 


原理

   本次选择的是外部中断EXTINT0和EXTINT11。中断的产生分别来自按钮SB1202和SB1203,当按钮按下时,EXTINT0(对应管脚GPF0)或EXTINT11(对应管脚GPG3)和地连接,输入低电平,从而向CPU发出中断请求。


   当CPU受理后,进入相应的中断服务程序,通过超级终端的主窗口显示当前进入的中断号。

 


程序

#include "2410addr.h"//这头文件找了好久啊,mdk里面没有,后来在一个实例中提取出来的


#include "2410lib.h"


void __irq int0_int(void)   //外部中断0处理函数


{


   uart_printf("EINT0 interrupt occurred. n");


   ClearPending(BIT_EINT0);    //清除中断源


}


void __irq int11_int(void)  //外部中断11处理函数


{


if(rEINTPEND==(1<<11))  //判断外部中断挂起寄存器,确定是否外部中断11


   {


       uart_printf("EINT11 interrupt occurred. n");


       rEINTPEND=(1<<11);  //清除中断挂起寄存器


   }


   ClearPending(BIT_EINT8_23);


}


void int_init(void) //中断初始化


{


   rGPFCON=(rGPFCON & ~(3<<0) | (0x2<<0)); //将CPFO配置为EINT0


   rGPGCON=(rGPGCON & ~(3<<6) | (0x2<<6)); //将CPF3配置为EINT11


   pISR_EINT0=(UINT32T)int0_int;   //注册中断处理函数


   pISR_EINT8_23=(UINT32T)int11_int;    


//注册处理中断11处理函数,EINT8~23共用此函数,需要在处理函数中加入对源中断的判断


   rEINTPEND=0xffffff; //清除所有外部中断挂起状态


   rSRCPND=BIT_EINT0 | BIT_EINT8_23;   //清除源的挂起状态


   rINTPND=BIT_EINT0 | BIT_EINT8_23;   //清除挂起状态


   rEXTINT0=(rEXTINT0 & ~(7<<0)) | (0x2<<0);   //EINT0下降沿触发


   rEXTINT1=(rEXTINT1 & ~(7<<0)) | (0x2<<12);  //EINT1Ï下降沿触发


   rEINTMASK &= ~(1<<11);  //打开外部中断11


   rINTMSK &= ~(BIT_EINT0 | BIT_EINT8_23); //打开INTMSK中的中断0和中断8~23


}


int main()


{


   int_init();  


while(1);


}


//#define ClearPending(bit) {rSRCPND=bit;rINTPND=rINTPND;}


//写入错误的数据


//清除中断源,注意清除的顺序,要从源头开始清除


关键字:ARM  2410裸机系列  中断处理 引用地址:【ARM】2410裸机系列-中断处理

上一篇:【ARM】串行通信
下一篇:【ARM】ARM程序规范

推荐阅读最新更新时间:2024-11-16 22:08

ARM处理器简介及RISC设计要点
第一ARM处理器简介及RISC特点 ARM处理器简介 ARM(Advanced RISC Machines)是一个32位RISC(精简指令集)处理器架构,ARM处理器则是ARM架构下的微处理器。ARM处理器广泛的使用在许多嵌入式系统。ARM处理器的特点有指令长度固定,执行效率高,低成本等。 RISC设计主要特点 1、指令集——RISC减少了指令集的种类,通常一个周期一条指令,采用固定长度的指令格式,编译器或程序员通过几条指令完成一个复杂的操作。而CISC指令集的指令长度通常不固定。 2、流水线——RISC采用单周期指令,且指令长度固定,便于流水线操作执行。 3、寄存器——RISC的处理器拥有更多的通用寄存
[网络通信]
Keil(MDK-ARM系列教程(七)_菜单
Ⅰ、写在前面 本文带来关于Keil软件菜单的内容,系列教程中前面讲述的内容都可以通过菜单而找到,只是大部分内容都可以通过快捷按钮或快捷键找到,该文就讲述主菜单里每一个子菜单的内容。 Keil有些菜单在编辑模式和调试模式下可能有所不同,也就是说在不同模式下有些功能或许不能使用,下面内容会将每项菜单在不同模式下的区别提出来。 按照前面文章编辑方式,为了使文章内容精简,过于简单和不常用且过于复杂的内容只简述。 本文内容已经整理成PDF文件,提供给大家下载: http://pan.baidu.com/s/1nuJ0RDR Ⅱ、File文件菜单 File文件菜单在两种模式下略有不同。比较简单,只简述。 1.New
[单片机]
Keil(MDK-<font color='red'>ARM</font>)<font color='red'>系列</font>教程(七)_菜单
ARM筆記:应用调试之自制系统调用、编写进程查看器(二)
在本节里面我们就详细来讲一下如何用我们自己实现的系统调用来调试应用程序 一、步骤 1、修改应用程序的可执行文件,替换某个位置的代码为swi val 2、执行程序 3、进入到sys_hello- 在sys_hello里面打印信息- 执行原来的指令- 返回 二、具体实现 我们的应用程序是: //file:test_sc.c #include int cnt = 0; void C(void) { int i = 0; while (1) { printf( Hello, cnt = %d, i = %d\n , cnt, i); cnt++; i = i + 2; sleep(5); } } void
[单片机]
ARM推出全新高端移动体验IP组合
ARM近日宣布推出全新IP组合,为2016年上市的移动设备树立高端用户体验新标杆。这套IP组合是以业界现有针对移动系统级芯片(SoC)开发的最高性能处理器技术ARM Cortex-A72处理器为核心,在特定的配置下,Cortex-A72可以较五年前的高端智能手机提供高于50倍的处理器性能。ARM高端移动体验IP组合同时可在支持高达4K120帧分辨率的情况下,提供显著的图形处理性能升级,为用户带来震撼的视觉体验。基于这一全新业界领先技术组合的设备预计将于2016年面世。   ARM高端移动体验IP组合提供当今最引人入胜的移动技术,除了Cortex-A72处理器外,还包括最新的CoreLink CCI-500互连技术、ARM最
[单片机]
ARM汇编器对ARM的寄存器进行了预定义
1,Ro-R15和r0-r15 2,a1-a4(参数,结果或者临时寄存器,与r0-r3同意) 3,v1-v8(变量寄存器,与r4-r11同意) 4,sb和SB(静态基址寄存器,与r9同意) 5,sl和SL(堆栈限制寄存器,与r10同意) 6,fp和FP(帧指针,与r11同意) 7,ip和IP(过程调用中间临时寄存器,与r12同意) 8,sp和SP(堆栈指针,与r13同意) 9,lr和LR(连接寄存器,与r14同意) 10,pc和PC(程序计数器,与r15同意) 11,cpsr和CPSR(程序状态寄存器) 12,spsr和SPSR(程序状态寄存器) 13,f0-f7和F0-F7(FPA寄存器) 14,s0-s31和S0-S31(VFP
[单片机]
ARM推物联网平台及OS 加速万物互连
    物联网带来万物互联、机器对机器、智慧控制、数据采集、智慧系统等各种新的可能性,同时也让许多个人、新创公司或各大企业开始发展各种创新产品,以获得消费者的青睐,这也意味着物联网是一个巨大的颠覆性市场。 根据IDC研究预测,2020年将有300亿个连网装置,市场营收将达到7.1兆美元的规模,而目前其应用也已遍及零售、交通运输、医疗照护、工业制造等产业。物联网多元化的发展,也让各家科技大厂争相投入,推出各种解决方案或者组成联盟。而为了简化及加速物联网装置的产出与部署,ARM日前也宣布推出新款软体平台ARM mbed IoT Device Platform以及mbed OS作业系统。 其中,ARM mbed物联网装置平台是针对
[手机便携]
基于ARM7和VC平台的高分辨率红外触摸屏设计
  触摸屏是结合显示器使用的一种透明的绝对定位系统,透明和优良的定位原理是它的技术特征。目前应用在各场合的触摸屏主要有四种:电阻式触摸屏、电容式触摸屏、表面声波触摸屏和红外触摸屏。其中红外触摸屏的视觉效果和定位原理都优于其它触摸屏技术,而且不受电流、电压和静电干扰,可以适宜恶劣的环境条件。但是,与其它三种触摸屏相比,红外触摸屏也存在分辨率低的问题,这一点严重影响了红外触摸屏的实际应用。   为此,本文采用ARM7和VC提出了一种高分辨率的红外触摸屏的实现方案。该方法通过ARM7对接收管和发射管的控制,来实时采集与发射管一一对应的接收管的光通量,然后计算鼠标位置,最后通过VC编程来实现在Windows下的鼠标驱动。   1硬件平
[单片机]
ARM在数字化远程视频监控系统的应用
引言   随着信息技术的发展,数字化越来越多的代替了传统的模拟系统,数字化使得远程视频监控系统不需要专门架设线路,应用现有通讯线路就可以实现低成本的信息传递,与传统的模拟监控系统相比,它的组网成本大大降低、系统体积重量大大减小、运行维护更容易。   所使用的通信线路有很多种,如:以太网、ISDN、xDSL、公共电话网、无线电话网等,根据线路的带宽不同,远程视频监控系统的图像质量也有很大不同。   本文针对低设备成本、低运行成本和超远距离的视频监控系统应用提出了解决方案,使用ARM嵌入式处理器和Linux操作系统构建嵌入式系统,开发出可实际应用的远程视频监控系统,适用于低分辨率、低成本、长距离的监控应用。   它的特点有:
[单片机]
<font color='red'>ARM</font>在数字化远程视频监控系统的应用
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved