打印
[STM32L0]

入门级的低功耗-STM32L031-Nucleo-32 评测

[复制链接]
3289|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lovecat2015|  楼主 | 2016-3-5 20:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ST在使用NUCLEO (NUCLEO -64)系列开发板推广其Cortex-M内核MCU取得成功后,再接再厉推出了32引脚的NUCLEO-32 和144引脚的NUCLEO-144 ,通过差异化的配置使受众更加广泛。今天要测试的是非常小巧的STM32L031-NUCLEO-32,板载的是低功耗系列的入门级芯片STM32L031。感谢与非网和ST官方提供的开发板,同时感谢苏柚和沐紫的辛勤劳动!


1、关于L0系列和STM32L031
         STM32 L0 MCU 作为ST低功耗MCU系列中的一员,其每个部分都通过优化达到了卓越的低功耗水平,是一款功耗性能破纪录的真正超低功耗MCU,其采用的Cortor-M0+内核与STM32超低功耗特性的独有结合,使STM32 L0非常适合电池供电或供电来自能量收集的应用。整个系列不断的完善和推出新品,满足各个方面的需求。


        STM32 L0提供了动态电压调节、超低功耗时钟振荡器、LCD接口、比较器、DAC及硬件加密。新的自主式外设(包括USART、I²C、触摸传感控制器)分担了ARM Cortex-M0+内核的负荷,减少了CPU唤醒次数,因此有助于减少处理时间及功耗。它还内置有其它一些增值特性,例如16位ADC(硬件过采样)、无需外晶振的USB、超低功耗模式中的短唤醒时间及低功耗模式下仍可工作的通信外设,实现了集成特性、高性能与超低能耗之间的完美平衡。STM32 L0具有高达64 KB闪存、8 KB RAM及高达2 KB的嵌入式EEPROM(无需闪存模拟),采用32到64针封装,包括节省空间的WLCSP36。
其整个系列通过外设的不同又分为STM32L0X1、STM32L0X2、STM32L0X3:



评分
参与人数 1威望 +5 收起 理由
mmuuss586 + 5 赞一个!
沙发
lovecat2015|  楼主 | 2016-3-5 20:04 | 只看该作者
STM32L0x1基本型为STM32 L0系列的入门级产品,提供WLCSP32小封装,具有高达64 K字节闪存、高达8 K字节RAM及高达2 K字节嵌入式EEPROM 此系列还具有带DMA功能的外设、实时时钟、低功耗时钟、硬件加密模块以及每秒100 K采样时仅需48 µA的超低功耗12位ADC。
由于极低的运行时功耗,STM32L0x1系列非常适合鼠标或键盘等应用。得益于嵌入式的硬件加密模块(128位AES)及超低功耗模式时仍能工作的外设,它也适合燃气表和水表等工业应用。L0系列拥有丰富的产品线,根据不同配置分布如下:



STM32L031作为入门级的一员,其低功耗功能相当优秀,各个模式模式功耗如下:

· 0.25 uA Standby mode (2 wakeup pins)
· 0.38 uA Stop mode (16 wakeup lines)
· 0.68 uA Stop mode + RTC + 8 KB RAM retention
· Down to 76 uA/MHz in Run mode
· 5 us wakeup time (from Flash memory)
· 41 uA 12-bit ADC conversion at 10 ksps

除了优秀的功耗消耗,STM32L031 外设也非常丰富,除了常用的外设外,还有能到低功耗模式下运行的LPTIM和LPUART能使系统功耗进一步的降低。
内核及外设整体结构


使用特权

评论回复
板凳
lovecat2015|  楼主 | 2016-3-5 20:06 | 只看该作者
2、关于NUCLEO-STM32L031-32 开发板
  NUCLEO-STM32L031-32开发板给我们第一感觉是非常小巧,但是板载资源依然非常丰富,用于调试的STlink、复位按键、测电流的引脚、LED、Arduino-Nano、该有的都有了,一点都不逊色于我们非常熟悉的NUCLEO-64开发板。

正面是主芯片STM32L031


背面是STlink 使用的STM32F103


由于板载了ST-LINK/V2-1,不但给我们调试带来了方便,同时还有Virtual Com port 和Mass storage .
虚拟串口可以方便用于调试输出信息了PC端串口。
Mass storage .功能则可以和mbed一起使用在线编写代码下载运行



使用特权

评论回复
地板
lovecat2015|  楼主 | 2016-3-5 20:06 | 只看该作者
通过mbed网站能看到板子上的引出的外设,我们可以根据下图外设引脚的分布连接自己的
外设搭建测试平台,这样能在项目前期进行快速的评估

除了在线免费的IDE之外mbed还有很多开源的丰富的例子学习参考。

3、关于测试程序
   下面使用keil5创建一个测试程序用于简单的打印信息及点亮LED,在使用keil5开发前要安装STM32L031对应的PACK和相应的开发包STM32Cubel0。在main函数里面简单的打印信息和点亮LED:
<font face="Tahoma" size="3">// Header:  BSP file
// Author:        creep
// Date:                2016-3-3

int main(void)
{

  HAL_Init();
  SystemClock_Config();
        Uart2_init();

  while (1)
  {
    HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_3);
    HAL_Delay(1000);
                printf("Hi,I am creep !!!\r\nNUCLEO-STM32L031-32\r\nSTÉçÇø:www.stmcu.org\r\n");
  }
}</font>


使用特权

评论回复
5
lovecat2015|  楼主 | 2016-3-5 20:07 | 只看该作者
输出信息如下:


     上面很简单的对L0系列及STM32L031进行了介绍,并测试了STM32L031-NUCLEO-32的串口外设打印信息。L0系列的重点在于其低功耗的休眠和低功耗外设的使用,低功耗的休眠测试可以参考STM32CUBEL0里面的详细的例子,低功耗外设也有对应的测试DEMO。LPUART和LPTIM的使用可以参考下之前L4的时候写的几个测试例子,主要是低功耗下串口唤醒和低功耗下PWM输出:  在最后面有详细的代码。

STM32L031.rar

572.44 KB

使用特权

评论回复
6
netlhx| | 2016-3-5 20:10 | 只看该作者
很好,有潜质

使用特权

评论回复
7
paderboy| | 2016-3-5 21:59 | 只看该作者
不错不错。。。赞。。。

使用特权

评论回复
8
mmuuss586| | 2016-3-6 14:58 | 只看该作者

不错,赞一个;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

80

主题

816

帖子

0

粉丝