首页 > 其他 > 详细

5.2 SW1控制LED1亮灭(中断功能)

时间:2019-01-17 13:32:00      阅读:339      评论:0      收藏:0      [点我收藏+]

中断:CPU收到中断请求后暂停正在执行的程序,而去执行中断服务函数中的程序,处理结束后,继续执行原来的程序。

能够产生中断请求的中断源如下:

技术分享图片

CC2530中断设置步骤:使能端口组中断(IEN)——端口组中具体端口中断使能/禁止(PxIEN)——使能系统总中断(EA)

具体寄存器详情如下:

技术分享图片

技术分享图片

技术分享图片

中断服务函数格式:以P1为例

#pragma vector=P1INT_VECTOR
__interrupt void P1_INT(void) //注意,interrupt前是两个_
{
  /*处理程序*/
}

中断向量名如下:可查看ioCC2530.h头文件内容

技术分享图片

中断标志位:中断源很多,需要识别触发中断的中断源。

P0、P1、P2端口组的中断标志位分别是P0IF、P1IF、P2IF。

P1_2连接着SW1按键,按键按下P1IF值变为1,CPU就去执行P1的中断服务函数。标志位不能自动复位,需要手动清除该中断标志位。

  P1IF=0;  //清除P1端口组中断标志位

具体是P1中哪一个针脚引起的中断,可以通过PxIFG寄存器的值来判断。

 

5.2 SW1控制LED1亮灭(中断功能)

原文:https://www.cnblogs.com/xixixing/p/10281634.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!