亲爱的DS的团队,
我有两个问题要问你:
1).是否有可能在处理器初始化后直接进行延长睡眠模式,而不是广告(广告可以稍后启动,例如由外部中断启动)?
2).同样,我使用了基本的例子作为基础。我改变了.default_operation_adv.至default_advertise_operation,将默认睡眠模式设置为没有OTP的扩展睡眠,并将默认处理程序配置为“超时场景”。因此,广告在定义的时间间隔和之后停止user_app_adv_undirect_complete ()呼叫arch_ble_ext_wakeup_on ().我希望在这一点上延长睡眠模式,然而,当前保持在0.4 mA左右。这对于延长睡眠模式来说是非常重要的。什么可以阻止处理器切换到睡眠模式?还有什么关键点我没有考虑到吗?
谢谢你,并致以良好的问候
设备:
嗨moguilevski,
谢谢你的问题。
谢谢,PM_DIALOG.
你好PM_Dialog,
对于当前测量,我使用SmartSnippets电源分布器与DK Pro和DK Basic的万用表。在后一种情况下,我使用3V电池并断开电路板与计算机的连接进行测量。两种情况下闪烁通过Keil的调试会话发生。
在实施第1点建议的变更后,在开始时没有任何广告。但是,电流比在2点2(〜0.4mA)中相同。
你说的附加调试器是什么意思?另外,可以定义/取消定义CFG_DEVELOPMENT_DEBUG阻塞睡眠模式吗?
谢谢你!
嗨moguilevski,
你能分享一下你是如何设置睡眠模式的吗?你在app_on_init()中使用arch_set_sleep_mode (ARCH_EXT_SLEEP_ON)吗?当使用Keil IDE时,固件被下载到System-RAM中,DA14585从那里启动。我假设你正在使用“启动/停止调试会话按钮”来下载固件。我你按它一次,然后按“运行”固件运行与调试器附加。这可以防止系统进入睡眠模式。要这样做,您应该按两次“开始/停止调试会话按钮”按钮。不应该取消CFG_DEVELOPMENT_DEBUG宏的定义。你遵循了我在之前评论中建议你的教程吗?
谢谢,PM_DIALOG.
亲爱的PM_Dialog,
我没有在app_on_init()中使用arch_set_sleep_mode(ARCH_EXT_SLEEP_ON),因为假设默认设置:
静态const sleep_state_t app_default_sleep_mode = ARCH_EXT_SLEEP_ON;
在user_config.h中是足够的。但它可能没有考虑到(请纠正我,如果我错了),因为对应的回调函数从主循环回调不是默认的。后添加arch_set_sleep_mode函数到app_on_init(),我测量了2.9µA电流。我假设,它也是点2的解。
的.app_on_init现在是:
非常感谢!
最诚挚的问候
嗨moguilevski,
很高兴您能够在延长睡眠模式下测量正确的电流。这将使设备进入永久睡眠模式。如果你觉得上面的评论有用,请为其他论坛用户标记为“接受”。如果您有任何其他问题,请创建一个新的论坛帖子。
谢谢,PM_DIALOG.