实验七-中断实验.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验七、 中断实验 实验操作步骤 实验原理 实验内容 实验设备 实验目的 1 2 3 4 5 * 一.实验目的 通过实验掌握ARM处理器的中断方式和中断处理。 熟悉S3C44B0X的中断控制寄存器的使用; 了解不同中断触发方式对中断产生的影响; 理解S3C44B0X处理器的中断响应过程; 熟练掌握如何进行ARM处理器中断处理的软件编程方法。 * 硬件:Embest EduKit-III实验平台,Embest ARM标准/增强型仿真器套件,PC机。 软件:Embest IDE Pro ARM集成开发环境,Windows 98/2000/NT/XP。 二、实验设备 * 三、实验内容 编写中断处理程序,实现: 由UART0选择输入使用不同的中断触发方式,使能外部中断Eint4,5,6,7; 在不同的中断触发方式下,使用按钮SB1202触发EINT6,同时点亮LED1204一段时间后熄灭; 在不同的中断触发方式下,使用按钮SB1203触发EINT7,同时点亮LED1205一段时间后熄灭。 文档中按钮标号、LED标号均采用实验硬件平台上标号的简写形式: 按钮:SB1202 – SB2 SB1203 – SB3 LED:D1204 – LED1 D1205 – LED2 * 四、实验原理 S3C44B0X的中断控制器及对中断控制器的操作 程序状态寄存器的F位和I位 中断模式(INTMOD) 中断挂起寄存器(INTPND) 中断屏蔽寄存器(INTMSK) 中断源 向量中断模式(仅针对IRQ) 中断优先级 * 四、实验原理 电路原理 * 五、实验操作步骤 1. 准备实验环境 使用Embest仿真器连接目标板,使用Embest EduKit-III实验板附带的串口线,连接实验板上的UART0和PC机的串口。 2. 串口接收设置 在PC机上运行windows自带的超级终端串口通信程序(波特率115200、1位停止位、无校验位、无硬件流控制);或者使用其它串口通信程序。 * 3. 打开实验例程 1)拷贝光盘CD1\Software\EduKit44b0文件夹到EmbestIDE\Examples\Samsung\目录下; 2) 使用Embest IDE通过Embest JTAG仿真器连接实验板,打开实验例程目录4.3_int_test子目录下的int_test.pjf 例程,编译链接工程; 3) 点击IDE 的Debug菜单,选择Remote Connect项或F8键,远程连接目标板; 4) 点击IDE 的Debug菜单,选择Download下载调试代码到目标系统的RAM中; 5) 打开View菜单Debug WindowsRegister寄存器观察窗口(快捷键Alt+5),在寄存器观察窗口下面选择外围寄存器(Peripheral),将INTERRUPT中断寄存器组展开,重点观察INTPND和I_ISPR寄存器值的变化,如下图所示: * 6) 在工程管理窗口中双击int_test.c就会打开该文件,分别在 “uart_printf(” Press the buttons \n“);”以及 “if(f_ucIntNesting)”设置断点后,点击Debug菜单Go或F5键运行程序,程序正确运行后,会在超级终端上输出如下信息 boot success... External Interrupt Test Please Select the trigger: 1 - Falling trigger 2 - Rising trigger 3 - Both Edge trigger 4 - Low level trigger 5 - High level trigger any key to exit... * 7) 使用PC机键盘,输入所需设置的中断触发方式后,程序停留在第一个断点处,此时注意观察图4-6中中断控制寄存器的值,即中断配置情况; 8) 再次点击Debug菜单Go或F5键运行程序,并等待按下按钮产生中断;当按下SB2或SB3后,程序停留到中断服务程序入口的断点,再次观察图4-6中中断控制寄存器的值,双击INTPND和I_ISPR可以打开寄存器窗口,注意观察[21]位值在程序运行前后的变化(提示:中断申请标志位应该被置位); 9) 点击Debug菜单下的Step over或F10键执行程序,注意观察在执行完该函数返回前后,程序状态寄存器的变化(提示:CPSR在返回时恢复中断产生前的值);继续单步执行程序,从中断返回后,程序会判断被按下的按键点亮相应的LED:按下SB2点亮LED1 或 按下SB3点亮LED2; 10) 结合

文档评论(0)

哆啦 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档