嗨对话框,
我发现有时lld_evt_time_get()返回0,怎么可能发生这种情况?怎么避免它?
谢谢
本杰明
12月22日
嗨本杰明,
您在哪里调用lld_evt_time_get()函数?
应用程序可以安全地调用此功能:BLE很活跃2.应用睡眠补偿后。(这是必要的,因为lld_evt_time_get()读取在580睡眠时未运行的计数器)。请注意,当BLE核心唤醒时,SW通过SW完成睡眠补偿。
布尔
宜宾
我使用了DSP示例,并使用了定时器,间隔为160(0.625ms作为单元(Timer0_Set(20000,0,0))))
代码如下:
void timer_callback(void)
{
ARCH_PRINTF(“time =%d \ r \ n”,lld_evt_time_get());
}
把它放在附件中。
如在附件中,如果两个585(不是580如您的邮件中)连接,则输出有时是0,有时不是0,如果不是0,那么如果不是0,则间隔不完全160,如果两个585不是完全160Connceted,输出为160,我的代码在主机端运行。
希望您可以帮助分析为什么会发生这种情况以及如何避免它。
2020年1月6日。
简而言之,我的问题是在DSP示例中,当两个585得到连接时,为什么有时lld_evt_time_get()返回0?
该函数在计时器中呼叫。
1月7日
嗨Benjamindu.
LLD_EVT_TIME_GET()根据625US基础时间计数器测量时间并返回BLE定时器的值。该计数器没有稳定的时钟输入,但根据设备是否正在睡觉而变化,或者它是清醒的,并且根据XTAL16和XTAL32从上电传出时的时间。因此,测量的时间来自xtal16,并且当睡眠期间通过xtal32测量睡眠期间已经过去的时间,并在设备唤醒时得到补偿并应用于计时器。您的设备始终处于活动状态还是您正在使用任何睡眠模式?
谢谢,PM_DIALOG.
非常感谢您的快速回复。
1)我只使用计时器来调用lld_evt_time_get(),我不改变睡眠模式,如果两个585得到连接,lld_evt_time_get()会自动返回0,无0,Canyou在最后看看我的邮件?你能否引用附加的输出?
2)是否有任何功能我可以呼叫返回当前睡眠模式?然后我可以在lld_evt_time_get()返回0和无0时知道睡眠模式。
1月8日
要测试睡眠模式,是否有任何功能我可以呼叫返回当前睡眠模式?然后我可以在lld_evt_time_get()返回0和无0时知道睡眠模式。
1月10日
嗨Benjamindu,
请将uder_config.h中的app_default_sleep_mode更改为Arch_sleep_off。请使用t arch_get_sleep_mode()API,以命令当前的休眠模式。
嗨本杰明,
您在哪里调用lld_evt_time_get()函数?
应用程序可以安全地调用此功能:
BLE很活跃
2.应用睡眠补偿后。(这是必要的,因为lld_evt_time_get()读取在580睡眠时未运行的计数器)。请注意,当BLE核心唤醒时,SW通过SW完成睡眠补偿。
布尔
宜宾
嗨对话框,
我使用了DSP示例,并使用了定时器,间隔为160(0.625ms作为单元(Timer0_Set(20000,0,0))))
代码如下:
void timer_callback(void)
{
ARCH_PRINTF(“time =%d \ r \ n”,lld_evt_time_get());
}
把它放在附件中。
如在附件中,如果两个585(不是580如您的邮件中)连接,则输出有时是0,有时不是0,如果不是0,那么如果不是0,则间隔不完全160,如果两个585不是完全160Connceted,输出为160,我的代码在主机端运行。
希望您可以帮助分析为什么会发生这种情况以及如何避免它。
谢谢
本杰明
2020年1月6日。
嗨对话框,
简而言之,我的问题是在DSP示例中,当两个585得到连接时,为什么有时lld_evt_time_get()返回0?
该函数在计时器中呼叫。
谢谢
本杰明
1月7日
嗨Benjamindu.
LLD_EVT_TIME_GET()根据625US基础时间计数器测量时间并返回BLE定时器的值。该计数器没有稳定的时钟输入,但根据设备是否正在睡觉而变化,或者它是清醒的,并且根据XTAL16和XTAL32从上电传出时的时间。因此,测量的时间来自xtal16,并且当睡眠期间通过xtal32测量睡眠期间已经过去的时间,并在设备唤醒时得到补偿并应用于计时器。您的设备始终处于活动状态还是您正在使用任何睡眠模式?
谢谢,PM_DIALOG.
嗨对话框,
非常感谢您的快速回复。
1)我只使用计时器来调用lld_evt_time_get(),我不改变睡眠模式,如果两个585得到连接,lld_evt_time_get()会自动返回0,无0,Canyou在最后看看我的邮件?你能否引用附加的输出?
2)是否有任何功能我可以呼叫返回当前睡眠模式?然后我可以在lld_evt_time_get()返回0和无0时知道睡眠模式。
谢谢
本杰明
1月8日
嗨对话框,
要测试睡眠模式,是否有任何功能我可以呼叫返回当前睡眠模式?然后我可以在lld_evt_time_get()返回0和无0时知道睡眠模式。
谢谢
本杰明
1月10日
嗨Benjamindu,
请将uder_config.h中的app_default_sleep_mode更改为Arch_sleep_off。请使用t arch_get_sleep_mode()API,以命令当前的休眠模式。
谢谢,PM_DIALOG.