DA14531 Dev Kit休眠模式

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
10个帖子/ 0个新帖子
最后发表
司法
离线
最后看到:1年5个月前
加入:2020-02-07 17:29
DA14531 Dev Kit休眠模式

所以我一直在使用DA14531 Dev Kit Pro,我一直有麻烦让MCU进入休眠模式。我只是想做一些初步测试和功率特性,所以我想使用示例代码。按照“睡眠模式教程”的说明,我无法让它进入休眠模式。在测试板上,我看到的任何地方从200-400 uA取决于电压和是否在buck或boost模式。如果您能提供任何帮助,我将不胜感激。

设备:
PM_Dialog
离线
最后看到:2天18小时前
工作人员
加入:2018-02-08 11:03
嗨djames,

嗨djames,

感谢您在我们的公共蓝牙论坛上发帖,很高兴您一直在使用我们的新Smartbond设备。在“休眠模式教程”中,有3种情况下的休眠模式配置(使用SPI Flash/SysRAM/OTP)。请问您是在哪种情况下测量200-400 uA?如果您正在使用SysRAM,是否附加了调试器?另外,哪些RAM块被保留了?如果你能澄清一下,那将非常有帮助。

谢谢,PM_Dialog

司法
离线
最后看到:1年5个月前
加入:2020-02-07 17:29
我现在用的是

我目前正在使用sysram配置。使用Sysram配置,我尝试过它的调试器和未附加(物理),并且我使用keil和smartsnippets工具进行编程。假设从标题文件的配置正在通过正确传递,所有3个RAM块都已打开。我会猜到这是目前增加的原因?

PM_Dialog
离线
最后看到:2天18小时前
工作人员
加入:2018-02-08 11:03
嗨djames,

嗨djames,

如果附加了调试器(来自Arm Keil IDE),这将阻止系统进入任何睡眠模式。您不需要物理地移除调试器,只需按两次“启动/停止调试会话”按钮。你能指出SPI跳线是否被放置在J1报头中吗?请试着卸载SPI跳线。然后,我建议您使用SmartSnippets工具箱中的Power分析器,检查设备是否停止发布广告并进入休眠状态。在hibernate教程中,广告使用了18秒超时,所以设备将在18秒后进入休眠模式。

谢谢,PM_Dialog

司法
离线
最后看到:1年5个月前
加入:2020-02-07 17:29
所以我能得到

因此,使用休眠模式的设置,我一直能够在大约18秒后将功耗降至约27个UA。SPI跳线被删除,我在降压模式下运行3.3V。使用Agilent 34465A DMM进行该测量。我仍然必须做错了什么,但是把电路板从调试模式中取出了很多帮助。我不确定剩下的问题是什么。

PM_Dialog
离线
最后看到:2天18小时前
工作人员
加入:2018-02-08 11:03
嗨djames,

嗨djames,

你能试着用吗?DA14531配置休眠模式SW的例子,为了设置DK进入休眠模式?你能检测到功耗的变化吗?我们的所有SW示例(包括休眠模式SW示例)都不包含SDK,所以您应该将它们与SDK链接起来。请按照手册中描述的步骤使用Python链接脚本设置软件示例文档。

谢谢,PM_Dialog

司法
离线
最后看到:1年5个月前
加入:2020-02-07 17:29
谢谢你的邮件

感谢您发送示例代码。这稍微降低了当前的消费,但仅仅是微乎其微。之前我的测量值是27.3 uA,现在是26.9 uA。

PM_Dialog
离线
最后看到:2天18小时前
工作人员
加入:2018-02-08 11:03
嗨djames,

嗨djames,

我跑了这件事DA14531睡眠模式教程(HTML)并且冬眠电流在约1.8 ua。我使用DA14531 PRO-DK使用SmartSnippets Toolbox的电源分布器来测量。跳线如图5所示放置:带有JTAG跳线的硬件设置

1.在user_proxr.h中定义cfg_app_goto_hibernate宏

#define cfg_app_goto_hibernate . #define cfg_app_goto_hibernate . #define cfg_app_goto_hibernate . #define cfg_app_goto_hibernate . #define cfg_app_goto_hibernate . #

2.注释掉以下代码片段是user_prox.h中的代码片段

//#如果已定义(cfg_spi_flash_enable)&&定义(cfg_app_goto_hibernation)// #error“config错误:无法定义cfg_spi_flash_enable和cfg_app_goto_hibernation。”//#万一

3.打开所有的三个RAM块,将地址0重新映射到SysRAM,如下所示:

#define cfg_hibernation_ram1 pd_sys_down_ram_on #define cfg_hibernation_ram2 pd_sys_down_ram_on #define cfg_hibernation_ram3 pd_sys_down_ram_on #define cfg_hibernation_remap remap_addr0_to_ram1 #define cfg_hibernation_pad_latch_en false #endif

4.在user_peripher_setup .h文件中,配置用于从休眠模式唤醒设备的GPIO。在本例中,我们选择P0_5作为唤醒GPIO。

#f定义(__da14531__)#define hib_wake_up_port gpio_port_0 #define hib_wake_up_pin gpio_pin_5 #define hib_wake_up_pin_mask(1 << hib_wake_up_pin)#endif

5.在user_config中,将广告期更改为5秒。5SEC后,设备将停止广告并进入休眠模式。

static const strame default_handlers_configuration user_default_hnd_conf = {//配置默认处理程序//可能值所使用的通告操作://  -  def_adv_forever //  -  def_add_adv_with_timeout .adv_scenario = def_adv_with_timeout,//在def_adv_with_timeout中配置广告时段。//它以定时器单元(3分钟)测量。使用ms_to_timerUnits宏将//从毫秒(ms)转换为定时器单位。.advertise_period = ms_to_timerUnits(5000),//配置默认处理程序的安全开始操作//如果启用了安全性(CFG_APP_Security)//可能的值://  -  def_sec_req_never //  -  def_sec_req_on_connect .security_request_scenario = def_sec_req_nver};

6.构建项目。

7.从smarsnippets工具箱中打开Power Profiler。您将需要通过UART/SPI连接以启用功率分析器工具。按“初始化”和“开始”

8.将固件下载到系统RAM中。

9.系统将启动5SEC的广告,然后它将进入休眠模式。请从我的设置中检查附加的屏幕截图。休眠Mod中的电流消耗约为1.8UA。如果休眠电流围绕此值,请使用工具测量它以便具有更好的测量。

谢谢,PM_Dialog

司法
离线
最后看到:1年5个月前
加入:2020-02-07 17:29
所以在做一些挖掘之后

所以在做了一些挖掘和再次玩这个之后,我决定切换到WLCSP17子板而不是QFN24子板。令我惊讶的是,这解决了我的问题。在仔细检查原理图时,我注意到在24引脚部分有一些I/O引脚没有连接到17引脚部分。移除J8和J19上的所有跳线将我的当前消耗降低到700nA。经过一些试验和错误,它看起来像连接在J8引脚1和2跳线导致26uA增加的电流消耗。我不确定这是否是我的板子独有的,但如果不是,我认为删除这个跳线应该包含在教程中列出的步骤中。

PM_Dialog
离线
最后看到:2天18小时前
工作人员
加入:2018-02-08 11:03
嗨djames,

嗨djames,

非常感谢您宝贵的反馈。在J8引脚1和2上设置跳线,C_TRIG触发被启用,映射到P0_9上。那个引脚只在QFN24包上可用!我已经让团队知道了,我们下周初会做一些测试。我会让你知道最新的情况!

谢谢,PM_Dialog