【AT-START-L021测评】4、standby模式功耗测试
本帖最后由 sujingliang 于 2024-11-25 20:45 编辑AT-START-L021开发板上提供3.3v和1.8v为MCU供电,可以通过JP2跳线进行选择。将万用表设置到电流档,串联接入JP2(2引脚)和3v3或1v8可以测量MCU工作时电流。
可通过以下程序使MCU进入standby模式
void pre_while(void)
{
/* enable pwc clock */
crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
if(pwc_flag_get(PWC_STANDBY_FLAG) != RESET)
{
/* wakeup from standby */
pwc_flag_clear(PWC_STANDBY_FLAG);
at32_led_on(LED2);
}
if(pwc_flag_get(PWC_WAKEUP_FLAG) != RESET)
{
/* wakeup event occurs */
pwc_flag_clear(PWC_WAKEUP_FLAG);
at32_led_on(LED3);
}
at32_led_on(LED4);
/*delay to check led status*/
delay_ms(1000);
delay_ms(1000);
/* enable wakeup pin1 */
pwc_wakeup_pin_enable(PWC_WAKEUP_PIN_1, TRUE);
/* enter standby mode */
pwc_standby_mode_enter();
}
pwc_wakeup_pin_enable(PWC_WAKEUP_PIN_1, TRUE);使能PA0唤醒MCU
pwc_standby_mode_enter(); MCU进入standby模式
通过万用表测量结果:
其实,上面的数据也就参考一下吧,因为几十块钱的万用表测量出来的数据误差很大,测量同一电流不同档位测量的数值都是不同的。
补充:后来发现VDD_MCU还给电平转换IC供电,所以上面测试的数据比单独测MCU大很多,要单独测MCU功率还要动烙铁,不想破坏开发板,先放放吧。
3v3、standby
1.8v、standby
3.3v 1个LED:
1.8v 1个LED:
请问使用的外部高速晶振HEXT,还是内部高速晶振HICK? muyichuan2012 发表于 2024-11-25 13:06
请问使用的外部高速晶振HEXT,还是内部高速晶振HICK?
crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);
//CRM_CLOCK_SOURCE_HEXT = 0x01, /*!< high speed external crystal */
用的是外部高速时钟
用低速时钟应该功耗能低一些
使用AT-START-L021开发板,并配合BSP Standby demo,使用万用表实测
3.3V供电(AT-LINK供电,JP2接2/3pin)时:点亮一个LED实际电流维持在5.46mA,进入standby模式之后实际电流维持在1.3uA
1.8V供电(AT-LINK供电,JP2接1/2pin)时:点亮一个LED实际电流维持在5.15mA,进入standby模式之后实际电流维持在1.1uA
如上测试结果比较接近DS的规格值。你可以再排查一下你的测试方法。
注意:
如文中所讲,万用表测试数据误差大,同时某些万用表可能存在过流保护导致供电以及MCU运行异常。 ArterySW 发表于 2024-11-25 14:33
使用AT-START-L021开发板,并配合BSP Standby demo,使用万用表实测
3.3V供电(AT-LINK供电,JP2接2/3pin) ...
我这万用表不用指望了{:sweat:},平时就是测通断听个响还行。
测试休眠电流,把LCD灯关掉,看看电流多大 ArterySW 发表于 2024-11-25 14:33
使用AT-START-L021开发板,并配合BSP Standby demo,使用万用表实测
3.3V供电(AT-LINK供电,JP2接2/3pin) ...
发现VDD_MCU还给电平转换IC供电,所以直接从JP2串入万用表测的电流包括MCU和电平转换IC的电流。
如果要想单独测MCU功耗,只有焊下R13,再从JP3串联。这个测试暂时先放放吧。{:shocked:}
明显的电流值不对,大的离谱了。
页:
[1]