一文教你解决EFM32 32位低功耗单片机EM2模式唤醒时会复位问题

2018-06-15 世强
32位低功耗单片机,32位单片机,EFM32,EFM32LG 32位低功耗单片机,32位单片机,EFM32,EFM32LG 32位低功耗单片机,32位单片机,EFM32,EFM32LG 32位低功耗单片机,32位单片机,EFM32,EFM32LG

EFM32系列是SILICON LABS公司的32位低功耗单片机,由于其优越的低功耗特性,被广泛应用于电池供电产品中,如智能锁、无线探测器、IoT传感器等等。最近有工程师反应,使用SuiliEFM32LG系列的32位低功耗单片机开发时,遇到从EM2模式唤醒设备后芯片就会复位的问题。进一步分析了解到现象是:如果设备主频配置成外部时钟源HFXO时,EM2模式唤醒后芯片就会复位,而主频选择内部HFRCO的话,则可以正常唤醒,不会复位。程序的主时钟配置如下:


CMU_ClockSelectSet (cmuClock_HF, cmuSelect_HFXO);

休眠函数调用:

EMU_EnterEM2(true);

因为希望唤醒后,主时钟源依然是HFXO,因此形参设置为true,配置GPIO唤醒。

 

为了定位问题,将工程缩小到最小系统测试,发现可以正常唤醒,不会复位,可以排除硬件原因,看来问题出在其代码中。再逐步恢复用户的工程代码,最终发现问题出在进入EM2模式前清除SRAM的函数。原来用户的工程定义了很多变量,设备进入EM2之前,希望这些变量值都清零。为了免除逐一对变量操作,用户在EMU_EnterEM2(true)函数前面直接调用了memset(SRAM_ADDRESS,0,sizeof());函数来清除SRAM,其中SRAM_ADDRESS 定义地址是0x20000000,这是EFM32LG的SRAM起始地址,这样SRAM从起始地址开始被清零。

 

设备处在EM2模式时,高频振荡器HFXO和HFRCO都停止振动,高频时钟禁止。设备从EM2唤醒后,HFRCO默认被使能,并且作为系统主时钟源。然而设备进入EM2之前运行的系统时钟源可能不是HFRCO,而是其他振荡器,如HFXO,这时就需要使用EMU_EnterEM2(true),形参设置成true。这样设备在进入EM2之前,会将时钟的配置信息保存到SRAM中的,唤醒后,设备可以恢复之前的时钟配置。这种恢复是通过软件恢复的,因此在完成唤醒中断函数之前,不会恢复,时钟恢复是在唤醒中断函数完成之后。


通过查看编译生成的.map文件可以看到,保存时钟配置的SRAM地址是0x20000000至0x20000008,如下图。



从而用户在清除SRAM时,会将时钟配置的信息也清除掉,设备从EM2唤醒时钟就无法恢复,造成芯片复位。


修改措施就是将memset函数的参数SRAM_ADDRESS地址设置成0x2000000A,即从0x2000000A开始清除,这样唤醒时芯片就不再复位,问题解决。


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

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

相关研发服务和供应服务

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】从低功耗角度比较32位单片机EFM32和STM32

Silicon Labs 32位单片机EFM32是世界上功耗最低的单片机之一,比目前市场上所有通用MCU的功耗都要低,本文通过跟目前最流行的MCU之一由ST推出的STM32L系列低功耗MCU进行比较,来向读者展示EFM32系列32位MCU的低功耗性能。

2018-11-14 -  设计经验 代理服务 技术支持 现货查询 批量订货

基于32位单片机的超声波物位计的研制

在一些需要非接触式精准测量的环境下就需要用到超声波物位计,本文探讨的是如何完成一款基于EFM32单片机的超声波物位计。

2019-09-05 -  设计经验 代理服务 技术支持 现货查询 批量订货

【经验】如何配置EFM32 低功耗32位单片机的时钟系统?

Silicon Labs EFM32系列32位单片机,以超低功耗著称,被广泛应用在可穿戴、气表、水表等需要电池供电的低功耗产品中。其时钟系统对于EFM32单片机来说,有如其心脏,它的正确、可靠运行,直接影响单片机系统运行的速度及稳定性,更重要的,它的配置还对单片机功耗影响很大。通过本文阅读,读者不仅可以了解EFM32时钟系统的结构,还能掌握具体配置及时钟频率验证的方法。

2018-07-22 -  设计经验 代理服务 技术支持 现货查询 批量订货

32位单片机EFM32ZG222使用timer输出PWM时,UP模式下,如何调节PWM的频率及占空比?

32位单片机EFM32ZG222的timer在UP模式下输出PWM,其频率由TIMERn_TOP寄存器决定,可以设置TIMERn_TOP寄存器调节频率,同样TIMERn_CCx_CCVB寄存器可设置占空比,但要注意,TIMERn_CCx_CCVB的值必须比TIMERn_TOP小,才能产生有效PWM。

2016-10-25 -  技术问答 代理服务 技术支持 现货查询 批量订货

【应用】带TFT控制器的EFM32GG系列32位单片机在智能商用集中式控制面板中的应用

Silicon Labs推出的EFM32GG系列32位单片机,它基于ARM Cortex-M3核,在TFT控制上,它具有高速、无闪烁、无撕裂、超低功耗等特性,非常适合应用在TFT的控制上,可以给终端用户提供流畅、优质的显示画面。

2019-01-04 -  应用方案 代理服务 技术支持 现货查询 批量订货

如何在IAR中更改Silicon Labs 32位单片机EFM32的stack/heap大小?

点击 Project > Options.找到Runtime Checking > Linker > Config > Linker configuration file选中 Override default点Edit按钮并选择“Stack/Heap Sized”,改变CSTACK,HEAP的 值,通常设置CSTACK=0X400,HEAP=0X200,也可以根据实际情况进行修改。

2018-11-14 -  技术问答 代理服务 技术支持 现货查询 批量订货

将Silicon Labs 32位单片机EFR32BG系列芯片设置为central 在扫描广播包时,是否可以只对一个通道进行扫描?

不可以,蓝牙标准要求必须要在三个通道上跳频接收,也就是说如果使用BLE SDK编写的程序,是一定要跳频接收的。但如果只是测试无法的收发功能,可以使用 Silicon Labs提供的RAILTEST软件测试,通过这个软件,可以指定广播的接收通道。

2018-08-29 -  技术问答

32位单片机EFM32ZG210F32使用3.3V供电时,IO口兼容5V的输入电平吗?

EFM32ZG系列IO口不兼容5V的输入电平,新推出的EFM32 Pear Gecko和Jade Gecko的绝大部分GPIO兼容5V输入,具体请查看PG/JG Datasheet。

2016-10-25 -  技术问答 代理服务 技术支持 现货查询 批量订货

Silicon Labs的32位单片机EFR32主要的的也就是512kb的,通过外扩SPower Integrations的存储器,不使用内部flash作为缓存是否可以完成OTA功能?

Silicon Labs的32位单片机EFR32MG13 具有FLASH 512KB;RAM 64KB;在不占用内部flash空间,通过外扩SPower Integrations的存储器是可以完成OTA远程升级功能。

2018-08-27 -  技术问答
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:32位MCU

价格:¥9.8488

现货: 21,867

品牌:SILICON LABS

品类:32位MCU

价格:¥40.4161

现货: 4,399

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥70.5193

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥67.5466

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥70.5193

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥97.6498

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥87.7082

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥86.2215

现货: 0

品牌:SILICON LABS

品类:32 BIT MCU

价格:¥63.9225

现货: 0

品牌:EPSON

品类:32-bit Single Chip Microcontroller

价格:¥35.1261

现货: 4,800

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:RENESAS

品类:MCU

价格:¥86.0518

现货:1,500

品牌:RENESAS

品类:MCU

价格:¥88.8940

现货:1

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

大电流低功耗变压器定制

可定制变压器支持60W-600W范围,额定电流最高10A,漏感稳定度最小3%;支持开关变压器、电流感测变压器、栅极驱动变压器、LLC谐振变压器、PoE变压器等产品定制。SPQ为5K。

提交需求>

大电流低功耗电感定制

可定制电感最大电流100A,尺寸最小7 x 7 x 3.0mm到最大35 x 34 x 15.5 mm,工作频率100KHZ ~ 2MHZ,感值范围:0.15 ~ 100uh;支持大功率电感,扁平线电感,大电流电感,高频电感,汽车电感器,车规电感,一体成型电感等定制。

最小起订量: 5000 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面