查看: 986|回复: 0
打印 上一主题 下一主题

关于STM8L低功耗设计测试分享

[复制链接]
跳转到指定楼层
沙发
发表于 2016-5-11 19:20:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      最近在做一个手持设备,需要低功耗模式,用的是STM8L151,刚用这个,还不太熟,发现stm8l的资料也比较少,官方中文资料几乎没有。
      看了好多帖子,也花了挺多时间,把功耗部分测在此分享一下。如有问题,可跟帖讨论。

停机状态(无唤醒)
        1. PCB仅焊接MCU,电源3.3V,复位电容(10nF)和一个退偶电容(0.1uF), 程序中将所有GPIO确定输出低电平,主函数中直接halt(),电流约 1.730uA
        2. 在1的基础上,增加一条语句,PWR_UltraLowPowerCmd(ENABLE),或者 PWR->CSR2 = 0x2,再执行halt,电流下降至最低,0.400uA,达到官方指标
        3. 在实际产品上的测试(电路上增加了LCD,LSE晶振等),GPIO确定电平,超低功耗开启,停机状态 halt(),电流约 0.38uA
        4. 在3的基础上,开启RTC日历,电流约 1.3uA
        5. 初始化并开启LCD(未显示),最低电流约 2.25uA (LCD显示参数: 死区时间 7, 持续周期 0, HD=0,LCD外部电源)
        6. LCD正常工作,电流约 5.95uA (LCD显示参数: 死去时间 3, 持续周期 5, HD=0,LCD外部电源),显示效果均衡,LCD电流与LCD玻璃相关
        7. 在6的基础上,HD=1 电流约 18uA

低功耗运行状态      
        1. 将主时钟切换为 LSI,所有GPIO确定电平,开超低功耗,关RTC、LCD、LSE等,主函数执行 while(1), 电流约 95uA
        2. 在1的基础上,关电压调节器(默认开启),电流约 3.75uA;  达到标称电流值。
        3. 在2的基础上,将主时钟切换为 LSE,电流约为 4.32uA
        4. 在3的基础上,开启RTC,电流约为 4.59uA
        5. 在4的基础上,开启LCD(不显示),电流约为 8.8uA,LCD显示,电流约为 9.25uA

正常工作状态
        1. PCB仅焊接MCU,电源3.3V,复位电容(10nF)和一个退偶电容(0.1uF),程序中将所有GPIO确定输出低电平
        2. 在1的基础上,主函数直接执行 while(1),功耗在 930~950uA 波动 (默认2MHz)
        3. 在2的基础上,while(1) 中加入5个 nop(),功耗降低 200uA(即在730~750uA波动)
        4. 在3的基础上,将时钟配置位16MHz,功耗约为 3.7mA
        5. 在4的基础上,在while(1)中加入 wfi()/wfe(),功耗约为 720uA
        6. 在5的基础上,将时钟配置位1MHz,功耗约为 325uA

说明: 对于 stm8l 这类低功耗芯片,多数时候应该工作在停止或者等待状态,全速运行功耗意义不大,以下两个实际工作模拟
        1. 在一般定时显示程序中(主函数中延时500ms刷新显示),16MHz时钟,延时函数使用wfe功耗约1mA, 使用while(flag)功耗约4.5mA
        2. 在实际低功耗项目中,RTC和LCD一直工作,CPU脉冲工作,RTC约500ms唤醒一次,刷新显示,其电池寿命主要取决于LCD显示效果,正常一般可做到6uA,显示均衡
        3. 以上测试所用的LCD均为4*34段,如果更小的LCD,可能功耗更小







回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入中科因仑

本版积分规则

快速回复 返回顶部 返回列表