亲爱的Dialog_support团队,
我在我的应用程序中使用Timer0和Timer2来播放蜂鸣器声音并计算按下按钮的时间。现在我想在我的应用程序中添加睡眠模式,在添加扩展睡眠模式后,计时器不能正常工作。我也读过不同的对话框论坛帖子,说Timer0和Timer2不能在睡眠模式下工作。所以我可以用app_easy_timer替换两个计时器吗?我在Timer0,2中设置了占空比来播放蜂鸣器的声音。那么如何使用app_easy_timer设置占空比?
感谢和问候,
前腿帕特尔
关键词:
设备:
嗨,前腿帕特尔
定时器0和2是硬件定时器,因此它们具有生成脉冲宽度调制信号的能力,基于此功能可以产生蜂鸣声。没有选择用App_easy_Timer(软件计时器)替换这两个定时器中的一个
布罗尔,
STS_Dialog。
亲爱的Dialog_support团队,
对不起,我已经给了你对timer0,2的错误解释。
我希望我的设备处于睡眠模式,当按下按钮或应用程序没有任何中断时。在设备中断后,Timer0,2应该从睡眠中醒来,完成工作,然后再次睡觉。我不想在睡眠期间运行Timer0,2。所以有可能吗?
你能给我推荐一些好的和相关的延长睡眠模式的例子吗?
先谢谢你。
与问候,
前腿帕特尔
嗨,前腿帕特尔
大部分的例子在延长睡眠模式下运行,如果你想一个示例,将按下一个按钮,例如睡眠模式,当按钮被按下或一个中断发生装置将可以检查ble_app_sleepmode醒来,原来的配置是用于深度睡眠的,但是您可以通过将app_default_sleep_mode从ARCH_DEEP_SLEEP_ON更改为ARCH_EXT_SLEEP_ON,并将内存配置更改为CFG_MEM_MAP_EXT_SLEEP来轻松更改。在做了这些之后你可以设置定时器来产生pwm并且在运行时禁用睡眠只要你想让设备产生pwm,只要你准备好进入睡眠,禁用计时器并将睡眠模式设置为extended(为了在运行时改变睡眠模式,你可以使用arch_disable_sleep()和arch_set_exteded_sleep()))。
由于MT_dialog
亲爱的Dialog_support团队,
感谢您的答复。我根据您的建议配置了我的设备。现在我想知道,在睡眠模式下可以广告可以广告吗?如果是,则在代码中,如果从按钮或app没有任何中断,则将睡眠模式函数(API)。
感谢和问候,
前腿帕特尔
嗨,前腿帕特尔
当睡眠模式启用时,意味着设备能够在广告和连接期间进行广告和睡眠,当设备没有实现睡眠时,意味着设备将保持清醒,即使没有BLE活动。简而言之,当580处于睡眠模式时它会自动醒来并返回睡眠状态。关于这个问题”,把睡眠模式函数(api)“我不明白,很明显你想使PWM和保持设备醒了两个事件之间在一段时间内,它将触发PWM事件和一个结束PWM和发送设备在睡眠模式,因此,当事件被触发时,你将禁用睡眠,并在PWM模式中启动计时器,当它结束时,你将禁用PWM,并将设备送回睡眠。
由于MT_dialog
亲爱的Dialog_Support团队,
谢谢你的快速回复。
1.您能否指导我,如果我的设备处于扩展睡眠模式和设备应始终广告。是否有可能?如果设备始终广告,则功耗如何?
我正在使用加速度计传感器。传感器通过I2C与DA14580通信。每当有移动时,加速度计会导致控制器中断。理想情况下,控制器应从睡眠模式中唤醒,但在扩展睡眠模式下,控制器未接收来自加速度计的任何类型的中断。其在完全活动模式下工作正常。
3.当我按下按钮时,设备从睡眠模式唤醒,然后立即再次进入睡眠模式。由于此,我的蜂鸣器音没有正常工作。蜂鸣器戒指非常快。如何增加唤醒时间或者我想完成我的任务然后在任务结束时,设备再次进入睡眠模式。
与问候,
前腿帕特尔
嗨,前腿帕特尔
1)是的,存在是睡眠模式,并且可以唤醒广告,设备的电源增量取决于设备的广告频率(意味着唤醒和发送广告包的频率)。所以它取决于广告间隔,并且功耗的值不是固定的,你唤醒了你的功率越多。
2)为了从睡眠中醒来,你将必须配置唤醒定时器,这意味着你将必须配置580的唤醒模块,以便从外部中断中醒来,而设备处于睡眠模式。您可以检查ble_app_sleepmode项目,在该项目中,设备通过按下按钮从外部中断中醒来。在你醒来后,你可以执行任何你想要的动作,宣传或读取加速计等。如果你已经正确配置了唤醒定时器,但设备仍然不能唤醒,那么你应该检查唤醒信号的极性,也许是你设置的去振等。
3)由于设备将通过外部中断唤醒它将检查是否有任何未决的BLE事件,如果没有任何情况,那么设备将重新睡眠,以防止设备返回睡眠状态,您可以刚刚调用ARCH_DISABLE_SLEEP()并保留设备唤醒,当它的时间返回睡眠时,您可以调用ARCH_SET_EXTEDDED_SLEEP()另一种方式是留下睡眠状态并防止设备往往通过在app_on_ble_powered()中应用一些自定义代码或在app_on_system_powered()回调中休眠,并在条件上返回Keep_powered(以防止设备进入睡眠)或Goto_Sleep(允许设备进入睡眠)。因此,只要您希望蜂鸣器响起,您可以保持设备唤醒,随时随地睡觉。
由于MT_dialog
亲爱的Dialog_support,
谢谢你的回复。
我明白这一点。我已经在应用程序代码中实现了这一点。我希望我的设备即使在睡眠状态下也能做广告。所以它成功地实施了。
2)我已经实现了外部中断相同的ble_app_sleepmode的例子。但是在我的自定义应用程序中,有3种不同的功能是使用单个按钮实现的。例如,如果按按钮3次,那么功能'A'将运行,如果按按钮长按3秒,那么功能'B'将运行,如果按按钮5次,那么功能'C'将运行。但是我可以为一个功能生成外部中断唤醒,尽管我为3个功能写了代码。你能帮我一下吗?你能给我解释一下极性和衰减是如何影响睡眠和唤醒功能的吗?
3)是的,我使用了这两个函数arch_disable_sleep()和arch_set_extended_sleep()来唤醒设备并使设备处于睡眠模式。
再次感谢您有帮助的回复。我面临着一个问题。每当移动应用试图连接到设备(当设备处于睡眠模式和它的广告),设备连接不顺畅,这意味着它需要很长时间连接,有时它会显示连接失败,断开等信息。我的意思是它在睡眠模式下工作得并不顺利,因为它在活动模式下工作得很顺利。这可能是什么原因呢?我还配置了,当应用程序连接到设备时,设备应该从睡眠中醒来,然后当设备断开应用程序时返回睡眠。
与问候,
前腿帕特尔
嗨,前腿帕特尔
关于第二个问题,对不起,我不能够理解这个问题,你可以实现一个functionallity,您可以跟踪一个按钮被按下的时间,但是从以前的文章我明白设备不能通过中断从sesnor醒来,所以我可以假设这可能与唤醒计时器要跟踪的极性有关或者与唤醒计时器实现的衰减特性有关。您可以在UM-B-051 DA1458x软件平台参考文档中找到更多关于这些设置的信息。
没有区别的睡眠模式,总是主动模式关于设备的连接过程,我的意思是,中央将会等待一个广告活动为了启动连接过程,设备,睡觉时或者当它不是,将广告在固定连接的间隔,延迟连接过程的原因是广告间隔太长,而这与睡眠模式无关。我建议在睡眠模式下运行一些对话示例,然后在没有睡眠模式的情况下再次尝试,并检查是否可以复制你的问题,以这些示例作为参考。
由于MT_dialog
亲爱的Dialog_support,
感谢您一直以来的支持。现在我可以使用传感器中断从睡眠中唤醒。在配置扩展睡眠模式后,我注意到我的自定义应用程序不像以前那样顺利工作。我面临的问题是,
1.智能手机的App与主板(开发包或定制板)连接不方便。它会显示“连接中”、“连接失败”、“断开”等状态。
2.有一个按钮用于我的自定义应用程序。并且我已经配置当我按下按钮时,设备应该从睡眠中醒来。但有时按下按钮后,设备不醒。
与问候,
前腿帕特尔
嗨,前腿帕特尔
因为你之前的问题已经被回答了,请不要在不相关的论坛主题中发布额外的问题,你总是可以为你的问题创建一个新的主题。
由于MT_dialog