- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字信息技术实验
学 校
学 院
专 业
实验题目 ARM 中断实验编程
小组成员
二Ο一七年三月
一.实验目的
通过本次实验了解中断是什么以及学会如何进行中断编程。
二.实验要求
基础实验:利用 Exynos4412 的 K1、 K2 这 2 个 I/O 引脚的中断模式,分别点亮LED1和LED2,
扩展实验:配置K3为中断模式,点亮LED3.
三.实验仪器
1、计算机
2、USB转9脚串口线(通过USB与计算机连接,母头与实验平台连接)
3、Exynos4412处理器开发与应用实验平台
4、BL-JTAG 仿真器(通过USB与计算机连接, JTAG口与实验平台连接)
5、电源线(与实验平台相连接的交流电源线)
四.实验原理
1.电路原理 K1、 K2、K3 分别与 GPX1_1、 GPX1_2、 GPX3_2相连, 在没有按下按键时这些引脚上一直处于高电平,当按键按下时产生下降沿触发中断。
EXYNOS4412 中断实验电路图
实验箱上按键位置
编程流程
去除 GPX1_2、 GPX1_2, GPX3_2 内部上下拉属性,配置为中断模式 。
GPIO 控制器中关闭屏蔽、使能中断;
在 GIC 中断控制器中使能中断;
设置中断优先级;
使能 GIC;
选择中断发送给 CPU0;
等待中断产生,然后进入中断处理函数;
清除中断源。
五.实验内容
连接好开发板与计算机之间的串口线和 BL-JTAG 仿真器
连接好开发板的交流电源线
接下来利用计算机演示集成开发环境的使用,以及LED灯的控制实验软硬件仿真流程,打开Eclipse,导入工程Key_Int,进行相应代码编写,编译,配置相关debug信息,装载程序,按下KEY1,KEY2,KEY3在putty串口终上查看相应的信息输出以及可以看到LED1和LED2和LED3亮灭情况。
实验步骤
根据实验一步骤,连接仿真器、串口线,打开Eclipse,导入工程Key_Int,进行相应代码编写,编译,配置相关debug信息,装载程序,按下KEY1,KEY2,在putty串口终端上查看相应的信息输出以及可以看到LED1和LED1亮灭情况。
修改代码,完成扩展实验
K3中断签需要配置的寄存器
GPX3.PUD 4-5位设为0
GPX3.CON 8-11位设为0XF
EXT_INT43_CON 8-11位设置为0x2
EXT_INT43_MASK 第2位设为0
ICDISER.ICDISER2 第0位设为1
K3中断服务程序中需要配置的寄存器
GPX1.DAT 第3位和第5位为0
GPL1.DAT 第1位为1
EXT_INT43_PEND 第2位设为1
ICDICPR.ICDICPR2 第0位设为0
七.实验结果
可以看到按下K1对应的按键第一颗灯亮第二颗和第三颗灯灭
可以看到按下K2对应的按键第二颗灯亮第一颗和第三颗灯灭
可以看到按下K3对应的按键第三颗灯亮第一颗和第二颗灯灭
代码分析(主要对LED3的代码分析,LED1与LED2的编写基本类似):
//Interrupt GPX3_2: Turn off LED1, turn off LED2, turn on LED3
//此处编写LED相关处理
GPL1.DAT |= 0x1 1; //turn on LED3
GPX1.DAT = ~(0x1 5);
GPX1.DAT = ~(0x1 3);//Turn off LED1, turn off LED2
EXT_INT43_PEND |= 0x1 2; //EXT_INT43_PEND 第2位设为1
ICDICPR.ICDICPR2 = ~(0x1 0);//ICDICPR.ICDICPR2 第0位设为0
printf(PWRON3(GPX1_1:XEINT09) IRQ interrupt !! Turn on LED1, turn off LED2, turn off LED3\n);
//Clear Pend
//此处清除K3对应的中断标志位
break;
这段代码
您可能关注的文档
最近下载
- GB 50251-2015 输气管道工程设计规范.docx VIP
- Leica徕卡V-LUX 114型中文说明书.pdf
- 学习延安精神我和延安精神.ppt VIP
- 个人简历表格下载word(最新).pdf VIP
- 附件宁夏回族自治区药品配送企业诚信积分管理办法试行第一条为了建立严格的诚信记录和配送竞争制度规范药品统一配送行为提高配送到位率和配送及时率根据.doc VIP
- 合肥市第六届广玉兰杯中小学经典诵读节目评选结果一览.PDF VIP
- 5 济南的泉水PPT_HSK5标准教程上.pptx VIP
- 武安勘察文字2023.6.28修改-A3.doc VIP
- 山东省济南市2023-2024学年四年级上学期语文期中试卷(含答案)3.pdf VIP
- 2024北京人大附中初二(上)期中道德与法治(含答案).pdf VIP
文档评论(0)