【经验】EFM32系列32位超低功耗MCU之复位源读取

2018-08-08 世强

EFM32是Silicon Labs公司推出的32位超低功耗MCU系列,由于其超低功耗和丰富的外设等特性,被广泛的使用各种产品开发。很多时候工程师需要监控MCU的复位原因,根据复位原因来查找程序可能存在的问题。但是很多工程师通过读取RMU_RSTCAUSE寄存器得到复位源不准确,本文以EFM32GG-STK3700 Demo为例,指导大家如何正确读取EFM32的复位源。


EFM32有提供RMU(Reset Management Unit),RMU监控EFM32片上所有的复位源,当有一个或多个复位源的复位信号有效时RMU将MCU置于复位状态。当复位源对应的复位信号有效,则RMU_RSTCAUSE寄存器中该复位源对应的标志位将被置位,因此在MCU复位重新运行时可以通过查询该寄存器获知引发MCU复位的复位源。需要注意的是,不同系列EFM32微控制器所拥有的复位源不相同,详细情况可参考对应的参考手册。


RMU_RSTCAUSE寄存器的有些位在复位后不是确定的值,可以查看EFM32GG参考手册的Table9.1,因此通过直接读取RMU_RSTCAUSE得到的值来判断复位源,可能会得到错误的结果。为了屏蔽这些被错误置位的标志位,我们需要对从 RMU_RSTCAUSE 寄存器读出的值进行一定的处理,这样才能得到正确的读取值。这项工作库函数内部已经完成,所以推荐通过调用库函数的方式实现该寄存器值的读取。


EFM32GG-STK3700参考程序:

#include <stdint.h>

#include <stdbool.h>

#include "em_device.h"

#include "em_chip.h"

#include "em_cmu.h"

#include "bsp.h"

#include "em_rmu.h"

 

#define PB0_PORT    gpioPortB

#define PB0_PIN     9

#define PB1_PORT    gpioPortB

#define PB1_PIN     10

 

#define PB_PUSHED   0

#define PB_UNPUSHED 1

 

int main(void)

{

  /* Chip errata */

  CHIP_Init();

  //Get Reset Cause

  uint32_t rstcause = RMU_ResetCauseGet();

 

  // Clear Reset

RMU_ResetCauseClear();

 

  // Initialize LED driver

  BSP_LedsInit();

  BSP_LedClear(0);

  BSP_LedClear(1);

 

  // Set push button pins as inputs

  GPIO_PinModeSet(PB0_PORT, PB0_PIN, gpioModeInput, 0);

  GPIO_PinModeSet(PB1_PORT, PB1_PIN, gpioModeInput, 0);

 

  // POR reset

  if ((rstcause & RMU_RSTCAUSE_PORST))

  {

    BSP_LedSet(0);

    BSP_LedSet(1);

  }

  // Pin reset

  else if ((rstcause & RMU_RSTCAUSE_EXTRST))

  {

    BSP_LedSet(0);

    BSP_LedClear(1);

  }

  // Software reset

  else if ((rstcause & RMU_RSTCAUSE_SYSREQRST))

  {

    BSP_LedClear(0);

    BSP_LedSet(1);

  }

 

  while (1)

  {

    // If PB0 is pressed, then perform a software reset

    if (GPIO_PinInGet(PB0_PORT, PB0_PIN) == PB_PUSHED)

    {

      NVIC_SystemReset();

    }

  }

}

 

本例程测试了3种复位源:1,上电复位;2,外部引脚复位;3,系统软件复位。

 

3种复位操作:1,将板子拔掉电源线,重新上电,实现上电复位;2,按一下开发板上的复位按键,实现外部引脚复位;3,按一下开发板上PB1,实现系统软件复位。

 

测试结果:1,上电复位,LED0和LED1都亮;2,外部引脚复位,LED0亮,LED1灭;2;系统软件复位,LED0灭,LED1亮。


相关推荐

元件商城

集成电路·元件·材料·仪器·电器模组·阻容感·部件        采购服务热线:400-887-3266
型号 描述 价格(含增值税)

开发套件

Ginat Gecko Starter Kit. EFM32GGXXX开发套件

供货保障

原厂认证

世强代理

现货1

价格¥ 206.8615

64k Flash 8k RAM USB ADC AES

选型推荐

供货保障

原厂认证

世强代理

现货212,000

价格¥ 14.5328

512k Flash, 128k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货12,490

价格¥ 38.4474

"32k Flash, 4k RAM, ADC, AES"

选型推荐

供货保障

原厂认证

世强代理

现货48,356

价格¥ 10.7616

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货29,812

价格¥ 17.2002

128k Flash, 16k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货11,000

价格¥ 20.6954

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货8,950

价格¥ 16.3724

1024k Flash, 128k RAM, AES

选型推荐

原厂认证

世强代理

现货6,000

价格¥ 48.0132

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货5,000

价格¥ 17.2002

1024k Flash, 128k RAM, USB, 8x18 LCD, AES

供货保障

原厂认证

世强代理

现货1,528

价格¥ 53.4400

512k Flash, 128k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货1,450

价格¥ 43.4143

512k Flash, 128k RAM, USB, AES

选型推荐

供货保障

原厂认证

世强代理

现货1,288

价格¥ 45.7138

256k Flash, 32k RAM, AES

原厂认证

世强代理

现货1,270

价格¥ 34.6762

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货1,000

价格¥ 18.2120

1024k Flash, 128k RAM, USB, AES

选型推荐

原厂认证

世强代理

现货1,000

价格¥ 57.2112

1024k Flash, 128k RAM, USB, 8x36 LCD, AES

原厂认证

世强代理

现货1,000

价格¥ 62.0861

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货964

价格¥ 19.6836

4k Flash, 1k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货490

价格¥ 8.4621

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货490

价格¥ 18.2120

4Ω, High Speed, Low Voltage, Dual, DPDT Negative Signal Handling Analog Switch

供货保障

原厂认证

世强代理

现货300

价格¥ 4.1500

128k Flash, 32k RAM, 8x20 LCD, AES

供货保障

原厂认证

世强代理

现货270

价格¥ 31.5489

64k Flash, 16k RAM, 4x24 LCD, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 19.0398

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 17.2002

512k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 38.4474

1024k Flash, 128k RAM, 8x20 LCD, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 50.4967

64k Flash, 32k RAM, 8x20 LCD, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 23.8227

32k Flash, 8k RAM, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 16.8323

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货260

价格¥ 17.2002

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货250

价格¥ 16.3724

128k Flash, 16k RAM, 4x22 LCD, AES

原厂认证

世强代理

现货250

价格¥ 22.5350

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货250

价格¥ 16.0044

"1024k Flash, 128k RAM, AES"

供货保障

原厂认证

世强代理

现货237

价格¥ 48.0132

"256k Flash, 32k RAM, USB, AES"

供货保障

原厂认证

世强代理

现货237

价格¥ 36.7918

EFM32 Gemstone

供货保障

原厂认证

世强代理

现货232

价格¥ 29.6174

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货230

价格¥ 19.6836

64k Flash 8k RAM ADC AES

原厂认证

世强代理

现货170

价格¥ 12.8772

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货168

价格¥ 23.1788

128k Flash, 16k RAM, 4x40 LCD, AES.

原厂认证

世强代理

现货168

价格¥ 25.0184

Transistor-Small Signal (<=1A)

选型推荐

供货保障

原厂认证

世强代理

现货163

价格¥ 17.2762

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货160

价格¥ 16.8323

256k Flash, 32k RAM, AES

供货保障

原厂认证

世强代理

现货160

价格¥ 34.6762

64k Flash, 32k RAM, USB, 8x16 LCD, AES

供货保障

原厂认证

世强代理

现货160

价格¥ 25.6623

512k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货160

价格¥ 38.4474

128k Flash, 16k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货160

价格¥ 20.6954

64k Flash, 16k RAM, 4x22 LCD, AES

原厂认证

世强代理

现货160

价格¥ 19.0398

"1024k Flash, 128k RAM, AES"

供货保障

原厂认证

世强代理

现货160

价格¥ 48.0132

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货160

价格¥ 17.2002

128k Flash, 16k RAM, 4x22 LCD, AES

供货保障

原厂认证

世强代理

现货160

价格¥ 22.5350

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货150

价格¥ 50.9566

1024k Flash, 128k RAM, 8x18 LCD, AES

供货保障

原厂认证

世强代理

现货110

价格¥ 50.4967

256k Flash, 32k RAM, USB, AES

供货保障

原厂认证

世强代理

现货106

价格¥ 42.3105

64k Flash, 32k RAM, AES

原厂认证

世强代理

现货100

价格¥ 22.2590

64k Flash, 16k RAM, 4x22 LCD, AES

供货保障

原厂认证

世强代理

现货100

价格¥ 19.0398

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货100

价格¥ 17.2002

1024k Flash, 128k RAM, USB, 8x34 LCD, AES

原厂认证

世强代理

现货95

价格¥ 59.6946

EFM32 Giant Gecko 11 Ultra Low Power MCU, Cortex-M4 72MHz QFP100 2048kB(Flash) 512kB(RAM) 80GPIO

原厂认证

世强代理

现货90

价格¥ 70.9161

"1024k Flash, 128k RAM, AES"

原厂认证

世强代理

现货90

价格¥ 54.2678

1024k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 54.2678

512k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 43.4143

1024k Flash, 128k RAM, 8x36 LCD, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 56.7513

512k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 45.7138

512k Flash, 128k RAM, USB, AES

选型推荐

供货保障

原厂认证

世强代理

现货86

价格¥ 40.7469

64k Flash, 32k RAM, 8x20 LCD, AES

选型推荐

供货保障

原厂认证

世强代理

现货70

价格¥ 27.4099

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货65

价格¥ 20.6954

64k Flash, 16k RAM, No AES

原厂认证

世强代理

现货63

价格¥ 14.7167

128k Flash, 16k RAM, 4x24 LCD, AES

供货保障

原厂认证

世强代理

现货60

价格¥ 22.5350

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货60

价格¥ 16.8323

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货60

价格¥ 20.6954

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货40

价格¥ 57.2112

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货35

价格¥ 16.3724

开发套件

Zero Gecko Starter Kit. EFM32ZGXXX开发套件

选型推荐

供货保障

原厂认证

世强代理

现货31

价格¥ 206.8615

64k Flash, 16k RAM, No AES

原厂认证

世强代理

现货30

价格¥ 14.7167

Isolated Volt/Curr Det,SMD+LF

原厂认证

世强代理

现货30

价格¥ 12.6692

1024k Flash, 128k RAM, USB, 8x34 LCD, AES

原厂认证

世强代理

现货25

价格¥ 60.1545

64k Flash 8k RAM ADC AES

原厂认证

世强代理

现货25

价格¥ 13.7969

512k Flash, 128k RAM, USB, 8x36 LCD, AES

供货保障

原厂认证

世强代理

现货20

价格¥ 49.6689

128k Flash, 16k RAM, 4x24 LCD, AES

原厂认证

世强代理

现货20

价格¥ 22.5350

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货20

价格¥ 19.6836

AC/DC Logic Interface Coupler,LF

原厂认证

世强代理

现货19

价格¥ 12.4932

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货19

价格¥ 18.2120

512k Flash, 128k RAM, AES

原厂认证

世强代理

现货17

价格¥ 38.4474

1024k Flash, 128k RAM, USB, AES

原厂认证

世强代理

现货14

价格¥ 50.9566

64k Flash, 16k RAM, 4x24 LCD, AES

原厂认证

世强代理

现货6

价格¥ 19.0398

开发套件

Tiny Gecko Starter Kit. EFM32TGXXX开发套件

供货保障

原厂认证

世强代理

现货6

价格¥ 206.8615

512k Flash, 128k RAM, AES

原厂认证

世强代理

现货4

价格¥ 38.4474

256k Flash, 32k RAM, AES

原厂认证

世强代理

现货3

价格¥ 37.8846

512k Flash, 128k RAM, USB, 8x34 LCD, AES

原厂认证

世强代理

现货3

价格¥ 47.7373

开发工具

Development Kit

供货保障

原厂认证

世强代理

现货3

价格¥ 2,299.4825

开发工具

"Development Kit"

供货保障

原厂认证

世强代理

现货2

价格¥ 2,566.2225

开发套件

Leopard Gecko Starter Kit. EFM32LGXXX开发套件

供货保障

原厂认证

世强代理

现货2

价格¥ 206.8615

开发套件

"Starter Kit". EFM32WGXXX开发套件

供货保障

原厂认证

世强代理

现货2

价格¥ 206.8615

开发工具

Development Kit. EFM32WGXXX开发工具

供货保障

原厂认证

世强代理

现货2

价格¥ 2,566.2225

开发套件

Starter Kit. EFM32-G8XX开发套件

供货保障

原厂认证

世强代理

现货2

价格¥ 206.8615

512k Flash, 128k RAM, USB, AES

原厂认证

世强代理

现货1

价格¥ 45.7138

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货0

即将到货260

价格¥ 50.9566

1024k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货0

价格¥ 56.6593

512k Flash, 128k RAM, USB, 8x18 LCD, AES

供货保障

原厂认证

世强代理

现货0

价格¥ 42.7704

256k Flash, 32k RAM, USB, 8x16 LCD, AES

原厂认证

世强代理

现货0

128k Flash, 32k RAM, USB, 8x16 LCD, AES

供货保障

原厂认证

世强代理

现货0

价格¥ 33.6645

256k Flash, 32k RAM, USB, 8x18 LCD, AES

供货保障

原厂认证

世强代理

现货0

价格¥ 38.5394

本文由Carol原创,版权归世强元件电商所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强元件电商”。

  • +1 赞(0)
  • 收藏

评论

登录   |    立即注册

提交评论

最新评论

  • 守猪待兔 Lv4 . 资深工程师 2018-08-08
    学习学习
没有更多评论了
有问题?向百人技术专家提问
我要提问

400-887-3266(工作日 9:00-18:00)

service@sekorm.com

世强元件电商
最好的电子研发服务平台

  • 领先国内半年新元件/新技术/新方案
  • 全品类覆盖数百个原厂资料
  • 正品低价/供货保障
  • 大量现货,支持快速购买
下载世强元件电商APP
工程师创新研发的神器
知、选、研、用一站式服务

搞研发 找元件
下载世强元件电商APP