微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > CC2510芯片功耗降不下来,求大神指点下!.....

CC2510芯片功耗降不下来,求大神指点下!.....

时间:10-02 整理:3721RD 点击:
CC2510无线芯片功耗降不下来,大神帮忙指点下啊。在发送模式下的电流测得26mA,但是在睡眠模式3的待机电流却为140uA,这与说明手册上的0.6uA相比高了好多。已经把芯片上的LED灯都拆了,没有其他的外围电路,程序里面的main函数也只保留了初始化时钟,和初始化按键中断。程序贴出来了,大神给看下吧。
void Set_clock(int source)
{
      if(source)//CRYSTAL 0 CR 1
          {
        CLKCON |= 0x40;
        while(!HIGH_FREQUENCY_RC_OSC_STABLE);
        SLEEP |= 0x04;
      }
      else{                                                       
        SLEEP &= ~0x04;//打开两个振荡器
        while(!XOSC_STABLE);
        CLKCON &= ~0x47;//高速晶振,系统时钟26Mhz,定时器时钟默认13Mhz
        SLEEP |= 0x04;//关闭内部时钟
      }
}

void Initial_led(void)
{
        P1DIR |= 0x02; //P1_1定义为输出
        led_send = 0;  //LED
}

void Initial_int_key(void)
{
   PICTL |= 0x02;//P1下降沿触发
   P1IFG &= ~0x04;//清除P1中断标志
   P1IEN |= 0x04;//使能P12中断
   INT_SETFLAG(INUM_P1INT, INT_CLR);//操作IRCON2.P1IF,清楚P1中断
   INT_ENABLE(INUM_P1INT, INT_ON);//操作IEN2,使能P1中断
}

void Initial(void)
{
        Set_clock(0);
        Initial_led();
        Initial_int_key();
}
void main(void)
{
    Initial();
    delay(1000);
    while(1);
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top