TI CC2530 学习笔记-17-NewBit-CC2530-LP-外部中断唤醒PM3

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_21352095/article/details/83047235

TI CC2530 学习笔记-目录

功能描述:演示使用CC2530进入低功耗,然后使用外部中断将其唤醒,例子程序没有优化深度睡眠时的功耗。仅演示外部中断(按键S0)唤醒CPU的方法。

  1. main函数代码
void main( void )
{
  halMcuWaitUs(10000); //等待默认的内部晶振稳定
  PICTL |= 0x01;     //P0下降沿引发中断
  P0IEN |= 0x01;    //使能P00中断
  P0IE = 1;  //使能P0中断
  EA = 1;  //使能总中断
  /* 进入PM3 */
  NOP();
  NOP();
  NOP();
  SLEEPCMD |= 0x03;   //设置即将进入的电源模式为PM3
  P0DIR |= 0x40;//P0_6输出
  while(1)
  {    
    LED_R_ON();//点亮LED
    halMcuWaitUs(50000);//50ms
    halMcuWaitUs(50000);
    LED_R_OFF();
	PCON = 0x01;       //进入设置的模式  
    NOP();              //这是唤醒后执行的第一条语句,然后再进入中断
  }
}
  1. 中断函数
/* @brief     P0中断服务程序, 按键按下引发中断,然后唤醒CPU
*/
#pragma vector = P0INT_VECTOR
 __interrupt void P0_ISR(void)
{
  P0IF = 0;
  P0IFG = 0;
}

代码:NewBit-ZDK CC2530 基础例程

猜你喜欢

转载自blog.csdn.net/qq_21352095/article/details/83047235
今日推荐