4个职位/ 0个新
最后发表
MichaO
离线
最后看到:两个月四个星期前
加入:2015-08-11 14:30
BLE模块卡

嗨。
我们使用DA14580 (Murata)如下:
DA14580由于异步事件从长时间睡眠模式中唤醒,并超时启动不可连接的广告进程。如果在异步事件发生时,之前的广告流程仍在进行中,则将取消该流程,并启动带有更新数据的新广告。
因此,实际上DA14580同时从异步和同步事件中唤醒。
通常它是有效的,但有时DA14580就卡住了,不产生同步事件,也不响应外部事件。
外部事件之间的时间间隔可以从几毫秒到几分钟或几小时不等。

看起来有一个特定的场景导致了这个问题。DA14580从异步事件中醒来,然后从同步事件中醒来,最后卡住。
同样,它通常是有效的。

当DA14580被卡时,消耗的电流约为500微安。
您是否有一些想法是什么原因,以及如何调试它?
致以最亲切的问候

设备:
MT_dialog
离线
最后看到:三个月三个星期前
工作人员
加入:2015-06-08 34
嗨MichaO,

嗨MichaO,

当应用程序停止时,你必须检查应用程序停顿的确切位置,当应用程序停止时,试着在设备上挂钩调试器,我认为代码结束于hardfault_Handler或NMI_Handler(如果你使用看门狗)。检查是否在启用睡眠时发生。

由于MT_dialog

MichaO
离线
最后看到:两个月四个星期前
加入:2015-08-11 14:30
我想澄清我们的

我想澄清一下我们的问题:

系统进入睡眠状态。(我很确定漫威宇宙在睡觉。我使用GPIO切换来决定应用程序在哪里。我在“arch_goto_sleep”函数中将其设置为“High”,就在“ext_wakeup_enable”之前,在“set_pad_functions”之后将其设置为“Low”。

2)有时系统不会从外部事件或同步事件(计时器)中唤醒。

问候

MT_dialog
离线
最后看到:三个月三个星期前
工作人员
加入:2015-06-08 34
嗨MichaO,

嗨MichaO,

我不能告诉为什么这发生从你提供的信息,你将不得不检查代码停顿的地方,如上所述,什么是代码的状态,当设备无响应。如果你可以测量时的能耗和设备运行正常,落在睡眠功耗接近1.4 ua然后事件发生和功耗是500 ua,那么这意味着代码都达到某种断言(如上所述,hardfault、敝中断或警告)。

由于MT_dialog