你好所有的,
如何通过BLE定时器同步唤醒DA14580设备以服务BLE事件。
谢谢
您好ASMATHA,您是否阅读了关于如何同步(BLE定时器)或异步(中断)配置睡眠模式的应用程序注意?
http://support.dialog-semicondiondionder.com/um-b-006-user-manual-sleep-mode-code-configuration.
这是一个相当全面的应用程序说明,是最好的地方开始。
BR JE_Dialog
你好je_dialog,
我想知道如何识别唤醒事件,比如两个短脉冲异步唤醒系统。谢谢你!
BR年轻
嗨DATeam,
我无法下载这个文件,你能建议一下如何下载吗?
谢谢,毗瑟奴
你好je_dialog,非常感谢您的回复。我已经看过了这份文件。但即使在da14580_config.h文件中禁用扩展和深度睡眠模式之后,也如下:# undef CFG_EXT_SLEEP#undef cfg_deep_sleep.
我们无法看到设备一直是醒着的,也无法看到它一直在做广告。
谢谢,asmaith.
嗨young_dialog,
我没有得到你的问题,可以澄清吗?您可以使用唤醒控制器并使用多个引脚设置它,如果这是您的意思。
由于MT_dialog
嗨MT_dialog,
谢谢你的注意,我的意思是如何识别唤醒系统的引脚,例如一个引脚发送数据,另一个引脚执行ADC.i使用该方法来实现它的方法
wucpt_quadec.c doucment。但是我发现函数'wkupct_register_callback()'只能注册一个回调函数。因此,当任何引脚活动,他们将来到相同的回调,没有
指示哪个引脚处于活动状态的寄存器。我的方法对吗?有什么建议吗?
布罗尔,年轻
是的没错,你可以声明许多唤醒别针,但你只有一个回调,如果你想确定销你中断的你可以试着读销后中断的状态和检查你的别针是高或低。
当中断从诸如5US高脉冲的短脉冲导致时,读取引脚状态时难以识别。
我也想知道系统进入延长睡眠模式时如何保留PIN状态,谢谢!
没有其他方法可以做到这一点,你可以读取你的引脚,或者你可以尝试设置连接引脚的GPIO irq,如果连接的源匹配可用的irq。你不需要做任何事简洁为了580年保留针的状态,当它落在睡眠,当你在睡眠模式将被保留,但你要保持你的别针自从580年当醒来,在periph_init()将会和你的针要重新配置。
我尝试使用GPIO IRQs定期唤醒系统,并且在活动模式下运行良好,并且在扩展睡眠模式下不起作用。通过方式,脉冲触发中断
由ADC芯片产生,周期为4ms。它是否太短而无法唤醒系统?任何建议吗?
谢谢你!
布罗尔,
年轻
我们知道,DA14580可以通过唤醒定时器和正交解码器在延长睡眠和深度睡眠模式下唤醒。我想知道如何唤醒时,只有GPIO irq使用?谢谢你!
我不认为4ms对于唤醒系统和触发中断来说太短了,你试过在唤醒设置和GPIO IRQ上正确配置调试参数吗?因为我尝试了4ms脉冲,我可以唤醒系统和触发IRQ。
对于唤醒,不能通过GPIO IRQs来唤醒系统,只有唤醒定时器和Quadrature可以唤醒系统。
是的,如果我唤醒系统并设置GPIO IRQs,4ms对于唤醒系统和触发中断来说不是太短。这就是我想要的!谢谢你!
如何更改睡眠模式?我们的使用场景是:扩展睡眠模式在广告时,连接时的主动/空闲模式,断开后返回扩展睡眠模式
重新广告。我尝试使用app_restore_sleep_mode()'或'arch_disable_sleep()使用app_sle_sleep_mode()'使用api'app_force_active_mode(),以在连接时更改睡眠模式
断开,现象是连接时模式成功切换为活动模式,但无法切换为延长睡眠模式或重启后发布
断开。任何建议?谢谢!
当您需要切换睡眠模式时,可以使用以下功能:
Arch_disable_sleep():设备将处于活动状态
Arch_set_extended_sleep():设备将切换到扩展睡眠模式
当连接和断开与中心设备的连接时,您可以调用上面的函数,通过调用(在user_app_connection回调中的arch_disable_sleep和在user_app_disconnect中的arch_set_extended_sleep),这与带有适当参数的arch_set_sleep_mode()相同。为了在断开连接后再次开始发布,您必须在user_app_disconnect中调用arch_set_extended_sleep()和user_app_adv_start(),以便将设备设置为长时间睡眠状态并再次开始发布。
另外,请不要在同一个帖子下发布不同的问题,你可以创建一个新的帖子。
我很抱歉,但很奇怪,我没有权限创建一个新的线程!有什么事吗?我没有足够的许可?
我现在找到了创建新线程的方法,谢谢!
您好ASMATHA,您是否阅读了关于如何同步(BLE定时器)或异步(中断)配置睡眠模式的应用程序注意?
http://support.dialog-semicondiondionder.com/um-b-006-user-manual-sleep-mode-code-configuration.
这是一个相当全面的应用程序说明,是最好的地方开始。
BR JE_Dialog
你好je_dialog,
我想知道如何识别唤醒事件,比如两个短脉冲异步唤醒系统。谢谢你!
BR年轻
嗨DATeam,
我无法下载这个文件,你能建议一下如何下载吗?
谢谢,
毗瑟奴
你好je_dialog,
非常感谢您的回复。
我已经看过了这份文件。
但即使在da14580_config.h文件中禁用扩展和深度睡眠模式之后,也如下:
# undef CFG_EXT_SLEEP
#undef cfg_deep_sleep.
我们无法看到设备一直是醒着的,也无法看到它一直在做广告。
谢谢,
asmaith.
你好je_dialog,
我想知道如何识别唤醒事件,比如两个短脉冲异步唤醒系统。谢谢你!
BR年轻
嗨young_dialog,
我没有得到你的问题,可以澄清吗?您可以使用唤醒控制器并使用多个引脚设置它,如果这是您的意思。
由于MT_dialog
嗨MT_dialog,
谢谢你的注意,我的意思是如何识别唤醒系统的引脚,例如一个引脚发送数据,另一个引脚执行ADC.i使用该方法来实现它的方法
wucpt_quadec.c doucment。但是我发现函数'wkupct_register_callback()'只能注册一个回调函数。因此,当任何引脚活动,他们将来到相同的回调,没有
指示哪个引脚处于活动状态的寄存器。我的方法对吗?有什么建议吗?
布罗尔,
年轻
嗨young_dialog,
是的没错,你可以声明许多唤醒别针,但你只有一个回调,如果你想确定销你中断的你可以试着读销后中断的状态和检查你的别针是高或低。
由于MT_dialog
嗨MT_dialog,
当中断从诸如5US高脉冲的短脉冲导致时,读取引脚状态时难以识别。
我也想知道系统进入延长睡眠模式时如何保留PIN状态,谢谢!
布罗尔,
年轻
嗨young_dialog,
没有其他方法可以做到这一点,你可以读取你的引脚,或者你可以尝试设置连接引脚的GPIO irq,如果连接的源匹配可用的irq。你不需要做任何事简洁为了580年保留针的状态,当它落在睡眠,当你在睡眠模式将被保留,但你要保持你的别针自从580年当醒来,在periph_init()将会和你的针要重新配置。
由于MT_dialog
嗨MT_dialog,
我尝试使用GPIO IRQs定期唤醒系统,并且在活动模式下运行良好,并且在扩展睡眠模式下不起作用。通过方式,脉冲触发中断
由ADC芯片产生,周期为4ms。它是否太短而无法唤醒系统?任何建议吗?
谢谢你!
布罗尔,
年轻
嗨MT_dialog,
我们知道,DA14580可以通过唤醒定时器和正交解码器在延长睡眠和深度睡眠模式下唤醒。我想知道如何唤醒时,只有GPIO irq使用?谢谢你!
布罗尔,
年轻
嗨young_dialog,
我不认为4ms对于唤醒系统和触发中断来说太短了,你试过在唤醒设置和GPIO IRQ上正确配置调试参数吗?因为我尝试了4ms脉冲,我可以唤醒系统和触发IRQ。
对于唤醒,不能通过GPIO IRQs来唤醒系统,只有唤醒定时器和Quadrature可以唤醒系统。
由于MT_dialog
嗨MT_dialog,
是的,如果我唤醒系统并设置GPIO IRQs,4ms对于唤醒系统和触发中断来说不是太短。这就是我想要的!谢谢你!
布罗尔,
年轻
嗨MT_dialog,
如何更改睡眠模式?我们的使用场景是:扩展睡眠模式在广告时,连接时的主动/空闲模式,断开后返回扩展睡眠模式
重新广告。我尝试使用app_restore_sleep_mode()'或'arch_disable_sleep()使用app_sle_sleep_mode()'使用api'app_force_active_mode(),以在连接时更改睡眠模式
断开,现象是连接时模式成功切换为活动模式,但无法切换为延长睡眠模式或重启后发布
断开。任何建议?谢谢!
布罗尔,
年轻
嗨young_dialog,
当您需要切换睡眠模式时,可以使用以下功能:
Arch_disable_sleep():设备将处于活动状态
Arch_set_extended_sleep():设备将切换到扩展睡眠模式
当连接和断开与中心设备的连接时,您可以调用上面的函数,通过调用(在user_app_connection回调中的arch_disable_sleep和在user_app_disconnect中的arch_set_extended_sleep),这与带有适当参数的arch_set_sleep_mode()相同。为了在断开连接后再次开始发布,您必须在user_app_disconnect中调用arch_set_extended_sleep()和user_app_adv_start(),以便将设备设置为长时间睡眠状态并再次开始发布。
另外,请不要在同一个帖子下发布不同的问题,你可以创建一个新的帖子。
由于MT_dialog
嗨MT_dialog,
我很抱歉,但很奇怪,我没有权限创建一个新的线程!有什么事吗?我没有足够的许可?
布罗尔,
年轻
嗨MT_dialog,
我现在找到了创建新线程的方法,谢谢!
布罗尔,
年轻