ARM中断编程试验_第1页
ARM中断编程试验_第2页
ARM中断编程试验_第3页
ARM中断编程试验_第4页
ARM中断编程试验_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ARM断编程实验ro川大孝SICHUAN UNIVERSITY数字信息技术实验学 校学 院专 业实验题目 ARM 中断实验编程小组成员二.一七年三月一.实验目的通过本次实验了解中断是什么以及学会如何进行中断编程.二.实验要求根底实验:利用Exynos4412的K1、K2这2个I/O 引脚的中断模式,分 另I点亮LED1和LED2扩展实验:配置K3为中断模式,点亮LED3.三.实验仪器1、计算机2、US济$ 9脚串口线通过USBf计算机连接,母头与实验平台连接3、Exynos4412处理器开发与应用实验平台4、BL-JTAG仿真器通过USBf计算机连接,JTAG 口与实验平台连接5、电源线与实验

2、平台相连接的交流电源线四.实验原理1.电路原理K1 、K2、K3分别与GPX1_1、GPX1_2 GPX3_2相连,在没有按下按键 时这些引脚上一直处于高电平,当按键按下时产生下降病虫发中断.KEY验电路图实验箱上按键位2、编程流程去除GPX1_2 GPX1_2, GPX3_2内部上下拉属性,配置为中断模式.GPIO限制器中关闭屏蔽、使能中断;在GIC中断限制器中使能中断;设置中断优先级;使能GIC;选择中断发送给CPU0等待中断产生,然后进入中断处理函数;去除中断源.五.实验内容(1)连接好开发板与计算机之间的串口线和BL-JTAG仿真器连接好开发板的交流电源线(3)接下来利用计算机演示集成

3、开发环境的使用,以及 LED灯的限制实验软硬件 仿真流程,翻开Eclipse ,导入工程Key_Int,进行相应代码编写,编译,配置相 关debug信息,装载程序,按下 KEY1,KEY2 KEY3ft putty串口终上查看相应 的信息输出以及可以看到 LED1和LED2和LED3亮灭情况.六.实验步骤根据实验一步骤,连接仿真器、用口线,翻开 Eclipse ,导入工程Key_Int, 进行相应代码编写,编译,配置相关 debug信息,装载程序,按下 KEY1,KEY2 在putty串口终端上查看相应的信息输出以及可以看到 LED1和LED1亮灭情况.修改代码,完成扩展实验K3中断签需要配置

4、的存放器GPX3.PUD 4-5 位设为 0GPX3.CON 8-11 位设为 0XFEXT_INT43_CON 8-1位设置为 0x2EXT_INT43_MASK 第 2 位设为 0ICDISER.ICDISER2 第 0 位设为 1K3中断效劳程序中需要配置的存放器GPX1.DAT第3位和第5位为0GPL1.DAT 第 1 位为 1EXT_INT43_PEND 第 2 位设为 1ICDICPR.ICDICPR2 第 0 位设为 0七.实验结果工 fljpiv :吧mf£F,r rT r可以看到按下K2对应的按键第二颗灯亮第一颗和第三颗灯灭可以看到按下K3对应的按键第三颗灯亮第一颗

5、和第二颗灯灭代码分析(主要对LED3的代码分析,LED1与LED2的编写根本类似):/Interrupt GPX3_2: Turn off LED1, turn off LED2, turn on LED3/此处编写LED相关处理GPL1. DAT |= 0x1 << 1; /turn on LED3GPX1. DAT &=(0x1 << 5);GPX1. DAT &= (0x1 << 3);/Turn off LED1, turn off LED2第2位设为1EXT_INT43_PEND |= 0x1 << 2; /EXT_IN

6、T43_PENDICDICPR.ICDICPR2 &= (0x1 << 0);/ICDICPR.ICDICPR2第0位设为0printf( "PWRON3(GPX1_1:XEINT09) IRQ interrupt ! Turn on LED1, turn off LED2, turn off LED3n");/Clear Pend/此处去除K3对应的中断标志位 break ;这段代码是扩展实验的代码,该段执行的是当按下K3按键时cpu检测到相应中断源产生,进入switch 选择,LED3 常亮,关闭 LED1 , LED2/在此处添加K3的相关存放器配

7、置GPX3. PUD = GPX3. PUD & -(0x3 <<(2*2);/ GPX3.PUD 4-5 位设为 0GPX3. CON = (GPX3. CON & (0xF << (2*4)| (0xF << (2*4);/GPX1_3:8-11位设为0XFEXT_INT43_CON = (EXT_INT43_CON & (0x7 << (2*4) | 0x2 <<(2*4);/EXT_INT43_CON 8-11位设置为 0x2EXT INT43 MASK = (EXT_INT43_MASK &

8、-(0x1 << 2);/ 第2位设为 0/ 配置 K3对应的 ICDISER.ICDISER2ICDISER. ICDISER2 |= 0x1 <<0; /第 0 位设为 1结果分析在完成扩展实验的代码并烧录进去后,LED4是不断闪烁的,按下 K1时,LED1灯常亮LED2 LED3熄灭,当按下 K2时,LED2常亮LED1 LED3熄灭,当按下K3时,LED3常亮而LED1LED2熄灭.到达了实验 要求源程序先配置存放器去除上拉电阻以及配置GPIO为中断属性,配置中断触发方式等一系列的配置操作进行中断代码的配置初始化,然后再在中断函数中写入中断函数的代码进行配置,在main()函数中,通过不断配置gpl2.dat存放器让LED4不断进行闪烁的操作.在中断 函数中通过按下按键,亮起对应的LED灯到达实验要求心得体会通过这次实验,我们进一步了解了中断代码的程序编写以及对这款芯片的使用,在以前的课程学习中我们接触过根底的51系列单片机中断程序的编写,中断程序的编写思路根本一致,都是在 main函 数中进行存放器相关的配置,在中断函数中写入中断代码等待中断函 数的执行.但是对不同类型的芯片具体的使用过程就会有所不同,这款芯片比起最根底的51系列要复杂一些所以初始化存放器的配置过 程要繁琐一些,对于存放器的使用要更复杂,中断函数并没有像以前 的那样专门

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论