How to wake up DA14580 device

19 posts / 0 new
Last post
asmaith.
Offline
Last seen:5 years 3 months ago
专家
Joined:2014-11-20 08:45
How to wake up DA14580 device

Hello All,

How to wake up DA14580 device Synchronously via the BLE timer in order to serve the BLE events.

谢谢

Keywords:
JE_Dialog
Offline
Last seen:1 month 3 days ago
Staff
Joined:2013-12-05 14:02
Hello Asmaitha, have you read

您好ASMATHA,您是否阅读了关于如何同步(BLE定时器)或异步(中断)配置睡眠模式的应用程序注意?

http://support.dialog-semicondiondionder.com/um-b-006-user-manual-sleep-mode-code-configuration.

This is quite a comprehensive apps note, and is the best place to start.

BR JE_Dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
你好je_dialog,

你好je_dialog,

I'd wonder how to identify the wake up events,such as two short pulse to wake up the system asynchronous.Thank you!

BR Young

Vishnusudhan.
Offline
Last seen:2年5个月前
Joined:2018-10-01 10:58
Hi DATeam,

Hi DATeam,

I couldn't able to download this document .Can you suggest how to download ?

谢谢,
vishnu

asmaith.
Offline
Last seen:5 years 3 months ago
专家
Joined:2014-11-20 08:45
你好je_dialog,

你好je_dialog,
谢谢a lot for replying back.
I have gone through the document.
但即使在da14580_config.h文件中禁用扩展和深度睡眠模式之后,也如下:
#undef CFG_EXT_SLEEP
#undef cfg_deep_sleep.

We are unable to see that the device is awake always and also it's not advertising continuously.

谢谢,
asmaith.

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
你好je_dialog,

你好je_dialog,

I'd wonder how to identify the wake up events,such as two short pulse to wake up the system asynchronous.Thank you!

BR Young

MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
Joined:2015-06-08 11:34
Hi young_dialog,

Hi young_dialog,

我没有得到你的问题,可以澄清吗?您可以使用唤醒控制器并使用多个引脚设置它,如果这是您的意思。

谢谢MT_dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

谢谢你的注意,我的意思是如何识别唤醒系统的引脚,例如一个引脚发送数据,另一个引脚执行ADC.i使用该方法来实现它的方法

wucpt_quadec.c doucment.But I find function 'wkupct_register_callback()' can only register one callback function.So when any pin active,they will come to the same callback and there is no

寄存器指示销活动。这是我的米ethod right?Is it any suggestion?

布罗尔,
年轻

MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
Joined:2015-06-08 11:34
Hi young_dialog,

Hi young_dialog,

Yes thats right, you can declare many wakeup pins, but you have only one callback, if you want to identify from which pin you got the interrupt you can try to read the status of the pin after getting the interrupt and check which of your pins are high or low.

谢谢MT_dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

当中断从诸如5US高脉冲的短脉冲导致时,读取引脚状态时难以识别。

我也想知道系统进入延长睡眠模式时如何保留PIN状态,谢谢!

布罗尔,
年轻

MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
Joined:2015-06-08 11:34
Hi young_dialog,

Hi young_dialog,

There is no other way doing this, you can either read your pins or you can try to set the GPIO IRQs for the connected pins if the sources connected matches the available IRQs. You dont have to do anything explictly in order for the 580 to retain the state of the pins, when it falls to sleep, while you are in sleep mode the state will be retained, but you will have to keep the state of your pins since when the 580 wakes up, the periph_init() will run and your pins are going to be reconfigured.

谢谢MT_dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

我尝试使用GPIO IRQs定期唤醒系统,并且在活动模式下运行良好,并且在扩展睡眠模式下不起作用。通过方式,脉冲触发中断

generating from the ADC chip with period of 4ms.Is it too short to wake up the system?Any suggestion?

谢谢!

布罗尔,

年轻

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

As we know,DA14580 can wake up by Wakeup Timer and Quadrature Decoder when in Extended or Deep sleep mode. I wonder how to wake up when only GPIO IRQs is used?Thank you!

布罗尔,

年轻

MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
Joined:2015-06-08 11:34
Hi young_dialog,

Hi young_dialog,

I dont think that 4ms is too short to wake up the system and trigger the interrupt, have you try to properly configure the debouncing parameter on the wakeup setting and at the GPIO IRQ ? Cause i tried with a 4ms pulse and i could wakeup the system and trigger the IRQ.

Regarding the waking up, you can't wake up the system via GPIO IRQs only the wakeup timer and the Quadrature can wake it up.

谢谢MT_dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

Yes,4ms is not too short to wake up the system and trigger the interrupt if I wake up the system and set the GPIO IRQs. That is what I want! Thank you!

布罗尔,

年轻

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

如何更改睡眠模式?我们的使用场景是:扩展睡眠模式在广告时,连接时的主动/空闲模式,断开后返回扩展睡眠模式

重新广告。我尝试使用app_restore_sleep_mode()'或'arch_disable_sleep()使用app_sle_sleep_mode()'使用api'app_force_active_mode(),以在连接时更改睡眠模式

disconnecting, the phenomenon is the mode is changed to Active mode successfully when connected but could not be changed to Extended sleep mode or restart advertising after

断开。任何建议?谢谢!

布罗尔,

年轻

MT_dialog
Offline
Last seen:2 months 1 week ago
Staff
Joined:2015-06-08 11:34
Hi young_dialog,

Hi young_dialog,

You can use the following functions when you want to switch between the sleep modes:

arch_disable_sleep() : the device will be active

arch_set_extended_sleep(): the device will swicth to extended sleep mode

You can invoke the above functions when connected and disconnected from the central device by invoking (arch_disable_sleep in the user_app_connection callback and arch_set_extended_sleep in the user_app_disconnect) its the same with the arch_set_sleep_mode() with the proper parameter. In order to start advertising again after disconnection you will have to invoke arch_set_extended_sleep() and user_app_adv_start() in the user_app_disconnect in order to set the device in exteded sleep and start advertising again.

Also please dont post a different question under the same thread, you can always create a new thread.

谢谢MT_dialog

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

I am sorry about that, but it's strange that I have no access to create a new thread! What's the matter? I have not enough permission?

布罗尔,

年轻

young_dialog
Offline
Last seen:3 years 9 months ago
Joined:2016-05-10 07:14
Hi MT_dialog,

Hi MT_dialog,

I find the way to create new thread now,thank you!

布罗尔,

年轻