如何使用定时器叫醒?

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support。我们会在接下来的几天修复bug /优化搜索和标记。
6个员额/ 0个新员额
最后发表
GGQ_in
离线
最后看到:3个月5天前
加入:2019-07-23 04:41
如何使用定时器叫醒?

你好,

我在EXT睡眠模式下使用DA14580模型,我想用定时器唤醒它,但失败了。它总是在睡觉,请问怎么配置它?

设备:
PM_Dialog
离线
最后看到:11小时59分钟前
工作人员
加入:2018-02-08 11:03
嗨GGQ_in,

嗨GGQ_in,

您应该使用app_easy_timer() API来唤醒设备。一旦设备进入睡眠模式,就应该配置计时器。当它到期时,您应该将您喜欢的功能放在回调函数中。这可以通过设置计时器来实现,如下所示:

cb_my_timeout app_easy_timer (100);

第一个参数指定在100 * 10ms = 1000ms = 1s之后超时的定时器。此时将调用回调cb_my_timerout() get。

谢谢,PM_Dialog

GGQ_in
离线
最后看到:3个月5天前
加入:2019-07-23 04:41

嗨PM_Dialog,

以下是部分代码:

Do{//调度所有挂起事件schedule_while_ble_on();} while (app_asynch_proc() != GOTO_SLEEP);//定时串行打印字符串wake_up_timer_used = app_easy_timer(1000, Led_sock);如果(((! BLE_APP_PRESENT) & & (check_gtl_state ())) | | (BLE_APP_PRESENT)) {GLOBAL_INT_STOP ();//获取允许的睡眠模式sleep_mode = rwip_power_down();Printf("睡眠模式= %x \r\n",睡眠模式);If ((sleep_mode == mode_ext_sleep) || (sleep_mode == mode_deep_sleep)){//关闭收音机和任何允许的arch_goto_sleep(sleep_mode);if ((GetWord16(SYS_STAT_REG) & DBG_IS_UP) == DBG_IS_UP) {wdg_freeze(); / /冻结//停止watchdog定时器}WFI();/ /恢复操作arch_resume_from_sleep (); } ...

我遇到了以下问题:

1)当我将580模型设置为ARCH_EXT_SLEEP_ON模式时,关闭外围设备和收音机,但串口(U1)除了可以打印计时器回调,还可以一直打印休眠模式变量。它还会发送蓝牙广播,所以我不知道它是不是睡着了?

1.1)后来我把串口改为U2,串口在休眠时不再打印sleepMode变量,为什么U1在休眠时不能停止打印,是配置错误吗?

2)当我设置580型号的ARCH_DEEP_SLEEP_ON模式,定时器回调函数和串行和蓝牙不再有输出和发送广播,深度睡眠时如何唤醒?

3)我有一个自己设计的板,使用DA14580,但是我想把32K有源晶体振荡器换成32K无源晶体振荡器。

这是可行的,我应该如何连接和配置它?

我试了一下,它似乎在一段时间后进入了睡眠模式,但没有蓝牙无线电传输或串行打印。

谢谢。

PM_Dialog
离线
最后看到:11小时59分钟前
工作人员
加入:2018-02-08 11:03
嗨GGQ_in,

嗨GGQ_in,

您所附的代码片段是SDK文件。强烈建议不要修改任何SDK文件。所有的更改都应该应用到应用层,应用层包含所有以“user_”开头的文件。

关于你的1/和2/问题,老实说,我无法理解你在代码中做了什么,所以请提供额外的信息。我建议你去看看教程4:在DA1458x上配置睡眠模式文档。

也有中文版本:教程4:在DA1458x上配置睡眠模式

3/你说的被动和主动XTAL23K是什么意思?

谢谢,PM_Dialog

GGQ_in
离线
最后看到:3个月5天前
加入:2019-07-23 04:41

你好,

谢谢你的回答。我使主打印睡眠模式在睡觉前。

我的意思是32k有源晶体振荡器和32k无源晶体,你知道吗?

谢谢。

PM_Dialog
离线
最后看到:11小时59分钟前
工作人员
加入:2018-02-08 11:03
你好,

你好,

你能告诉我零件号吗?

谢谢,PM_Dialog