【经验】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开发套件

选型推荐

供货保障

原厂认证

世强代理

现货2

价格¥ 218.8049

64k Flash 8k RAM USB ADC AES

选型推荐

供货保障

原厂认证

世强代理

现货442,000

价格¥ 14.6399

32-bit ARM Cortex-M0+, Cortex-M3 and Cortex-M4 microcontrollers

EFM32GG230系列

512k Flash, 128k RAM, AES

QFN64

选型推荐

供货保障

原厂认证

世强代理

现货18,490

价格¥ 38.7307

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

选型推荐

供货保障

原厂认证

世强代理

现货42,326

价格¥ 10.8409

32k Flash, 4k RAM, ADC, AES

选型推荐

供货保障

原厂认证

世强代理

现货39,232

价格¥ 8.5245

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货29,812

价格¥ 17.3269

256k Flash, 32k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货28,000

价格¥ 35.8583

256k Flash, 32k RAM, USB, AES

选型推荐

供货保障

原厂认证

世强代理

现货26,000

价格¥ 32.2447

32k Flash, 4k RAM, AES, 3 Op-Amps

选型推荐

供货保障

原厂认证

世强代理

现货18,116

价格¥ 14.1766

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货10,000

即将到货21,000

价格¥ 20.8479

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货6,950

价格¥ 16.4930

32-bit ARM Cortex-M0+, Cortex-M3 and Cortex-M4 microcontrollers

EFM32GG230系列

1024k Flash, 128k RAM, AES

QFN64

选型推荐

原厂认证

世强代理

现货6,000

价格¥ 48.3670

16k Flash, 4k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货6,000

价格¥ 8.0612

32k Flash, 4k RAM, ADC, No AES (Avail Sep)

选型推荐

供货保障

原厂认证

世强代理

现货5,752

价格¥ 11.6748

32k Flash, 4k RAM, 8x18 LCD, AES, 3 Op-Amps

选型推荐

供货保障

原厂认证

世强代理

现货4,250

价格¥ 17.9755

64k Flash, 32k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货3,200

价格¥ 22.4230

32k Flash, 4k RAM, AES, 3 Op-Amps

选型推荐

供货保障

原厂认证

世强代理

现货3,154

价格¥ 14.8252

32k Flash, 4k RAM, 8x18 LCD, AES, 3 Op-Amps

供货保障

原厂认证

世强代理

现货2,199

价格¥ 17.9755

128k Flash, 16k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货2,000

价格¥ 20.8479

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货2,000

价格¥ 17.3269

256k Flash, 32k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货2,000

价格¥ 30.3915

512k Flash, 128k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货1,990

价格¥ 43.7341

64k Flash 8k RAM ADC AES

选型推荐

供货保障

原厂认证

世强代理

现货1,456

价格¥ 13.8986

256k Flash, 32k RAM, AES

原厂认证

世强代理

现货1,270

价格¥ 34.9317

32k Flash, 4k RAM, 8x20 LCD, AES, 3 Op-Amps

选型推荐

供货保障

原厂认证

世强代理

现货1,026

价格¥ 17.9755

256k Flash, 32k RAM, AES

原厂认证

世强代理

现货1,000

价格¥ 30.3915

128k Flash, 32k RAM, AES

供货保障

原厂认证

世强代理

现货1,000

价格¥ 26.1293

128k Flash, 32k RAM, AES

原厂认证

世强代理

现货1,000

价格¥ 26.1293

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

原厂认证

世强代理

现货1,000

价格¥ 62.5435

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货1,000

价格¥ 18.3461

64k Flash 8k RAM USB ADC AES

原厂认证

世强代理

现货1,000

价格¥ 15.5664

64k Flash 8k RAM USB ADC AES

原厂认证

世强代理

现货980

价格¥ 12.2308

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

原厂认证

世强代理

现货940

价格¥ 27.9825

64k Flash 8k RAM ADC AES

供货保障

原厂认证

世强代理

现货525

价格¥ 10.5629

32k Flash, 4k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货495

价格¥ 10.8409

32k Flash 8k RAM USB ADC AES

原厂认证

世强代理

现货495

价格¥ 11.6748

32k Flash, 4k RAM, ADC, No AES (Avail Sep)

供货保障

原厂认证

世强代理

现货491

价格¥ 11.6748

"32k Flash 4k RAM ADC AES"

供货保障

原厂认证

世强代理

现货490

价格¥ 9.9143

64k Flash 8k RAM USB

供货保障

原厂认证

世强代理

现货490

价格¥ 11.3042

32k Flash 4k RAM ADC AES

供货保障

原厂认证

世强代理

现货490

价格¥ 12.2308

64k Flash 8k RAM USB ADC AES

供货保障

原厂认证

世强代理

现货490

价格¥ 12.2308

8k Flash, 2k RAM, AES

供货保障

原厂认证

世强代理

现货490

价格¥ 6.8567

4k Flash, 1k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货490

价格¥ 8.5245

16k Flash, 4k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货470

价格¥ 8.0612

16k Flash, 4k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货460

价格¥ 10.0070

64k Flash 8k RAM ADC AES

选型推荐

供货保障

原厂认证

世强代理

现货445

价格¥ 12.9720

256k Flash, 32k RAM, AES

选型推荐

供货保障

原厂认证

世强代理

现货442

价格¥ 30.3915

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货435

价格¥ 18.3461

64k Flash 8k RAM ADC AES

选型推荐

供货保障

原厂认证

世强代理

现货408

价格¥ 12.9720

32k Flash, 4k RAM, ADC, AES

供货保障

原厂认证

世强代理

现货390

价格¥ 8.5245

64k Flash 8k RAM USB ADC AES

原厂认证

世强代理

现货312

价格¥ 15.1031

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

选型推荐

供货保障

原厂认证

世强代理

现货275

价格¥ 27.9825

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

供货保障

原厂认证

世强代理

现货270

价格¥ 31.7814

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货260

价格¥ 17.3269

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 17.3269

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

供货保障

原厂认证

世强代理

现货260

价格¥ 31.9667

32k Flash, 8k RAM, AES

供货保障

原厂认证

世强代理

现货260

价格¥ 16.9563

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

供货保障

原厂认证

世强代理

现货260

价格¥ 23.9982

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

供货保障

原厂认证

世强代理

现货260

价格¥ 50.8687

32-bit ARM Cortex-M0+, Cortex-M3 and Cortex-M4 microcontrollers

EFM32GG230系列

512k Flash, 128k RAM, AES

QFN64

供货保障

原厂认证

世强代理

现货260

价格¥ 38.7307

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

供货保障

原厂认证

世强代理

现货260

价格¥ 19.1800

16k Flash, 4k RAM, AES, 3 Op-Amps

供货保障

原厂认证

世强代理

现货260

价格¥ 14.5472

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

原厂认证

世强代理

现货250

价格¥ 22.7010

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货250

价格¥ 16.1224

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货250

价格¥ 16.4930

32-bit ARM Cortex-M0+, Cortex-M3 and Cortex-M4 microcontrollers

EFM32GG230系列

"1024k Flash, 128k RAM, AES"

QFN64

供货保障

原厂认证

世强代理

现货237

价格¥ 48.3670

EFM32 Gemstone

供货保障

原厂认证

世强代理

现货232

价格¥ 29.8356

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货205

价格¥ 19.8286

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

供货保障

原厂认证

世强代理

现货170

价格¥ 50.8687

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货168

价格¥ 23.3496

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

原厂认证

世强代理

现货168

价格¥ 25.2027

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货160

价格¥ 17.3269

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货160

价格¥ 16.9563

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

供货保障

原厂认证

世强代理

现货160

价格¥ 22.7010

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

原厂认证

世强代理

现货160

价格¥ 19.1800

"1024k Flash, 128k RAM, AES"

供货保障

原厂认证

世强代理

现货160

价格¥ 48.3670

512k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货160

价格¥ 38.7307

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货130

价格¥ 51.3320

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

供货保障

原厂认证

世强代理

现货128

价格¥ 53.8338

256k Flash, 32k RAM, USB, AES

供货保障

原厂认证

世强代理

现货106

价格¥ 42.6223

64k Flash, 32k RAM, AES

原厂认证

世强代理

现货100

价格¥ 22.4230

64k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货100

价格¥ 17.3269

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

供货保障

原厂认证

世强代理

现货100

价格¥ 19.1800

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

原厂认证

世强代理

现货95

价格¥ 60.1344

512k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 43.7341

"1024k Flash, 128k RAM, AES"

原厂认证

世强代理

现货90

价格¥ 54.6677

1024k Flash, 128k RAM, AES

供货保障

原厂认证

世强代理

现货90

价格¥ 54.6677

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

原厂认证

世强代理

现货90

价格¥ 71.4386

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

供货保障

原厂认证

世强代理

现货90

价格¥ 57.1694

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

供货保障

原厂认证

世强代理

现货70

价格¥ 27.6118

128k Flash, 16k RAM, AES

供货保障

原厂认证

世强代理

现货65

价格¥ 20.8479

64k Flash, 16k RAM, No AES

原厂认证

世强代理

现货63

价格¥ 14.8252

128k Flash, 16k RAM, AES

原厂认证

世强代理

现货60

价格¥ 20.8479

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

供货保障

原厂认证

世强代理

现货60

价格¥ 22.7010

32k Flash, 8k RAM, AES

原厂认证

世强代理

现货60

价格¥ 16.9563

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货40

价格¥ 57.6327

64k Flash, 16k RAM, AES

原厂认证

世强代理

现货35

价格¥ 16.4930

开发套件

Zero Gecko Starter Kit. EFM32ZGXXX开发套件

选型推荐

供货保障

原厂认证

世强代理

现货31

价格¥ 218.8049

64k Flash, 16k RAM, No AES

原厂认证

世强代理

现货30

价格¥ 14.8252

1024k Flash, 128k RAM, USB, AES

供货保障

原厂认证

世强代理

现货20

价格¥ 51.3320

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

  • +1 赞(0)
  • 收藏

评论

登录   |    立即注册

提交评论

最新评论

  • MR.XU Lv7 . 资深专家 2018-10-22
    收藏学习
  • 海锋 Lv7 . 资深专家 2018-10-08
    学习了
  • 徐静静 Lv4 . 资深工程师 2018-09-30
    学习了!
  • 守猪待兔 Lv4 . 资深工程师 2018-08-08
    学习学习
没有更多评论了
有问题?向百人技术专家提问
我要提问

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

service@sekorm.com

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

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

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