经过实际产品的对比,STM8L的低功耗完胜MSP430。在此记录。欢迎有不同意见发表。 我的测试环境如下: 1、外部晶振分频得1M 2、一个16位定时器 3、一个按键中断 4、一个串口 波特率:115200 5、一个LED灯 6、电源3.3V 7、主程序运行:按键中断从串口打印“STM8L PK MSP430”,定时器500MS中断将LED取反。 以上硬件条件分别在STM8L和MSP430上全速进行。实测电流进行比较而得结果,有兴趣的朋友可以试试看看。 讨论说明: 低功耗一直是各大MCU厂商争夺的焦点。最近,网上非常流行一个视频(意法半导体STM8L低能耗系列MCU技术演示),视频中ST的工程师分别用两个土豆,RFID线圈,一杯热水对STM8L MCU进行供电并使得系统正常运行。这不禁让我对STM8的运行功耗产生了兴趣,到底多低的电量STM8L就能工作呢?MCU内部哪个模块功耗最高?如何才能尽可能的降低STM8L的功耗? 首先让我们来看看厂商DS中提供的数据: 1. 工作电压1.8V到3.6V 2. 5个低功耗模式:
首先让我们来看看 STM8-DISCOVERY 工作电压到底多低? 测试电路很简单,一个外置稳压电源,一个万用表串联用来测当前电流,一个万用表并联用来测试当前电压。 在电源电压为1.8056V时系统不工作,STM8板上液晶不亮。 在电源电压为1.8135V时系统工作,片内程序执行,IDD测试当前电流为1.12mA ,按照STM8L用户手册([url=http://www.st.com/internet/com/search/search.jsp?q=CD00278045&entqr=3&entsp=a&output=xml_no_dtd&sort=date:d1&client=ST_COM_PlanA_frontend&ud=1&oe=UTF-8&ie=UTF-8&proxystylesheet=ST_COM_PlanA_frontend&site=ST_COM]CD00278045[/url]文档)的介绍,我们把电流表串入JP1的2,3号引脚。此时电流表中显示为1.08mA。基本与IDD测量一致。通过此次测量,可以认为STM8的工作电压介于1.80V到1.81V之间,基本满足数据手册上所述的1.8V供电电压。 STM8的DS中有提到:Consumption: 195 μA/MHz,这是什么意思呢?难道系统的时钟频率还和功耗有关系? 根据用户手册的图17可以看到,STM8 MCU所用的时钟信号主要来自于4个地方HSE(外部高速晶振)、HIS(内部16M RC振荡器)、LSE(外部低速晶振)以及LSI(内部38KHz低速振荡器)。这四个时钟通过选择器进行选择,并通过系统的分频器进行(1,2,4,8,16,32,64,128)分频。由于板子上没有外接高速晶振,所以只能使用芯片内部提供的16MHZ RC振荡器进行测试。为了更好的展现测试效果,我们对每种分频分别进行了测试。STM8的最高频率为16MHz,最低频率为16/128=125KHZ。下面各图分别为在各种分频系数下用板载IDD所测得得RUN模式下的消耗电流。(测试程序关闭了除ADC模块和液晶显示屏模块外的所有模块,并且电源为3.3V)。分频分别为:1、2、4、8、16、32、64、128。 通过测试,我们可以知道,在同一电压下,不同的工作频率器件所消耗的电流是不一样的,总体来看呈下降趋势。当这个下降却不是完全线性的,当系统分频因子从1变为2时效果比较明显,从8变为16和32时,系统消耗电流只有微小的改变,如果系统的分频因子从64变为128基本上可以说没有变化。如果还能够有256分频的话,按照前面的规律估计所消耗的电流变化也不会很大。难道这就是STM8L的极限了?当然不是,前面我们说过,STM8 MCU有4个时钟源,除去外部高速时钟板子上没有焊接外,其余三个我们都可以使用。上面我们测试的结果就是用内部16Mhz的RC时钟源作为主时钟得出的,为了使得STM8工作在更低的频率之下,我们可以选择内部38k低速时钟(即LSI)作为主时钟。以LSI为主时钟,并且分频因子为1时系统消耗电流各不相同。 |
增强型80251,16位CPU平台
HC16Lxx具有低功耗性能:
0.9μA @ 3V 低功耗模式1:主时钟关闭,外部32.768 kHz 晶振时钟关闭,包括上电复位有效,寄存器,RAM和CPU数据保存状态。
1.2μA @ 3V 低功耗模式2:除了包括低功耗模式1的配置外,RTC工作并且外部32.768 kHz 晶振工作。
1.4μA @ 3V 低功耗模式3:除了包括低功耗模式1的配置外,基于电荷泵型的LCD工作。
1.6μA @ 3V 低功耗模式4:除了包括低功耗模式2的配置外,基于电荷泵型的LCD工作。
1.7μA @ 3V 低功耗模式5:除了包括低功耗模式4的配置外,WDT使用外部32.768 kHz 晶振工作。
2.0μA @ 3V 低功耗模式6:除了包括低功耗模式4的配置外,WDT使用内部专用的RC OSC工作。
40μA/MHz@3V 空闲模式:CPU停止工作,外设模块运行,主时钟运行。
260μA/MHz@3V 工作模式:CPU和外设模块运行,程序在Flash内部运行。
芯片从低功耗模式下的唤醒时间是3μs。
具有高安全性,128位JTAG密码授权保护,使用密码认证机制可以防止外部工具及人员的非法访问。
集成了DES协处理器。
集成了硬件64位真随机数模块(RNG)。
集成了硬件16位循环冗余校验码(CRC)。
每颗芯片具备8字节的唯一设备标识号,启动主程序之前,需进行ID解密,从而保证客户代码的安全。
可通过smart card调用RNG/DES,通过多重认证机制来加强系统的高安全性。
执行主程序前,通过硬件DMA与CRC计算功能检验Flash内部程序正确后,才启动主程序,保证程序的完整性,增加系统可靠性。
将MCU中的部分代码或算法进行DES加密放在Flash中,运行前解密到RAM中,在RAM中运行高安全性程序,以保护密钥以及特殊程序,增加程序的安全性。
增强型80251,16位CPU平台
HC16Lxx具有低功耗性能:
0.9μA @ 3V 低功耗模式1:主时钟关闭,外部32.768 kHz 晶振时钟关闭,包括上电复位有效,寄存器,RAM和CPU数据保存状态。
1.2μA @ 3V 低功耗模式2:除了包括低功耗模式1的配置外,RTC工作并且外部32.768 kHz 晶振工作。
1.4μA @ 3V 低功耗模式3:除了包括低功耗模式1的配置外,基于电荷泵型的LCD工作。
1.6μA @ 3V 低功耗模式4:除了包括低功耗模式2的配置外,基于电荷泵型的LCD工作。
1.7μA @ 3V 低功耗模式5:除了包括低功耗模式4的配置外,WDT使用外部32.768 kHz 晶振工作。
2.0μA @ 3V 低功耗模式6:除了包括低功耗模式4的配置外,WDT使用内部专用的RC OSC工作。
40μA/MHz@3V 空闲模式:CPU停止工作,外设模块运行,主时钟运行。
260μA/MHz@3V 工作模式:CPU和外设模块运行,程序在Flash内部运行。
芯片从低功耗模式下的唤醒时间是3μs。
具有高安全性,128位JTAG密码授权保护,使用密码认证机制可以防止外部工具及人员的非法访问。
集成了DES协处理器。
集成了硬件64位真随机数模块(RNG)。
集成了硬件16位循环冗余校验码(CRC)。
每颗芯片具备8字节的唯一设备标识号,启动主程序之前,需进行ID解密,从而保证客户代码的安全。
可通过smart card调用RNG/DES,通过多重认证机制来加强系统的高安全性。
执行主程序前,通过硬件DMA与CRC计算功能检验Flash内部程序正确后,才启动主程序,保证程序的完整性,增加系统可靠性。
将MCU中的部分代码或算法进行DES加密放在Flash中,运行前解密到RAM中,在RAM中运行高安全性程序,以保护密钥以及特殊程序,增加程序的安全性。
st和ti对于低功耗的理解不同,实现方式也不同
两者的内核部分时钟停止和唤醒速度差不多,us级的,主要区别在于外设上
st更倾向于让用户自己动手在进低功耗模式前关掉部分的外设时钟 内部稳压等模拟外设,唤醒后需要手动启动一部分外设和初始化时钟(比如stm32l151,唤醒后默认MSI,意味着每次唤醒后都要手动切一遍时钟,而切时钟又需要设置flash延时和缓存启用一类的东西),整体来说要get到比较低的平均功耗,需要熟悉st的外设特性。
ti的外设更自主一点儿,用起来很利索,一句lpm3完事儿,唤醒时钟也会自己切回来,ad采集完自己就停了,内部参考啥的也会自己进入低功耗模式,总之比较省心一点儿,比较简单的低功耗设计还是喜欢用430。2021年了,st涨价了,突然觉得430就不是那么贵了。
最终把程序优化完,stm8l051和msp430g2553的平均功耗不会差多少,至少实际用电池测下来,续航差不多。
RE:STM8L和MS430的低功耗对比
Cortex-M3内核的EFM32的低功耗也比MSP430强....
回复:STM8L和MS430的低功耗对比
RE:STM8L和MS430的低功耗对比
回复:STM8L和MS430的低功耗对比
有没有测试数据之类的,简单的说说不能说明问题!
同意fuli的建议,听到这样的结果很激动人心,同时也更期待看到你那边的数据分享~~
RE:【深入讨论】STM8L和MS430的低功耗对比
回复:【深入讨论】STM8L和MS430的低功耗对比
RE:【深入讨论】STM8L和MS430的低功耗对比
RE:【深入讨论】STM8L和MS430的低功耗对比
以上硬件分别运行在STM8L和MSP430上进行,全速运行,电源3.3V,外部晶振分频得1M运行频率。实测电流进行比较而得结果,有兴趣的朋友可以试试看看。
RE:【深入讨论】STM8L和MSP430的低功耗对比
回复:【深入讨论】STM8L和MSP430的低功耗对比
回复:【深入讨论】STM8L和MSP430的低功耗对比
还有留上的说STM8L05xx那颗,其实就是STM8L152xx,不过是某些市场的原因,专攻一个特地应用推出的料号。功耗与152是一样的,只是性价比高些。
RE:【深入讨论】STM8L和MSP430的低功耗对比
RE:【深入讨论】STM8L和MSP430的低功耗对比
RE:【深入讨论】STM8L和MSP430的低功耗对比
除了全速跑之外,应该增加一个不是全速跑的。这样才全面些!
12楼的图,我也不知道是怎么测出来的。而且430的系列那么多,有一些是老的系列,肯定没有新的系列那么好!