下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ARM11(3)外部中断WF 2013.1.24 最近正在学习ARM11(S3C6410开发板)的外部中断部分,稍有心得,特此总结一些学习笔记,分享出来,献给那些像我一样正在ARM11上裸奔的嵌入式学徒们,同时也希望看到此文的业界前辈多多指教。外部中断基础知识总结:ARM11(S3C6410开发板)共有187根多功能I/O口,其中127根可用于外部中断,而这127个外部中断引脚又被分为十组:EINT0EINT9,这十组对应VICX(中断矢量寄存器)中0、1、32、33、53五个中断号。十组外部中断和五个中断号之间的对应关系却是略显复杂:EINT0共28根引脚被分为了四部分分别对应了0、1、32
2、、33四个中断号,EINT1EINT9这9组共99根引脚却只对应了53一个中断号。外部中断逻辑图:矢量寄存器中断代号中断数目中断组引脚名引脚数VIC0028EINT0GPN0GPN341GPN4GPN118VIC132GPN12GPN15GPL8GPL11833GPM0GPM4GPL12GPL1485399EINT1EINT999外部中断的基本编程思想总结:1、 初始化I/O引脚设置GPX;(1)、必须设置所需引脚为中断模式GPXCON;(2)、可选性设置上下拉电阻和数据位GPXPUD、GPXDAT;2、初始化外部中断设置EINTX;(1)、选择外部中断的触发方式EINTXCON;(2)、清除
3、外部中断屏蔽EINTXMASK;(3)、外部中断悬挂给1置0EINTXPEND;3、初始化总中断设置VICX;(1)、选择中断模式VICXINTSELECT;(2)、设置中断函数入口VICXVECTADDR;(3)、中断使能VICXINTENABLE;4中断函数出口处设置;(1)、清除当前中断函数记录VICXADDR;(2)、给1置0外部中断悬挂位EINTXPEND。程序实例:程序说明:实现按键中断控制LED灯的显示,每按一个键LED会显示一种方案。.c文件代码:/引入GPN引脚(外接按键)三个寄存器的地址标号#define rGPNCON (*(volatile unsigned*)(0x7
4、f008830) #define rGPNDAT (*(volatile unsigned*)(0x7f008834)#define rGPNPUD (*(volatile unsigned*)(0x7f008838)/引入GPM引脚(外接LED灯)三个寄存器的地址标号#define rGPMCON (*(volatile unsigned*)(0x7f008820)#define rGPMDAT (*(volatile unsigned*)(0x7f008824)#define rGPMPUD (*(volatile unsigned*)(0x7f008828)/引入外部中断控制寄存器的地址
5、标号#define rEINT0CON0 (*(volatile unsigned*)(0x7f008900)#define rEINT0MASK (*(volatile unsigned*)(0x7f008920)#define rEINT0PEND (*(volatile unsigned*)(0x7f008924)/引入总中断控制寄存器的地址标号#define rVIC0INTSELECT (*(volatile unsigned*)(0x7120000C)#define rVIC1INTSELECT (*(volatile unsigned*)(0x7130000C)#define V
6、IC0VECTADDR0 (*(volatile unsigned*)(0x71200100)#define VIC0VECTADDR1 (*(volatile unsigned*)(0x71200104)#define rVIC0INTENABLE (*(volatile unsigned*)(0x71200010)#define rVIC0ADDR (*(volatile unsigned*)(0x71200f00)#define rVIC1ADDR (*(volatile unsigned*)(0x71300f00)int keyva=0;/定义全局变量keyva,用于记录键值int w
7、ait(int tm)/延时函数int i,j;for(i=0;itm;i+)for(j=0;j125;j+)return 0;void GPM_Init(void)/GPM(LED灯)状态初始化rGPMCON=(rGPMCON & (0xffff) | (10) | (14) | (18) | (112);rGPMPUD=0x00;rGPMDAT=rGPMDAT&0x00;void Key14_ISR(void) _irq;/中断函数声明void Key56_ISR(void) _irq;void INT_Init(void) /中断初始化设置 rGPNCON = (rGPNCON & 0x
8、FFFFF000) | 0x0AAA; rEINT0CON0 = (rEINT0CON0 & 0xFFFFF000)|0xfffff222;/EINT0CON0=0010 0010 0010 rEINT0MASK &= 0xFFFFFFc0;/ rEINT0PEND |= 0x0000003F; rVIC0INTSELECT = 0x0; rVIC1INTSELECT = 0x0; VIC0VECTADDR0 = (unsigned int)Key14_ISR; VIC0VECTADDR1 = (unsigned int)Key56_ISR; rVIC0INTENABLE |= 0x03; v
9、oid _irq Key14_ISR(void) /中断函数1 unsigned int pend14; int i; pend14=rEINT0PEND; pend14=pend14&0x0f; for(i=0;i4;i+)if(pend14&(1i) keyva=i+1; rEINT0PEND|=0x0000003f; rVIC0ADDR = 0x00000000; void _irq Key56_ISR(void) 中断函数2 unsigned int pend56; int i; pend56=rEINT0PEND; pend56=pend56&0x30; for(i=4;i6;i+)
10、if(pend56&(1i)=0) keyva=i+1; rEINT0PEND|=0x0000003f; rVIC0ADDR = 0x00000000; void dis1(void)/亮灯方案1rGPMDAT=rGPMDAT & (0x0f) | (10);wait(10);void dis2(void) /亮灯方案2rGPMDAT=rGPMDAT & (0x0f) | (11);wait(10);void dis3(void) /亮灯方案3rGPMDAT=rGPMDAT & (0x0f) | (12);wait(10);void dis4(void) /亮灯方案4rGPMDAT=rGPMD
11、AT & (0x0f) | (13);wait(10);void dis5(void) /亮灯方案5rGPMDAT=rGPMDAT & (0x0f) | (13) | (10);wait(10);void dis6(void) /亮灯方案6rGPMDAT=rGPMDAT & (0x0f) | (11) | (12);wait(10);void dis0(void) /亮灯方案7rGPMDAT=rGPMDAT & (0x0f) | (11) | (12)| (13) | (10);wait(10);void main(void)GPM_Init();INT_Init(); while(1) switch(keyva)case 0:dis0();break;case 1:dis1();break;case 2:dis2();break;case 3:dis3();break;case 4:dis4();break;case 5:dis5();break;case 6:dis6();break; .s文件代码:IMPORT main ;引入C语言入口 EXPORT ENTRY AREA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纺织厂加班管理
- 某机械厂生产管理准则
- 2025-2026年注册土木工程师建筑工程测量模拟试题
- 2025-2026年江苏省苏教版高二英语第10章写作练习题
- 某重型机械厂安全制度
- 3人教版三年级上学期语文期中考试预测试卷以及答案
- 《Unit 6 World festivals》同步练习及答案-2026-2027学年人教大同(新版)小学英语六年级上册
- 超声科年度工作计划(2026版)
- 2026下半年初中化学教资面试历年真题题库
- 2026初中道法教资面试结构化真题题库
- 光大证券2027届校园招聘笔试备考题库及答案详解
- 安全用电 课件 绪论
- 2026年中职市场营销(市场营销基础知识)试题及答案
- 2026山东鲁东南水资源配置有限公司社会招聘笔试参考题库及答案详解
- 新生儿窒息复苏指南学习课件
- DB32∕ 4066-2021 居住建筑热环境和节能设计标准
- 抗磷脂综合征抗凝护理查房
- T/CC 8-2023盾构机盾尾密封油脂
- GA 1812.1-2024银行系统反恐怖防范要求第1部分:人民币发行库
- 雾化吸入疗法合理用药专家共识(2024版)课件
- 糖尿病视网膜病变科普
评论
0/150
提交评论