我们可以通过app_easy_timer替换timer0和timer2吗?

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
12个帖子/ 0新
最后一篇
Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
我们可以通过app_easy_timer替换timer0和timer2吗?

亲爱的Dialog_Support团队,

我在我的应用中使用Timer0和Timer2来播放蜂鸣声,并计算按钮按下的时间。现在我想在我的应用程序中添加睡眠模式,并在添加扩展睡眠模式后,定时器无法正常工作。我还阅读了不同的对话框的论坛帖子,即Timer0和Timer2将无法使用睡眠模式。那么我可以通过app_easy_timer替换两个计时器吗?我在Timer0,2中配置了职责周期,以播放蜂鸣声。那么如何使用app_easy_timer设置职责循环?

感谢致敬,
Ruchi Patel.

设备:
sts_dialog(未经验证)
嗨Ruchi Patel,

嗨Ruchi Patel,

The timers 0 and 2 are hardware timers so they have he ability of generating Pulse Width Modulated signals, based on this capability you can produce buzzer sounds. There isn't the option to replace one of these two timers with app_easy_timer(software timer)

BR,
sts_dialog。

Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
亲爱的Dialog_Support团队,

亲爱的Dialog_Support团队,

对不起,我给了你错误的解释有关Timer0,2.

I want my device is in sleep mode, when there is no any interrupt from push button or App. And after device gets interrupted, Timer0,2 should awake from sleep, do its work and then again go to sleep. I don't want to run the Timer0,2 during sleep. So is it possible?

你能建议我的延长睡眠模式的任何好的和相关的例子吗?

先感谢您。

带着敬意,
Ruchi Patel.

mt_dialog.
离线
最后一次露面:1个月3周前
职员
加入:2015-06-08 11:34
嗨Ruchi Patel,

嗨Ruchi Patel,

大多数示例在扩展睡眠模式下运行,如果您想要使用按钮的按钮运行的示例,例如在睡眠模式下,并且一旦按下按钮或发生中断,设备会唤醒您可以检查BLE_APP_SLEEPMODE,原始配置用于深度睡眠,但您可以通过将APP_DEFAULT_SLEEP_MODE从ACH_DEEP_SLEEP_ON更改为ARCH_EXT_SLEEP_ON来轻松更改,并通过将内存配置更改为CFG_MEM_MAP_EXT_SLEEP。完成后,您可以设置定时器以便生成PWM并在运行时禁用睡眠,只要您希望设备生成PWM,就可以在准备好进入睡眠时,禁用计时器并设置将睡眠模式返回到EXTED(为了在运行时更改睡眠模式,您可以使用ARCH_DISABLE_SLEEP()和ARCH_SET_EXTEDED_SLEEP())。

谢谢mt_dialog.

Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
亲爱的Dialog_Support团队,

亲爱的Dialog_Support团队,

Thank you for the reply. I have configured my device as per your suggestion. Now i want to know that, can advertising is possible during sleep mode? If yes then in code, where to put sleep mode function (api) if there is no any interrupt from push button or app.

感谢致敬,
Ruchi Patel.

mt_dialog.
离线
最后一次露面:1个月3周前
职员
加入:2015-06-08 11:34
嗨Ruchi Patel,

嗨Ruchi Patel,

当启用睡眠模式时,它意味着当设备无法实现睡眠时,设备能够在广告或连接时段之间进行广告和睡眠,这意味着即使没有BLE活动,该设备也会保持醒索。所以简而言之,当580处于睡眠模式时,它将唤醒广告并自动睡觉。关于问题“将睡眠模式函数(API)”的问题“我不太明白,显然您想要启用PWM并保持设备在两个事件之间的某个时段内唤醒,其中一个会触发PWM事件并且一个将结束PWM并将设备发送回睡眠模式,因此当触发事件时,您将禁用睡眠并以PWM模式启动计时器,当其上方将禁用PWM并将设备发送回睡眠时。

谢谢mt_dialog.

Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
亲爱的Dialog_Support团队,

亲爱的Dialog_Support团队,

感谢您的快速答复。

1. Can you please guide me that, if my device is in extended sleep mode and device should always advertising. Is it possible? What about power consumption if device is always advertising?

2. I am working with accelerometer sensor. Sensor communicates with DA14580 via I2C. Whenever there is movement, accelerometer gives interrupt to the controller. Ideally controller should awake from sleep mode but controller not receiving any kind of interrupt from accelerometer during extended sleep mode. And its working fine in fully active mode.

3. As i press push button, device wakes up from sleep mode and then immediately it goes to sleep mode again. Due to this, my buzzer tone is not working properly. Buzzer rings very fast. How to increase wake up time or i want to finish my task then at the end of task, device goes to sleep mode again.

带着敬意,
Ruchi Patel.

mt_dialog.
离线
最后一次露面:1个月3周前
职员
加入:2015-06-08 11:34
嗨Ruchi Patel,

嗨Ruchi Patel,

1) Yes, being is sleep mode and wake up for advertising is possible, the power cosnumption of the device depends on how often the device is advertising (meaning how often is going to wake up and send an advertising packet). So it depends on the advertising interval and the value for the power consumption is not fixed, the more you wake up the more power you consume.

2)为了从睡眠中唤醒,您必须配置唤醒定时器,这意味着您必须配置580的唤醒模块,以便从外部中断唤醒,而设备处于睡眠状态模式。您可以检查BLE_APP_SLEEPMODE项目,其中设备从通过按钮按下的外部中断从外部中断唤醒。在你醒来之后,你可以履行你想要的行动,宣传或阅读加速度计等。如果您正确配置了唤醒定时器,设备仍然没有醒来,那么您应该检查唤醒的手机发信号,也许是你有套装等的脱髓。

3) Since the device will wake up via an external interrupt it will check if there are any pending BLE events and if there aren't any, then the device will go back to sleep, in order to prevent the device from going back to sleep, you can just invoke the arch_disable_sleep() and keep the device awake, when its time to go back to sleep you can invoke the arch_set_extended_sleep() also another way of doing that is to leave the sleeping state as is and prevent the device from going to sleep via applying some custom code in the app_on_ble_powered() or in the app_on_system_powered() callbacks and return conditionally either KEEP_POWERED (in order to prevent the device from going to sleep) or GOTO_SLEEP (allowing the device to go to sleep). So you can keep the device awake as long as you would like the buzzer to ring and go to sleep whenever you are ready.

谢谢mt_dialog.

Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
亲爱的Dialog_Support,

亲爱的Dialog_Support,

感谢你的回复。

1)我明白这一点。我在我的应用程序代码中实现了这一点。即使在睡眠模式下,我也希望我的设备要做广告。所以它成功实施了。

2)我已经实现了与BLE_APP_SLEEPMODE示例相同的外部中断。但在我的自定义应用程序中,使用单个按钮实现了3个不同的功能。例如,如果按下按钮3次,那么功能'a'将运行,如果按钮长按3秒钟,那么功能'b'将运行,如果按下按钮5次,那么功能'c'将跑步。但是,我只能生成外部中断唤醒,只有我为3个功能编写了代码而仅为一个功能唤醒。你能帮我帮忙吗?你能更重要地解释我,了解极性和脱嘴如何影响睡眠和唤醒功能。

3)是的我已经使用了这两个函数ARCH_DISABLE_SLEEP()和ACH_SET_EXTEDDE_SLEEP()唤醒设备并放置设备处于睡眠模式。

再次感谢您的乐于助人的回复。我面临一个问题。每当移动应用程序尝试连接到设备时(当设备处于睡眠模式时,设备处于睡眠模式及其广告时),设备无法平滑连接,这意味着它需要长时间连接,有时它会显示连接失败,断开连接。我的意思是它在睡眠模式下不顺利工作,因为它在活动模式下顺利工作。这可能是什么原因?我还配置了,每当应用程序连接到设备时,设备应从睡眠中唤醒,然后在设备断开连接时返回睡眠状态。

带着敬意,
Ruchi Patel.

mt_dialog.
离线
最后一次露面:1个月3周前
职员
加入:2015-06-08 11:34
嗨Ruchi Patel,

嗨Ruchi Patel,

关于第二个问题,对不起,我无法理解这个问题,是的,你可以实现一个函数,你可以在哪里跟踪按下按钮的时间,但从上一个帖子我明白设备无法唤醒。设备无法唤醒通过来自SESNor的中断,所以我可以假设的是,也许这与唤醒定时器必须跟踪或由于唤醒定时器实现的替代功能的特征有关。您将能够在UM-B-051 DA1458X软件平台refence.pdf中找到有关这些设置的更多信息,请参见第10.7段唤醒定时器。

睡眠模式和始终是关于设备的连接过程的活动模式之间没有区别,我的意思是中央将等待广告事件以启动连接过程,以及睡眠时的设备或设备没有,将以固定的连接间隔宣传,可以延迟连接过程是广告间隔很大的事实,这与睡眠模式无关。我建议在睡眠模式下运行某些对话框,然后在没有睡眠模式的情况下再次尝试,并检查您是否可以将这些示例复制为参考。

谢谢mt_dialog.

Ruchi Patel.
离线
最后一次露面:2年5个月前
加入:2017-03-29 10:50
亲爱的Dialog_Support,

亲爱的Dialog_Support,

谢谢你的不断支持。现在我能够使用传感器中断唤醒睡眠状态。配置扩展睡眠模式后,我注意到我的自定义应用程序在之前的情况下不顺利工作。我面临的问题是,
1.智能手机的应用程序无法轻松连接电路板(开发套件或定制板)。它显示了“连接”,“连接失败”,“断开连接”的状态。
2.使用自定义应用程序有一个按钮。而且我已配置为我按下按钮,设备应该从睡眠中唤醒。但是在按下按钮后有时,设备不会醒来。

带着敬意,
Ruchi Patel.

mt_dialog.
离线
最后一次露面:1个月3周前
职员
加入:2015-06-08 11:34
嗨Ruchi Patel,

嗨Ruchi Patel,

由于您之前的问题已得到解答,请不要在无关的论坛主题中发布其他问题,您可以随时为您的问题创建一个新主题。

  1. 难以连接的事实可能与许多因素有关,以及您的描述,我无法确定可能是问题。关于外围侧的连接过程大多数与广告相关,如果设备是广告,并且中央能够看到设备需要两个广告事件,以便连接过程启动。什么可以减慢连接过程是广告间隔,设备越频率越频越多,外围设备将与中央连接的越多。同样可以与电话或手机应用程序本身相关,并且在任何情况下都没有使您实现外部唤醒或通过计时器唤醒。
  2. 关于您的第二个问题,您必须调试这一点以弄清楚为什么会发生这种情况,检查中断是否每次按下按钮时会发生中断,可能对您的代码有一个条件,以防止启动通告命令发送到堆栈,如果未发生中断,请检查唤醒定时器是否始终正确配置(相同的极性和衰弱配置),如果发生在您的自定义板上可能与HW相关。

谢谢mt_dialog.