实验原理
中断:当外围设备需要请求服务时,向CPU发出中断请求,CPU响应外围设备中断,停止执行当前程序,转去执行一个外围设备服务的程序,此服务程序称为中断服务处理程序,或称中断服务子程序。中断处理完毕,CPU又返回来执行原来的程序。
中断类型有图中的几种,其中复位中断的优先级是最高的;
优先级次于复位中断的是不可屏蔽中断,当使能时,不可屏蔽中断即发生。
接下来的是12个可屏蔽硬件中断,这种类型的中断需要满足一定条件下才能发生。需要在全局中断使能、不可屏蔽中断使能、可屏蔽中断使能、中断标志寄存器相应位置1且没有更高级的中断在执行的前提下才能发生。
接下来看一下硬件原理图,实验过程中使用的是USER0和USER1,对应接口名字分别是“GPIO0[6]和GPIO6[1]”。
以USER0为例,当按键按下时,GPIO0[6]为高电平,当按键松开时,GPIO0[6]为低电平。
基于StarterWare控制外设时可调用对应的API接口,无需配置复杂的寄存器。GPIO管脚复用配置的函数源码可以查看GPIO.c。
配置GPIO管脚方向的函数源码和函数使用说明可以查看gpio.c。其中,第一个参数时GPIO的基地址,第二个参数是GPIO的编号,第三个参数设置GPIO的方向。
中断使用流程分为7个步骤:
(2)使能DSP全局中断。
(3)配置按键脚的中断触发类型。包括上升沿、下降沿、双边触发三种触发方式。
(4)使能按键管脚所在的BANK中断。
(5)注册中断服务函数。注册中断服务函数是重点,这个函数决定了中断之后要做什么。
(6)映射中断到DSP的12个可屏蔽中断。
(7)使能DSP的可屏蔽中断。
中断使用的部分函数源码和函数使用说明可以查看interrupt.c。
部分的函数源码和函数使用说明可以查看gpio.c。
以中断触发类型配置函数为例,函数源码和函数使用说明可以查看gpio.c。其中,第一个参数是GPIO的基地址,第二个参数是GPIO的编号,第三个参数设置中断类型。
配置GPIO输出值的函数源码和函数使用说明可以查看gpio.c。其中,第一个参数是GPIO的基地址,第二个参数是GPIO的编号,第三个参数设置GPIO的电平。
操作现象
导入工程
编译工程
将CCS连接开发板并加载程序
点击运行程序
查看现象,按下USER1按键,核心板两个LED开始循环点亮。按下USER0按键,核心板个LED停止循环点亮。
-
led灯
+关注
关注
22文章
1592浏览量
107729 -
DSP控制
+关注
关注
0文章
12浏览量
10585 -
GPIO
+关注
关注
16文章
1188浏览量
51825 -
中断控制器
+关注
关注
0文章
59浏览量
9429 -
按键中断
+关注
关注
0文章
15浏览量
6436
发布评论请先 登录
相关推荐
评论